10#include <unordered_map>
30 for (
size_t i = 0;
i < N; ++
i) {
static constexpr size_t num_columns()
const FF & get(Column col, uint32_t row) const
void reserve_column(Column col, size_t size)
uint32_t get_num_rows() const
const FF & get_column_or_shift(ColumnAndShifts col, uint32_t row) const
std::array< FF, N > get_multiple(const std::array< ColumnAndShifts, N > &cols, uint32_t row) const
std::unique_ptr< std::array< SparseColumn, NUM_COLUMNS_WITHOUT_SHIFTS > > trace
uint32_t get_num_rows_without_clk() const
void visit_column(Column col, const std::function< void(uint32_t, const FF &)> &visitor) const
uint32_t get_column_rows(Column col) const
void set(Column col, uint32_t row, const FF &value)
void clear_column(Column col)
bool is_shift(ColumnAndShifts c)
std::optional< Column > unshift_column(ColumnAndShifts c)
constexpr auto NUM_COLUMNS_WITHOUT_SHIFTS
::ankerl::unordered_dense::map< Key, T > unordered_flat_map
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
unordered_flat_map< uint32_t, FF > rows