42 bool has_valid_witness_assignments)
47 for (
auto i : constraint.
init) {
52 switch (constraint.
type) {
75 bool has_valid_witness_assignments)
80 for (
auto i : constraint.
init) {
85 switch (constraint.
type) {
104template <
typename Builder>
107 bool has_valid_witness_assignments,
114 for (
auto& op : constraint.
trace) {
120 ASSERT(op.index.q_l != 0);
124 if (!has_valid_witness_assignments) {
127 value.assert_equal(table[index]);
131template <
typename Builder>
134 bool has_valid_witness_assignments,
141 for (
auto& op : constraint.
trace) {
146 if (!has_valid_witness_assignments) {
150 if (op.access_type == 0) {
159template <
typename Builder>
162 bool has_valid_witness_assignments,
171 auto process_calldata = [&](
auto& calldata_array) {
172 calldata_array.set_values(
init);
174 for (
const auto& op : constraint.
trace) {
180 if (!has_valid_witness_assignments) {
183 value.assert_equal(calldata_array[index]);
197template <
typename Builder>
#define BB_ASSERT_EQ(actual, expected,...)
#define ASSERT(expression,...)
void set_values(const std::vector< field_pt > &entries_in)
Set the entries of the bus vector from possibly unnormalized or constant inputs.
bus_vector secondary_calldata
static field_t from_witness_index(Builder *ctx, uint32_t witness_index)
bb::fr multiplicative_constant
field_pt read(const field_pt &index) const
Read a field element from the RAM table at an index value.
void write(const field_pt &index, const field_pt &value)
Write a field element from the RAM table at an index value.
Entry point for Barretenberg command-line interface.
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
void throw_or_abort(std::string const &err)