19 result.reserve(first.size() + (rest.size() + ...));
29 [&](uint32_t row,
const FF&) {
trace.
set(LookupSettings::INVERSES, row, 0xdeadbeef); });
31 [&](uint32_t row,
const FF&) {
trace.
set(LookupSettings::INVERSES, row, 0xdeadbeef); });
37template <
typename T,
size_t SIZE>
struct std::hash<
std::array<T, SIZE>> {
virtual ~InteractionBuilderInterface()=default
virtual void process(TraceContainer &trace)=0
void visit_column(Column col, const std::function< void(uint32_t, const FF &)> &visitor) const
void set(Column col, uint32_t row, const FF &value)
void SetDummyInverses(TraceContainer &trace)
std::vector< T > concatenate_jobs(std::vector< T > &&first, auto &&... rest)
size_t hash_as_tuple(const Ts &... ts)
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
std::size_t operator()(const std::array< T, SIZE > &arr) const noexcept