Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
test_trace_container.cpp
Go to the documentation of this file.
2
5
6namespace bb::avm2::tracegen {
7
9{
10 for (size_t i = 0; i < num_columns(); ++i) {
11 const auto column = static_cast<Column>(i);
12 other.visit_column(column, [this, column](uint32_t row, const auto& value) { set(column, row, value); });
13 }
14}
15
16TestTraceContainer::TestTraceContainer(const std::vector<std::vector<std::pair<Column, FF>>>& values)
17{
18 for (uint32_t row = 0; row < values.size(); ++row) {
19 set(row, values[row]);
20 }
21}
22
24{
26 for (uint32_t row = 0; row < rows.size(); ++row) {
27 const auto& full_row = rows[row];
28 for (size_t i = 0; i < container.num_columns(); ++i) {
29 const auto column = static_cast<Column>(i);
30 container.set(column, row, full_row.get(static_cast<ColumnAndShifts>(column)));
31 }
32 }
33 return container;
34}
35
37{
38 return { row, *this };
39}
40
51
52} // namespace bb::avm2::tracegen
std::vector< AvmFullRowConstRef > as_rows() const
AvmFullRowProxy get_row(uint32_t row) const
static TestTraceContainer from_rows(const std::vector< AvmFullRow > &rows)
static constexpr size_t num_columns()
const FF & get(Column col, uint32_t row) const
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)
AvmFullRowConstRef get_full_row_ref(const TraceContainer &trace, uint32_t row)
ColumnAndShifts
Definition columns.hpp:35
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
Definition tuple.hpp:13