17 if (o.type != msgpack::type::MAP) {
22 for (uint32_t i = 0; i < o.via.map.size; ++i) {
23 if (o.via.map.ptr[i].key.type != msgpack::type::STR) {
27 kvmap.emplace(std::string(o.via.map.ptr[i].key.via.str.ptr, o.via.map.ptr[i].key.via.str.size),
28 &o.via.map.ptr[i].val);
34 std::string
const& struct_name,
35 std::string
const& field_name,
39 auto it = kvmap.find(field_name);
40 if (it != kvmap.end()) {
42 it->second->convert(field);
43 }
catch (
const msgpack::type_error&) {
45 throw_or_abort(
"error converting into field " + struct_name +
"::" + field_name);
47 }
else if (!is_optional) {
48 throw_or_abort(
"missing field: " + struct_name +
"::" + field_name);
140 switch (
value.index()) {
171 tag =
"LessThanEquals";
181 [&packer, tag](
const auto& arg) {
183 data[tag] = msgpack::object(arg);
193 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
197 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
202 if (o.type == msgpack::type::object_type::MAP) {
203 o.via.map.ptr[0].key.convert(tag);
207 }
catch (
const msgpack::type_error&) {
209 throw_or_abort(
"error converting tag to string for enum 'BinaryFieldOp'");
214 }
else if (tag ==
"Sub") {
217 }
else if (tag ==
"Mul") {
220 }
else if (tag ==
"Div") {
223 }
else if (tag ==
"IntegerDiv") {
226 }
else if (tag ==
"Equals") {
229 }
else if (tag ==
"LessThan") {
232 }
else if (tag ==
"LessThanEquals") {
352 std::variant<Add, Sub, Mul, Div, Equals, LessThan, LessThanEquals, And, Or, Xor, Shl, Shr> value;
362 switch (
value.index()) {
389 tag =
"LessThanEquals";
419 [&packer, tag](
const auto& arg) {
421 data[tag] = msgpack::object(arg);
431 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
435 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
440 if (o.type == msgpack::type::object_type::MAP) {
441 o.via.map.ptr[0].key.convert(tag);
445 }
catch (
const msgpack::type_error&) {
447 throw_or_abort(
"error converting tag to string for enum 'BinaryIntOp'");
452 }
else if (tag ==
"Sub") {
455 }
else if (tag ==
"Mul") {
458 }
else if (tag ==
"Div") {
461 }
else if (tag ==
"Equals") {
464 }
else if (tag ==
"LessThan") {
467 }
else if (tag ==
"LessThanEquals") {
470 }
else if (tag ==
"And") {
473 }
else if (tag ==
"Or") {
476 }
else if (tag ==
"Xor") {
479 }
else if (tag ==
"Shl") {
482 }
else if (tag ==
"Shr") {
558 switch (
value.index()) {
591 [&packer, tag](
const auto& arg) {
593 data[tag] = msgpack::object(arg);
603 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
607 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
612 if (o.type == msgpack::type::object_type::MAP) {
613 o.via.map.ptr[0].key.convert(tag);
617 }
catch (
const msgpack::type_error&) {
619 throw_or_abort(
"error converting tag to string for enum 'IntegerBitSize'");
624 }
else if (tag ==
"U8") {
627 }
else if (tag ==
"U16") {
630 }
else if (tag ==
"U32") {
633 }
else if (tag ==
"U64") {
636 }
else if (tag ==
"U128") {
670 }
catch (
const msgpack::type_error&) {
687 switch (
value.index()) {
704 [&packer, tag](
const auto& arg) {
706 data[tag] = msgpack::object(arg);
716 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
720 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
725 if (o.type == msgpack::type::object_type::MAP) {
726 o.via.map.ptr[0].key.convert(tag);
730 }
catch (
const msgpack::type_error&) {
732 throw_or_abort(
"error converting tag to string for enum 'BitSize'");
734 if (tag ==
"Field") {
737 }
else if (tag ==
"Integer") {
740 o.via.map.ptr[0].val.convert(v);
741 }
catch (
const msgpack::type_error&) {
743 throw_or_abort(
"error converting into enum variant 'BitSize::Integer'");
769 }
catch (
const msgpack::type_error&) {
789 }
catch (
const msgpack::type_error&) {
806 switch (
value.index()) {
823 [&packer, tag](
const auto& arg) {
825 data[tag] = msgpack::object(arg);
835 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
839 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
844 if (o.type == msgpack::type::object_type::MAP) {
845 o.via.map.ptr[0].key.convert(tag);
849 }
catch (
const msgpack::type_error&) {
851 throw_or_abort(
"error converting tag to string for enum 'MemoryAddress'");
853 if (tag ==
"Direct") {
856 o.via.map.ptr[0].val.convert(v);
857 }
catch (
const msgpack::type_error&) {
859 throw_or_abort(
"error converting into enum variant 'MemoryAddress::Direct'");
863 }
else if (tag ==
"Relative") {
866 o.via.map.ptr[0].val.convert(v);
867 }
catch (
const msgpack::type_error&) {
869 throw_or_abort(
"error converting into enum variant 'MemoryAddress::Relative'");
897 auto name =
"HeapArray";
921 auto name =
"HeapVector";
951 auto name =
"AES128Encrypt";
977 auto name =
"Blake2s";
1001 auto name =
"Blake3";
1025 auto name =
"Keccakf1600";
1055 auto name =
"EcdsaSecp256k1";
1088 auto name =
"EcdsaSecp256r1";
1117 auto name =
"MultiScalarMul";
1152 auto name =
"EmbeddedCurveAdd";
1181 auto name =
"Poseidon2Permutation";
1207 auto name =
"Sha256Compression";
1238 auto name =
"ToRadix";
1256 Poseidon2Permutation,
1269 switch (
value.index()) {
1272 tag =
"AES128Encrypt";
1284 tag =
"Keccakf1600";
1288 tag =
"EcdsaSecp256k1";
1292 tag =
"EcdsaSecp256r1";
1296 tag =
"MultiScalarMul";
1300 tag =
"EmbeddedCurveAdd";
1304 tag =
"Poseidon2Permutation";
1308 tag =
"Sha256Compression";
1322 [&packer, tag](
const auto& arg) {
1324 data[tag] = msgpack::object(arg);
1334 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
1338 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
1343 if (o.type == msgpack::type::object_type::MAP) {
1344 o.via.map.ptr[0].key.convert(tag);
1348 }
catch (
const msgpack::type_error&) {
1350 throw_or_abort(
"error converting tag to string for enum 'BlackBoxOp'");
1352 if (tag ==
"AES128Encrypt") {
1355 o.via.map.ptr[0].val.convert(v);
1356 }
catch (
const msgpack::type_error&) {
1358 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::AES128Encrypt'");
1362 }
else if (tag ==
"Blake2s") {
1365 o.via.map.ptr[0].val.convert(v);
1366 }
catch (
const msgpack::type_error&) {
1368 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::Blake2s'");
1372 }
else if (tag ==
"Blake3") {
1375 o.via.map.ptr[0].val.convert(v);
1376 }
catch (
const msgpack::type_error&) {
1378 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::Blake3'");
1382 }
else if (tag ==
"Keccakf1600") {
1385 o.via.map.ptr[0].val.convert(v);
1386 }
catch (
const msgpack::type_error&) {
1388 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::Keccakf1600'");
1392 }
else if (tag ==
"EcdsaSecp256k1") {
1395 o.via.map.ptr[0].val.convert(v);
1396 }
catch (
const msgpack::type_error&) {
1398 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::EcdsaSecp256k1'");
1402 }
else if (tag ==
"EcdsaSecp256r1") {
1405 o.via.map.ptr[0].val.convert(v);
1406 }
catch (
const msgpack::type_error&) {
1408 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::EcdsaSecp256r1'");
1412 }
else if (tag ==
"MultiScalarMul") {
1415 o.via.map.ptr[0].val.convert(v);
1416 }
catch (
const msgpack::type_error&) {
1418 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::MultiScalarMul'");
1422 }
else if (tag ==
"EmbeddedCurveAdd") {
1425 o.via.map.ptr[0].val.convert(v);
1426 }
catch (
const msgpack::type_error&) {
1428 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::EmbeddedCurveAdd'");
1432 }
else if (tag ==
"Poseidon2Permutation") {
1435 o.via.map.ptr[0].val.convert(v);
1436 }
catch (
const msgpack::type_error&) {
1438 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::Poseidon2Permutation'");
1442 }
else if (tag ==
"Sha256Compression") {
1445 o.via.map.ptr[0].val.convert(v);
1446 }
catch (
const msgpack::type_error&) {
1448 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::Sha256Compression'");
1452 }
else if (tag ==
"ToRadix") {
1455 o.via.map.ptr[0].val.convert(v);
1456 }
catch (
const msgpack::type_error&) {
1458 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::ToRadix'");
1469struct HeapValueType;
1486 }
catch (
const msgpack::type_error&) {
1510 auto name =
"Array";
1532 auto name =
"Vector";
1548 switch (
value.index()) {
1569 [&packer, tag](
const auto& arg) {
1571 data[tag] = msgpack::object(arg);
1581 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
1585 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
1590 if (o.type == msgpack::type::object_type::MAP) {
1591 o.via.map.ptr[0].key.convert(tag);
1595 }
catch (
const msgpack::type_error&) {
1597 throw_or_abort(
"error converting tag to string for enum 'HeapValueType'");
1599 if (tag ==
"Simple") {
1602 o.via.map.ptr[0].val.convert(v);
1603 }
catch (
const msgpack::type_error&) {
1605 throw_or_abort(
"error converting into enum variant 'HeapValueType::Simple'");
1609 }
else if (tag ==
"Array") {
1612 o.via.map.ptr[0].val.convert(v);
1613 }
catch (
const msgpack::type_error&) {
1615 throw_or_abort(
"error converting into enum variant 'HeapValueType::Array'");
1619 }
else if (tag ==
"Vector") {
1622 o.via.map.ptr[0].val.convert(v);
1623 }
catch (
const msgpack::type_error&) {
1625 throw_or_abort(
"error converting into enum variant 'HeapValueType::Vector'");
1651 }
catch (
const msgpack::type_error&) {
1671 }
catch (
const msgpack::type_error&) {
1691 }
catch (
const msgpack::type_error&) {
1708 switch (
value.index()) {
1711 tag =
"MemoryAddress";
1729 [&packer, tag](
const auto& arg) {
1731 data[tag] = msgpack::object(arg);
1741 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
1745 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
1750 if (o.type == msgpack::type::object_type::MAP) {
1751 o.via.map.ptr[0].key.convert(tag);
1755 }
catch (
const msgpack::type_error&) {
1757 throw_or_abort(
"error converting tag to string for enum 'ValueOrArray'");
1759 if (tag ==
"MemoryAddress") {
1762 o.via.map.ptr[0].val.convert(v);
1763 }
catch (
const msgpack::type_error&) {
1765 throw_or_abort(
"error converting into enum variant 'ValueOrArray::MemoryAddress'");
1769 }
else if (tag ==
"HeapArray") {
1772 o.via.map.ptr[0].val.convert(v);
1773 }
catch (
const msgpack::type_error&) {
1775 throw_or_abort(
"error converting into enum variant 'ValueOrArray::HeapArray'");
1779 }
else if (tag ==
"HeapVector") {
1782 o.via.map.ptr[0].val.convert(v);
1783 }
catch (
const msgpack::type_error&) {
1785 throw_or_abort(
"error converting into enum variant 'ValueOrArray::HeapVector'");
1819 auto name =
"BinaryFieldOp";
1851 auto name =
"BinaryIntOp";
1932 auto name =
"JumpIf";
1979 auto name =
"CalldataCopy";
2027 auto name =
"Const";
2054 auto name =
"IndirectConst";
2094 auto name =
"ForeignCall";
2149 auto name =
"ConditionalMov";
2199 auto name =
"Store";
2219 }
catch (
const msgpack::type_error&) {
2297 switch (
value.index()) {
2300 tag =
"BinaryFieldOp";
2304 tag =
"BinaryIntOp";
2324 tag =
"CalldataCopy";
2336 tag =
"IndirectConst";
2344 tag =
"ForeignCall";
2352 tag =
"ConditionalMov";
2382 [&packer, tag](
const auto& arg) {
2384 data[tag] = msgpack::object(arg);
2394 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
2398 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
2403 if (o.type == msgpack::type::object_type::MAP) {
2404 o.via.map.ptr[0].key.convert(tag);
2408 }
catch (
const msgpack::type_error&) {
2410 throw_or_abort(
"error converting tag to string for enum 'BrilligOpcode'");
2412 if (tag ==
"BinaryFieldOp") {
2415 o.via.map.ptr[0].val.convert(v);
2416 }
catch (
const msgpack::type_error&) {
2418 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::BinaryFieldOp'");
2422 }
else if (tag ==
"BinaryIntOp") {
2425 o.via.map.ptr[0].val.convert(v);
2426 }
catch (
const msgpack::type_error&) {
2428 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::BinaryIntOp'");
2432 }
else if (tag ==
"Not") {
2435 o.via.map.ptr[0].val.convert(v);
2436 }
catch (
const msgpack::type_error&) {
2438 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::Not'");
2442 }
else if (tag ==
"Cast") {
2445 o.via.map.ptr[0].val.convert(v);
2446 }
catch (
const msgpack::type_error&) {
2448 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::Cast'");
2452 }
else if (tag ==
"JumpIf") {
2455 o.via.map.ptr[0].val.convert(v);
2456 }
catch (
const msgpack::type_error&) {
2458 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::JumpIf'");
2462 }
else if (tag ==
"Jump") {
2465 o.via.map.ptr[0].val.convert(v);
2466 }
catch (
const msgpack::type_error&) {
2468 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::Jump'");
2472 }
else if (tag ==
"CalldataCopy") {
2475 o.via.map.ptr[0].val.convert(v);
2476 }
catch (
const msgpack::type_error&) {
2478 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::CalldataCopy'");
2482 }
else if (tag ==
"Call") {
2485 o.via.map.ptr[0].val.convert(v);
2486 }
catch (
const msgpack::type_error&) {
2488 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::Call'");
2492 }
else if (tag ==
"Const") {
2495 o.via.map.ptr[0].val.convert(v);
2496 }
catch (
const msgpack::type_error&) {
2498 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::Const'");
2502 }
else if (tag ==
"IndirectConst") {
2505 o.via.map.ptr[0].val.convert(v);
2506 }
catch (
const msgpack::type_error&) {
2508 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::IndirectConst'");
2512 }
else if (tag ==
"Return") {
2515 }
else if (tag ==
"ForeignCall") {
2518 o.via.map.ptr[0].val.convert(v);
2519 }
catch (
const msgpack::type_error&) {
2521 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::ForeignCall'");
2525 }
else if (tag ==
"Mov") {
2528 o.via.map.ptr[0].val.convert(v);
2529 }
catch (
const msgpack::type_error&) {
2531 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::Mov'");
2535 }
else if (tag ==
"ConditionalMov") {
2538 o.via.map.ptr[0].val.convert(v);
2539 }
catch (
const msgpack::type_error&) {
2541 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::ConditionalMov'");
2545 }
else if (tag ==
"Load") {
2548 o.via.map.ptr[0].val.convert(v);
2549 }
catch (
const msgpack::type_error&) {
2551 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::Load'");
2555 }
else if (tag ==
"Store") {
2558 o.via.map.ptr[0].val.convert(v);
2559 }
catch (
const msgpack::type_error&) {
2561 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::Store'");
2565 }
else if (tag ==
"BlackBox") {
2568 o.via.map.ptr[0].val.convert(v);
2569 }
catch (
const msgpack::type_error&) {
2571 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::BlackBox'");
2575 }
else if (tag ==
"Trap") {
2578 o.via.map.ptr[0].val.convert(v);
2579 }
catch (
const msgpack::type_error&) {
2581 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::Trap'");
2585 }
else if (tag ==
"Stop") {
2588 o.via.map.ptr[0].val.convert(v);
2589 }
catch (
const msgpack::type_error&) {
2591 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::Stop'");
2615 }
catch (
const msgpack::type_error&) {
2637 }
catch (
const msgpack::type_error&) {
2657 }
catch (
const msgpack::type_error&) {
2674 switch (
value.index()) {
2691 [&packer, tag](
const auto& arg) {
2693 data[tag] = msgpack::object(arg);
2703 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
2707 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
2712 if (o.type == msgpack::type::object_type::MAP) {
2713 o.via.map.ptr[0].key.convert(tag);
2717 }
catch (
const msgpack::type_error&) {
2719 throw_or_abort(
"error converting tag to string for enum 'FunctionInput'");
2721 if (tag ==
"Constant") {
2724 o.via.map.ptr[0].val.convert(v);
2725 }
catch (
const msgpack::type_error&) {
2727 throw_or_abort(
"error converting into enum variant 'FunctionInput::Constant'");
2731 }
else if (tag ==
"Witness") {
2734 o.via.map.ptr[0].val.convert(v);
2735 }
catch (
const msgpack::type_error&) {
2737 throw_or_abort(
"error converting into enum variant 'FunctionInput::Witness'");
2771 auto name =
"AES128Encrypt";
2857 auto name =
"RANGE";
2881 auto name =
"Blake2s";
2905 auto name =
"Blake3";
2937 auto name =
"EcdsaSecp256k1";
2973 auto name =
"EcdsaSecp256r1";
3005 auto name =
"MultiScalarMul";
3035 auto name =
"EmbeddedCurveAdd";
3061 auto name =
"Keccakf1600";
3093 auto name =
"RecursiveAggregation";
3121 auto name =
"Poseidon2Permutation";
3147 auto name =
"Sha256Compression";
3166 RecursiveAggregation,
3167 Poseidon2Permutation,
3179 switch (
value.index()) {
3182 tag =
"AES128Encrypt";
3206 tag =
"EcdsaSecp256k1";
3210 tag =
"EcdsaSecp256r1";
3214 tag =
"MultiScalarMul";
3218 tag =
"EmbeddedCurveAdd";
3222 tag =
"Keccakf1600";
3226 tag =
"RecursiveAggregation";
3230 tag =
"Poseidon2Permutation";
3234 tag =
"Sha256Compression";
3244 [&packer, tag](
const auto& arg) {
3246 data[tag] = msgpack::object(arg);
3256 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
3260 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
3265 if (o.type == msgpack::type::object_type::MAP) {
3266 o.via.map.ptr[0].key.convert(tag);
3270 }
catch (
const msgpack::type_error&) {
3272 throw_or_abort(
"error converting tag to string for enum 'BlackBoxFuncCall'");
3274 if (tag ==
"AES128Encrypt") {
3277 o.via.map.ptr[0].val.convert(v);
3278 }
catch (
const msgpack::type_error&) {
3280 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::AES128Encrypt'");
3284 }
else if (tag ==
"AND") {
3287 o.via.map.ptr[0].val.convert(v);
3288 }
catch (
const msgpack::type_error&) {
3290 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::AND'");
3294 }
else if (tag ==
"XOR") {
3297 o.via.map.ptr[0].val.convert(v);
3298 }
catch (
const msgpack::type_error&) {
3300 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::XOR'");
3304 }
else if (tag ==
"RANGE") {
3307 o.via.map.ptr[0].val.convert(v);
3308 }
catch (
const msgpack::type_error&) {
3310 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::RANGE'");
3314 }
else if (tag ==
"Blake2s") {
3317 o.via.map.ptr[0].val.convert(v);
3318 }
catch (
const msgpack::type_error&) {
3320 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::Blake2s'");
3324 }
else if (tag ==
"Blake3") {
3327 o.via.map.ptr[0].val.convert(v);
3328 }
catch (
const msgpack::type_error&) {
3330 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::Blake3'");
3334 }
else if (tag ==
"EcdsaSecp256k1") {
3337 o.via.map.ptr[0].val.convert(v);
3338 }
catch (
const msgpack::type_error&) {
3340 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::EcdsaSecp256k1'");
3344 }
else if (tag ==
"EcdsaSecp256r1") {
3347 o.via.map.ptr[0].val.convert(v);
3348 }
catch (
const msgpack::type_error&) {
3350 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::EcdsaSecp256r1'");
3354 }
else if (tag ==
"MultiScalarMul") {
3357 o.via.map.ptr[0].val.convert(v);
3358 }
catch (
const msgpack::type_error&) {
3360 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::MultiScalarMul'");
3364 }
else if (tag ==
"EmbeddedCurveAdd") {
3367 o.via.map.ptr[0].val.convert(v);
3368 }
catch (
const msgpack::type_error&) {
3370 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::EmbeddedCurveAdd'");
3374 }
else if (tag ==
"Keccakf1600") {
3377 o.via.map.ptr[0].val.convert(v);
3378 }
catch (
const msgpack::type_error&) {
3380 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::Keccakf1600'");
3384 }
else if (tag ==
"RecursiveAggregation") {
3387 o.via.map.ptr[0].val.convert(v);
3388 }
catch (
const msgpack::type_error&) {
3390 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::RecursiveAggregation'");
3394 }
else if (tag ==
"Poseidon2Permutation") {
3397 o.via.map.ptr[0].val.convert(v);
3398 }
catch (
const msgpack::type_error&) {
3400 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::Poseidon2Permutation'");
3404 }
else if (tag ==
"Sha256Compression") {
3407 o.via.map.ptr[0].val.convert(v);
3408 }
catch (
const msgpack::type_error&) {
3410 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::Sha256Compression'");
3416 throw_or_abort(
"unknown 'BlackBoxFuncCall' enum variant: " + tag);
3434 }
catch (
const msgpack::type_error&) {
3465 }
catch (
const msgpack::type_error&) {
3491 switch (
value.index()) {
3512 [&packer, tag](
const auto& arg) {
3514 data[tag] = msgpack::object(arg);
3524 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
3528 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
3533 if (o.type == msgpack::type::object_type::MAP) {
3534 o.via.map.ptr[0].key.convert(tag);
3538 }
catch (
const msgpack::type_error&) {
3540 throw_or_abort(
"error converting tag to string for enum 'BlockType'");
3542 if (tag ==
"Memory") {
3545 }
else if (tag ==
"CallData") {
3548 o.via.map.ptr[0].val.convert(v);
3549 }
catch (
const msgpack::type_error&) {
3551 throw_or_abort(
"error converting into enum variant 'BlockType::CallData'");
3555 }
else if (tag ==
"ReturnData") {
3584 auto name =
"Expression";
3607 }
catch (
const msgpack::type_error&) {
3627 }
catch (
const msgpack::type_error&) {
3647 }
catch (
const msgpack::type_error&) {
3664 switch (
value.index()) {
3675 tag =
"MemoryArray";
3685 [&packer, tag](
const auto& arg) {
3687 data[tag] = msgpack::object(arg);
3697 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
3701 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
3706 if (o.type == msgpack::type::object_type::MAP) {
3707 o.via.map.ptr[0].key.convert(tag);
3711 }
catch (
const msgpack::type_error&) {
3713 throw_or_abort(
"error converting tag to string for enum 'BrilligInputs'");
3715 if (tag ==
"Single") {
3718 o.via.map.ptr[0].val.convert(v);
3719 }
catch (
const msgpack::type_error&) {
3721 throw_or_abort(
"error converting into enum variant 'BrilligInputs::Single'");
3725 }
else if (tag ==
"Array") {
3728 o.via.map.ptr[0].val.convert(v);
3729 }
catch (
const msgpack::type_error&) {
3731 throw_or_abort(
"error converting into enum variant 'BrilligInputs::Array'");
3735 }
else if (tag ==
"MemoryArray") {
3738 o.via.map.ptr[0].val.convert(v);
3739 }
catch (
const msgpack::type_error&) {
3741 throw_or_abort(
"error converting into enum variant 'BrilligInputs::MemoryArray'");
3767 }
catch (
const msgpack::type_error&) {
3787 }
catch (
const msgpack::type_error&) {
3804 switch (
value.index()) {
3821 [&packer, tag](
const auto& arg) {
3823 data[tag] = msgpack::object(arg);
3833 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
3837 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
3842 if (o.type == msgpack::type::object_type::MAP) {
3843 o.via.map.ptr[0].key.convert(tag);
3847 }
catch (
const msgpack::type_error&) {
3849 throw_or_abort(
"error converting tag to string for enum 'BrilligOutputs'");
3851 if (tag ==
"Simple") {
3854 o.via.map.ptr[0].val.convert(v);
3855 }
catch (
const msgpack::type_error&) {
3857 throw_or_abort(
"error converting into enum variant 'BrilligOutputs::Simple'");
3861 }
else if (tag ==
"Array") {
3864 o.via.map.ptr[0].val.convert(v);
3865 }
catch (
const msgpack::type_error&) {
3867 throw_or_abort(
"error converting into enum variant 'BrilligOutputs::Array'");
3897 auto name =
"MemOp";
3920 }
catch (
const msgpack::type_error&) {
3940 }
catch (
const msgpack::type_error&) {
3942 throw_or_abort(
"error converting into newtype 'BlackBoxFuncCall'");
3964 auto name =
"MemoryOp";
3990 auto name =
"MemoryInit";
4019 auto name =
"BrilligCall";
4068 switch (
value.index()) {
4075 tag =
"BlackBoxFuncCall";
4087 tag =
"BrilligCall";
4101 [&packer, tag](
const auto& arg) {
4103 data[tag] = msgpack::object(arg);
4113 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
4117 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
4122 if (o.type == msgpack::type::object_type::MAP) {
4123 o.via.map.ptr[0].key.convert(tag);
4127 }
catch (
const msgpack::type_error&) {
4129 throw_or_abort(
"error converting tag to string for enum 'Opcode'");
4131 if (tag ==
"AssertZero") {
4134 o.via.map.ptr[0].val.convert(v);
4135 }
catch (
const msgpack::type_error&) {
4137 throw_or_abort(
"error converting into enum variant 'Opcode::AssertZero'");
4141 }
else if (tag ==
"BlackBoxFuncCall") {
4144 o.via.map.ptr[0].val.convert(v);
4145 }
catch (
const msgpack::type_error&) {
4147 throw_or_abort(
"error converting into enum variant 'Opcode::BlackBoxFuncCall'");
4151 }
else if (tag ==
"MemoryOp") {
4154 o.via.map.ptr[0].val.convert(v);
4155 }
catch (
const msgpack::type_error&) {
4157 throw_or_abort(
"error converting into enum variant 'Opcode::MemoryOp'");
4161 }
else if (tag ==
"MemoryInit") {
4164 o.via.map.ptr[0].val.convert(v);
4165 }
catch (
const msgpack::type_error&) {
4167 throw_or_abort(
"error converting into enum variant 'Opcode::MemoryInit'");
4171 }
else if (tag ==
"BrilligCall") {
4174 o.via.map.ptr[0].val.convert(v);
4175 }
catch (
const msgpack::type_error&) {
4177 throw_or_abort(
"error converting into enum variant 'Opcode::BrilligCall'");
4181 }
else if (tag ==
"Call") {
4184 o.via.map.ptr[0].val.convert(v);
4185 }
catch (
const msgpack::type_error&) {
4187 throw_or_abort(
"error converting into enum variant 'Opcode::Call'");
4213 }
catch (
const msgpack::type_error&) {
4233 }
catch (
const msgpack::type_error&) {
4250 switch (
value.index()) {
4267 [&packer, tag](
const auto& arg) {
4269 data[tag] = msgpack::object(arg);
4279 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
4283 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
4288 if (o.type == msgpack::type::object_type::MAP) {
4289 o.via.map.ptr[0].key.convert(tag);
4293 }
catch (
const msgpack::type_error&) {
4295 throw_or_abort(
"error converting tag to string for enum 'ExpressionOrMemory'");
4297 if (tag ==
"Expression") {
4300 o.via.map.ptr[0].val.convert(v);
4301 }
catch (
const msgpack::type_error&) {
4303 throw_or_abort(
"error converting into enum variant 'ExpressionOrMemory::Expression'");
4307 }
else if (tag ==
"Memory") {
4310 o.via.map.ptr[0].val.convert(v);
4311 }
catch (
const msgpack::type_error&) {
4313 throw_or_abort(
"error converting into enum variant 'ExpressionOrMemory::Memory'");
4319 throw_or_abort(
"unknown 'ExpressionOrMemory' enum variant: " + tag);
4341 auto name =
"AssertionPayload";
4363 }
catch (
const msgpack::type_error&) {
4387 auto name =
"Brillig";
4404 switch (
value.index()) {
4421 [&packer, tag](
const auto& arg) {
4423 data[tag] = msgpack::object(arg);
4433 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
4437 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
4442 if (o.type == msgpack::type::object_type::MAP) {
4443 o.via.map.ptr[0].key.convert(tag);
4447 }
catch (
const msgpack::type_error&) {
4449 throw_or_abort(
"error converting tag to string for enum 'OpcodeLocation'");
4451 if (tag ==
"Acir") {
4454 o.via.map.ptr[0].val.convert(v);
4455 }
catch (
const msgpack::type_error&) {
4457 throw_or_abort(
"error converting into enum variant 'OpcodeLocation::Acir'");
4461 }
else if (tag ==
"Brillig") {
4464 o.via.map.ptr[0].val.convert(v);
4465 }
catch (
const msgpack::type_error&) {
4467 throw_or_abort(
"error converting into enum variant 'OpcodeLocation::Brillig'");
4491 }
catch (
const msgpack::type_error&) {
4525 auto name =
"Circuit";
4554 auto name =
"BrilligBytecode";
4578 auto name =
"Program";
4600 auto name =
"ProgramWithoutBrillig";
4632 auto name =
"Bounded";
4648 switch (
value.index()) {
4665 [&packer, tag](
const auto& arg) {
4667 data[tag] = msgpack::object(arg);
4677 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
4681 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
4686 if (o.type == msgpack::type::object_type::MAP) {
4687 o.via.map.ptr[0].key.convert(tag);
4691 }
catch (
const msgpack::type_error&) {
4693 throw_or_abort(
"error converting tag to string for enum 'ExpressionWidth'");
4695 if (tag ==
"Unbounded") {
4698 }
else if (tag ==
"Bounded") {
4701 o.via.map.ptr[0].val.convert(v);
4702 }
catch (
const msgpack::type_error&) {
4704 throw_or_abort(
"error converting into enum variant 'ExpressionWidth::Bounded'");
4710 throw_or_abort(
"unknown 'ExpressionWidth' enum variant: " + tag);
4741 if (deserializer.get_buffer_offset() < input.size()) {
4750template <
typename Serializer>
4753 serializer.increase_container_depth();
4756 serializer.decrease_container_depth();
4760template <
typename Deserializer>
4763 deserializer.increase_container_depth();
4767 deserializer.decrease_container_depth();
4792 if (deserializer.get_buffer_offset() < input.size()) {
4801template <
typename Serializer>
4804 serializer.increase_container_depth();
4806 serializer.decrease_container_depth();
4810template <
typename Deserializer>
4813 deserializer.increase_container_depth();
4816 deserializer.decrease_container_depth();
4838 if (deserializer.get_buffer_offset() < input.size()) {
4847template <
typename Serializer>
4849 Serializer& serializer)
4853template <
typename Deserializer>
4878 if (deserializer.get_buffer_offset() < input.size()) {
4887template <
typename Serializer>
4889 Serializer& serializer)
4893template <
typename Deserializer>
4918 if (deserializer.get_buffer_offset() < input.size()) {
4927template <
typename Serializer>
4929 Serializer& serializer)
4933template <
typename Deserializer>
4958 if (deserializer.get_buffer_offset() < input.size()) {
4967template <
typename Serializer>
4969 Serializer& serializer)
4973template <
typename Deserializer>
4998 if (deserializer.get_buffer_offset() < input.size()) {
5007template <
typename Serializer>
5009 Serializer& serializer)
5013template <
typename Deserializer>
5015 Deserializer& deserializer)
5039 if (deserializer.get_buffer_offset() < input.size()) {
5048template <
typename Serializer>
5050 Serializer& serializer)
5054template <
typename Deserializer>
5079 if (deserializer.get_buffer_offset() < input.size()) {
5088template <
typename Serializer>
5090 Serializer& serializer)
5094template <
typename Deserializer>
5096 Deserializer& deserializer)
5120 if (deserializer.get_buffer_offset() < input.size()) {
5129template <
typename Serializer>
5131 Serializer& serializer)
5135template <
typename Deserializer>
5137 Deserializer& deserializer)
5164 if (deserializer.get_buffer_offset() < input.size()) {
5173template <
typename Serializer>
5176 serializer.increase_container_depth();
5178 serializer.decrease_container_depth();
5182template <
typename Deserializer>
5185 deserializer.increase_container_depth();
5188 deserializer.decrease_container_depth();
5210 if (deserializer.get_buffer_offset() < input.size()) {
5219template <
typename Serializer>
5224template <
typename Deserializer>
5249 if (deserializer.get_buffer_offset() < input.size()) {
5258template <
typename Serializer>
5263template <
typename Deserializer>
5288 if (deserializer.get_buffer_offset() < input.size()) {
5297template <
typename Serializer>
5302template <
typename Deserializer>
5327 if (deserializer.get_buffer_offset() < input.size()) {
5336template <
typename Serializer>
5341template <
typename Deserializer>
5366 if (deserializer.get_buffer_offset() < input.size()) {
5375template <
typename Serializer>
5377 Serializer& serializer)
5381template <
typename Deserializer>
5406 if (deserializer.get_buffer_offset() < input.size()) {
5415template <
typename Serializer>
5417 Serializer& serializer)
5421template <
typename Deserializer>
5446 if (deserializer.get_buffer_offset() < input.size()) {
5455template <
typename Serializer>
5457 Serializer& serializer)
5461template <
typename Deserializer>
5463 Deserializer& deserializer)
5487 if (deserializer.get_buffer_offset() < input.size()) {
5496template <
typename Serializer>
5501template <
typename Deserializer>
5526 if (deserializer.get_buffer_offset() < input.size()) {
5535template <
typename Serializer>
5540template <
typename Deserializer>
5565 if (deserializer.get_buffer_offset() < input.size()) {
5574template <
typename Serializer>
5579template <
typename Deserializer>
5604 if (deserializer.get_buffer_offset() < input.size()) {
5613template <
typename Serializer>
5618template <
typename Deserializer>
5643 if (deserializer.get_buffer_offset() < input.size()) {
5652template <
typename Serializer>
5657template <
typename Deserializer>
5685 if (deserializer.get_buffer_offset() < input.size()) {
5694template <
typename Serializer>
5697 serializer.increase_container_depth();
5699 serializer.decrease_container_depth();
5703template <
typename Deserializer>
5706 deserializer.increase_container_depth();
5709 deserializer.decrease_container_depth();
5731 if (deserializer.get_buffer_offset() < input.size()) {
5740template <
typename Serializer>
5745template <
typename Deserializer>
5773 if (deserializer.get_buffer_offset() < input.size()) {
5782template <
typename Serializer>
5789template <
typename Deserializer>
5818 if (deserializer.get_buffer_offset() < input.size()) {
5827template <
typename Serializer>
5830 serializer.increase_container_depth();
5832 serializer.decrease_container_depth();
5836template <
typename Deserializer>
5839 deserializer.increase_container_depth();
5842 deserializer.decrease_container_depth();
5853 if (!(lhs.
iv == rhs.
iv)) {
5856 if (!(lhs.
key == rhs.
key)) {
5876 if (deserializer.get_buffer_offset() < input.size()) {
5885template <
typename Serializer>
5896template <
typename Deserializer>
5898 Deserializer& deserializer)
5912 if (!(lhs.
lhs == rhs.
lhs)) {
5915 if (!(lhs.
rhs == rhs.
rhs)) {
5938 if (deserializer.get_buffer_offset() < input.size()) {
5947template <
typename Serializer>
5949 Serializer& serializer)
5958template <
typename Deserializer>
5973 if (!(lhs.
lhs == rhs.
lhs)) {
5976 if (!(lhs.
rhs == rhs.
rhs)) {
5999 if (deserializer.get_buffer_offset() < input.size()) {
6008template <
typename Serializer>
6010 Serializer& serializer)
6019template <
typename Deserializer>
6054 if (deserializer.get_buffer_offset() < input.size()) {
6063template <
typename Serializer>
6065 Serializer& serializer)
6072template <
typename Deserializer>
6074 Deserializer& deserializer)
6106 if (deserializer.get_buffer_offset() < input.size()) {
6115template <
typename Serializer>
6117 Serializer& serializer)
6124template <
typename Deserializer>
6126 Deserializer& deserializer)
6158 if (deserializer.get_buffer_offset() < input.size()) {
6167template <
typename Serializer>
6169 Serializer& serializer)
6176template <
typename Deserializer>
6178 Deserializer& deserializer)
6222 if (deserializer.get_buffer_offset() < input.size()) {
6231template <
typename Serializer>
6244template <
typename Deserializer>
6246 Deserializer& deserializer)
6294 if (deserializer.get_buffer_offset() < input.size()) {
6303template <
typename Serializer>
6316template <
typename Deserializer>
6318 Deserializer& deserializer)
6360 if (deserializer.get_buffer_offset() < input.size()) {
6369template <
typename Serializer>
6380template <
typename Deserializer>
6382 Deserializer& deserializer)
6419 std::vector<uint8_t> input)
6423 if (deserializer.get_buffer_offset() < input.size()) {
6432template <
typename Serializer>
6443template <
typename Deserializer>
6445 Deserializer& deserializer)
6479 if (deserializer.get_buffer_offset() < input.size()) {
6488template <
typename Serializer>
6490 Serializer& serializer)
6497template <
typename Deserializer>
6499 Deserializer& deserializer)
6541 std::vector<uint8_t> input)
6545 if (deserializer.get_buffer_offset() < input.size()) {
6554template <
typename Serializer>
6567template <
typename Deserializer>
6603 std::vector<uint8_t> input)
6607 if (deserializer.get_buffer_offset() < input.size()) {
6616template <
typename Serializer>
6625template <
typename Deserializer>
6659 std::vector<uint8_t> input)
6663 if (deserializer.get_buffer_offset() < input.size()) {
6672template <
typename Serializer>
6682template <
typename Deserializer>
6684 Deserializer& deserializer)
6714 if (deserializer.get_buffer_offset() < input.size()) {
6723template <
typename Serializer>
6726 serializer.increase_container_depth();
6728 serializer.decrease_container_depth();
6732template <
typename Deserializer>
6735 deserializer.increase_container_depth();
6738 deserializer.decrease_container_depth();
6749 if (!(lhs.
iv == rhs.
iv)) {
6752 if (!(lhs.
key == rhs.
key)) {
6772 if (deserializer.get_buffer_offset() < input.size()) {
6781template <
typename Serializer>
6783 Serializer& serializer)
6792template <
typename Deserializer>
6794 Deserializer& deserializer)
6828 if (deserializer.get_buffer_offset() < input.size()) {
6837template <
typename Serializer>
6839 Serializer& serializer)
6846template <
typename Deserializer>
6879 if (deserializer.get_buffer_offset() < input.size()) {
6888template <
typename Serializer>
6890 Serializer& serializer)
6897template <
typename Deserializer>
6930 if (deserializer.get_buffer_offset() < input.size()) {
6939template <
typename Serializer>
6941 Serializer& serializer)
6948template <
typename Deserializer>
6950 Deserializer& deserializer)
6991 if (deserializer.get_buffer_offset() < input.size()) {
7000template <
typename Serializer>
7002 Serializer& serializer)
7012template <
typename Deserializer>
7014 Deserializer& deserializer)
7058 if (deserializer.get_buffer_offset() < input.size()) {
7067template <
typename Serializer>
7069 Serializer& serializer)
7079template <
typename Deserializer>
7081 Deserializer& deserializer)
7119 if (deserializer.get_buffer_offset() < input.size()) {
7128template <
typename Serializer>
7130 Serializer& serializer)
7138template <
typename Deserializer>
7140 Deserializer& deserializer)
7188 if (deserializer.get_buffer_offset() < input.size()) {
7197template <
typename Serializer>
7199 Serializer& serializer)
7211template <
typename Deserializer>
7213 Deserializer& deserializer)
7250 if (deserializer.get_buffer_offset() < input.size()) {
7259template <
typename Serializer>
7268template <
typename Deserializer>
7270 Deserializer& deserializer)
7305 if (deserializer.get_buffer_offset() < input.size()) {
7314template <
typename Serializer>
7316 Serializer& serializer)
7324template <
typename Deserializer>
7326 Deserializer& deserializer)
7368 if (deserializer.get_buffer_offset() < input.size()) {
7377template <
typename Serializer>
7379 Serializer& serializer)
7389template <
typename Deserializer>
7422 if (deserializer.get_buffer_offset() < input.size()) {
7431template <
typename Serializer>
7434 serializer.increase_container_depth();
7436 serializer.decrease_container_depth();
7440template <
typename Deserializer>
7443 deserializer.increase_container_depth();
7446 deserializer.decrease_container_depth();
7471 if (deserializer.get_buffer_offset() < input.size()) {
7480template <
typename Serializer>
7483 serializer.increase_container_depth();
7485 serializer.decrease_container_depth();
7489template <
typename Deserializer>
7492 deserializer.increase_container_depth();
7495 deserializer.decrease_container_depth();
7517 if (deserializer.get_buffer_offset() < input.size()) {
7526template <
typename Serializer>
7531template <
typename Deserializer>
7559 if (deserializer.get_buffer_offset() < input.size()) {
7568template <
typename Serializer>
7570 Serializer& serializer)
7576template <
typename Deserializer>
7602 if (deserializer.get_buffer_offset() < input.size()) {
7611template <
typename Serializer>
7613 Serializer& serializer)
7617template <
typename Deserializer>
7648 if (deserializer.get_buffer_offset() < input.size()) {
7657template <
typename Serializer>
7660 serializer.increase_container_depth();
7663 serializer.decrease_container_depth();
7667template <
typename Deserializer>
7670 deserializer.increase_container_depth();
7674 deserializer.decrease_container_depth();
7699 if (deserializer.get_buffer_offset() < input.size()) {
7708template <
typename Serializer>
7711 serializer.increase_container_depth();
7713 serializer.decrease_container_depth();
7717template <
typename Deserializer>
7720 deserializer.increase_container_depth();
7723 deserializer.decrease_container_depth();
7748 if (deserializer.get_buffer_offset() < input.size()) {
7757template <
typename Serializer>
7759 Serializer& serializer)
7765template <
typename Deserializer>
7794 if (deserializer.get_buffer_offset() < input.size()) {
7803template <
typename Serializer>
7805 Serializer& serializer)
7811template <
typename Deserializer>
7840 if (deserializer.get_buffer_offset() < input.size()) {
7849template <
typename Serializer>
7851 Serializer& serializer)
7857template <
typename Deserializer>
7859 Deserializer& deserializer)
7887 if (deserializer.get_buffer_offset() < input.size()) {
7896template <
typename Serializer>
7899 serializer.increase_container_depth();
7901 serializer.decrease_container_depth();
7905template <
typename Deserializer>
7908 deserializer.increase_container_depth();
7911 deserializer.decrease_container_depth();
7922 if (!(lhs.
op == rhs.
op)) {
7925 if (!(lhs.
lhs == rhs.
lhs)) {
7928 if (!(lhs.
rhs == rhs.
rhs)) {
7945 if (deserializer.get_buffer_offset() < input.size()) {
7954template <
typename Serializer>
7956 Serializer& serializer)
7965template <
typename Deserializer>
7967 Deserializer& deserializer)
7984 if (!(lhs.
op == rhs.
op)) {
7990 if (!(lhs.
lhs == rhs.
lhs)) {
7993 if (!(lhs.
rhs == rhs.
rhs)) {
8010 if (deserializer.get_buffer_offset() < input.size()) {
8019template <
typename Serializer>
8021 Serializer& serializer)
8031template <
typename Deserializer>
8033 Deserializer& deserializer)
8071 if (deserializer.get_buffer_offset() < input.size()) {
8080template <
typename Serializer>
8082 Serializer& serializer)
8090template <
typename Deserializer>
8127 if (deserializer.get_buffer_offset() < input.size()) {
8136template <
typename Serializer>
8138 Serializer& serializer)
8146template <
typename Deserializer>
8180 if (deserializer.get_buffer_offset() < input.size()) {
8189template <
typename Serializer>
8191 Serializer& serializer)
8198template <
typename Deserializer>
8228 if (deserializer.get_buffer_offset() < input.size()) {
8237template <
typename Serializer>
8239 Serializer& serializer)
8245template <
typename Deserializer>
8280 if (deserializer.get_buffer_offset() < input.size()) {
8289template <
typename Serializer>
8291 Serializer& serializer)
8299template <
typename Deserializer>
8301 Deserializer& deserializer)
8331 if (deserializer.get_buffer_offset() < input.size()) {
8340template <
typename Serializer>
8342 Serializer& serializer)
8348template <
typename Deserializer>
8383 if (deserializer.get_buffer_offset() < input.size()) {
8392template <
typename Serializer>
8394 Serializer& serializer)
8402template <
typename Deserializer>
8439 if (deserializer.get_buffer_offset() < input.size()) {
8448template <
typename Serializer>
8450 Serializer& serializer)
8458template <
typename Deserializer>
8460 Deserializer& deserializer)
8487 if (deserializer.get_buffer_offset() < input.size()) {
8496template <
typename Serializer>
8498 Serializer& serializer)
8502template <
typename Deserializer>
8542 if (deserializer.get_buffer_offset() < input.size()) {
8551template <
typename Serializer>
8553 Serializer& serializer)
8563template <
typename Deserializer>
8565 Deserializer& deserializer)
8601 if (deserializer.get_buffer_offset() < input.size()) {
8610template <
typename Serializer>
8612 Serializer& serializer)
8619template <
typename Deserializer>
8658 if (deserializer.get_buffer_offset() < input.size()) {
8667template <
typename Serializer>
8669 Serializer& serializer)
8678template <
typename Deserializer>
8680 Deserializer& deserializer)
8714 if (deserializer.get_buffer_offset() < input.size()) {
8723template <
typename Serializer>
8725 Serializer& serializer)
8732template <
typename Deserializer>
8754inline std::vector<uint8_t> BrilligOpcode::Store::bincodeSerialize()
const
8765 if (deserializer.get_buffer_offset() < input.size()) {
8774template <
typename Serializer>
8776 Serializer& serializer)
8783template <
typename Deserializer>
8813 if (deserializer.get_buffer_offset() < input.size()) {
8822template <
typename Serializer>
8824 Serializer& serializer)
8830template <
typename Deserializer>
8832 Deserializer& deserializer)
8860 if (deserializer.get_buffer_offset() < input.size()) {
8869template <
typename Serializer>
8871 Serializer& serializer)
8877template <
typename Deserializer>
8906 if (deserializer.get_buffer_offset() < input.size()) {
8915template <
typename Serializer>
8917 Serializer& serializer)
8923template <
typename Deserializer>
8952 if (deserializer.get_buffer_offset() < input.size()) {
8961template <
typename Serializer>
8964 serializer.increase_container_depth();
8966 serializer.decrease_container_depth();
8970template <
typename Deserializer>
8973 deserializer.increase_container_depth();
8976 deserializer.decrease_container_depth();
9001 if (deserializer.get_buffer_offset() < input.size()) {
9010template <
typename Serializer>
9012 Serializer& serializer)
9018template <
typename Deserializer>
9020 Deserializer& deserializer)
9048 if (deserializer.get_buffer_offset() < input.size()) {
9057template <
typename Serializer>
9059 Serializer& serializer)
9065template <
typename Deserializer>
9112 if (deserializer.get_buffer_offset() < input.size()) {
9121template <
typename Serializer>
9124 serializer.increase_container_depth();
9132 serializer.decrease_container_depth();
9136template <
typename Deserializer>
9139 deserializer.increase_container_depth();
9148 deserializer.decrease_container_depth();
9162 if (!(lhs.
q_c == rhs.
q_c)) {
9179 if (deserializer.get_buffer_offset() < input.size()) {
9188template <
typename Serializer>
9191 serializer.increase_container_depth();
9195 serializer.decrease_container_depth();
9199template <
typename Deserializer>
9202 deserializer.increase_container_depth();
9207 deserializer.decrease_container_depth();
9232 if (deserializer.get_buffer_offset() < input.size()) {
9241template <
typename Serializer>
9243 Serializer& serializer)
9245 serializer.increase_container_depth();
9247 serializer.decrease_container_depth();
9251template <
typename Deserializer>
9254 deserializer.increase_container_depth();
9257 deserializer.decrease_container_depth();
9282 if (deserializer.get_buffer_offset() < input.size()) {
9291template <
typename Serializer>
9299template <
typename Deserializer>
9301 Deserializer& deserializer)
9329 if (deserializer.get_buffer_offset() < input.size()) {
9338template <
typename Serializer>
9340 Serializer& serializer)
9346template <
typename Deserializer>
9348 Deserializer& deserializer)
9376 if (deserializer.get_buffer_offset() < input.size()) {
9385template <
typename Serializer>
9388 serializer.increase_container_depth();
9390 serializer.decrease_container_depth();
9394template <
typename Deserializer>
9397 deserializer.increase_container_depth();
9400 deserializer.decrease_container_depth();
9422 if (deserializer.get_buffer_offset() < input.size()) {
9431template <
typename Serializer>
9433 Serializer& serializer)
9437template <
typename Deserializer>
9439 Deserializer& deserializer)
9466 if (deserializer.get_buffer_offset() < input.size()) {
9475template <
typename Serializer>
9477 Serializer& serializer)
9483template <
typename Deserializer>
9485 Deserializer& deserializer)
9513 if (deserializer.get_buffer_offset() < input.size()) {
9522template <
typename Serializer>
9525 serializer.increase_container_depth();
9527 serializer.decrease_container_depth();
9531template <
typename Deserializer>
9534 deserializer.increase_container_depth();
9537 deserializer.decrease_container_depth();
9562 if (deserializer.get_buffer_offset() < input.size()) {
9571template <
typename Serializer>
9573 Serializer& serializer)
9579template <
typename Deserializer>
9581 Deserializer& deserializer)
9609 if (deserializer.get_buffer_offset() < input.size()) {
9618template <
typename Serializer>
9620 Serializer& serializer)
9626template <
typename Deserializer>
9628 Deserializer& deserializer)
9659 if (deserializer.get_buffer_offset() < input.size()) {
9668template <
typename Serializer>
9671 serializer.increase_container_depth();
9674 serializer.decrease_container_depth();
9678template <
typename Deserializer>
9681 deserializer.increase_container_depth();
9685 deserializer.decrease_container_depth();
9710 if (deserializer.get_buffer_offset() < input.size()) {
9719template <
typename Serializer>
9722 serializer.increase_container_depth();
9724 serializer.decrease_container_depth();
9728template <
typename Deserializer>
9731 deserializer.increase_container_depth();
9734 deserializer.decrease_container_depth();
9759 if (deserializer.get_buffer_offset() < input.size()) {
9768template <
typename Serializer>
9770 Serializer& serializer)
9776template <
typename Deserializer>
9808 if (deserializer.get_buffer_offset() < input.size()) {
9817template <
typename Serializer>
9819 Serializer& serializer)
9826template <
typename Deserializer>
9856 if (deserializer.get_buffer_offset() < input.size()) {
9865template <
typename Serializer>
9867 Serializer& serializer)
9873template <
typename Deserializer>
9905 if (deserializer.get_buffer_offset() < input.size()) {
9914template <
typename Serializer>
9917 serializer.increase_container_depth();
9920 serializer.decrease_container_depth();
9924template <
typename Deserializer>
9927 deserializer.increase_container_depth();
9931 deserializer.decrease_container_depth();
9956 if (deserializer.get_buffer_offset() < input.size()) {
9965template <
typename Serializer>
9968 serializer.increase_container_depth();
9970 serializer.decrease_container_depth();
9974template <
typename Deserializer>
9977 deserializer.increase_container_depth();
9980 deserializer.decrease_container_depth();
10002 if (deserializer.get_buffer_offset() < input.size()) {
10011template <
typename Serializer>
10013 Serializer& serializer)
10017template <
typename Deserializer>
10042 if (deserializer.get_buffer_offset() < input.size()) {
10051template <
typename Serializer>
10053 Serializer& serializer)
10057template <
typename Deserializer>
10082 if (deserializer.get_buffer_offset() < input.size()) {
10091template <
typename Serializer>
10093 Serializer& serializer)
10097template <
typename Deserializer>
10122 if (deserializer.get_buffer_offset() < input.size()) {
10131template <
typename Serializer>
10133 Serializer& serializer)
10137template <
typename Deserializer>
10162 if (deserializer.get_buffer_offset() < input.size()) {
10171template <
typename Serializer>
10173 Serializer& serializer)
10177template <
typename Deserializer>
10202 if (deserializer.get_buffer_offset() < input.size()) {
10211template <
typename Serializer>
10213 Serializer& serializer)
10217template <
typename Deserializer>
10251 if (deserializer.get_buffer_offset() < input.size()) {
10260template <
typename Serializer>
10263 serializer.increase_container_depth();
10267 serializer.decrease_container_depth();
10271template <
typename Deserializer>
10274 deserializer.increase_container_depth();
10279 deserializer.decrease_container_depth();
10304 if (deserializer.get_buffer_offset() < input.size()) {
10313template <
typename Serializer>
10316 serializer.increase_container_depth();
10318 serializer.decrease_container_depth();
10322template <
typename Deserializer>
10325 deserializer.increase_container_depth();
10328 deserializer.decrease_container_depth();
10353 if (deserializer.get_buffer_offset() < input.size()) {
10362template <
typename Serializer>
10364 Serializer& serializer)
10370template <
typename Deserializer>
10399 if (deserializer.get_buffer_offset() < input.size()) {
10408template <
typename Serializer>
10410 Serializer& serializer)
10416template <
typename Deserializer>
10418 Deserializer& deserializer)
10446 if (deserializer.get_buffer_offset() < input.size()) {
10455template <
typename Serializer>
10458 serializer.increase_container_depth();
10460 serializer.decrease_container_depth();
10464template <
typename Deserializer>
10467 deserializer.increase_container_depth();
10470 deserializer.decrease_container_depth();
10495 if (deserializer.get_buffer_offset() < input.size()) {
10504template <
typename Serializer>
10506 Serializer& serializer)
10512template <
typename Deserializer>
10541 if (deserializer.get_buffer_offset() < input.size()) {
10550template <
typename Serializer>
10552 Serializer& serializer)
10558template <
typename Deserializer>
10560 Deserializer& deserializer)
10574 if (!(lhs.
op == rhs.
op)) {
10591 if (deserializer.get_buffer_offset() < input.size()) {
10600template <
typename Serializer>
10608template <
typename Deserializer>
10644 if (deserializer.get_buffer_offset() < input.size()) {
10653template <
typename Serializer>
10655 Serializer& serializer)
10663template <
typename Deserializer>
10677 if (!(lhs.
id == rhs.
id)) {
10703 if (deserializer.get_buffer_offset() < input.size()) {
10712template <
typename Serializer>
10714 Serializer& serializer)
10723template <
typename Deserializer>
10738 if (!(lhs.
id == rhs.
id)) {
10764 if (deserializer.get_buffer_offset() < input.size()) {
10773template <
typename Serializer>
10783template <
typename Deserializer>
10815 if (deserializer.get_buffer_offset() < input.size()) {
10824template <
typename Serializer>
10827 serializer.increase_container_depth();
10829 serializer.decrease_container_depth();
10833template <
typename Deserializer>
10836 deserializer.increase_container_depth();
10839 deserializer.decrease_container_depth();
10864 if (deserializer.get_buffer_offset() < input.size()) {
10873template <
typename Serializer>
10875 Serializer& serializer)
10881template <
typename Deserializer>
10913 if (deserializer.get_buffer_offset() < input.size()) {
10922template <
typename Serializer>
10924 Serializer& serializer)
10931template <
typename Deserializer>
10933 Deserializer& deserializer)
10965 if (deserializer.get_buffer_offset() < input.size()) {
10974template <
typename Serializer>
10977 serializer.increase_container_depth();
10980 serializer.decrease_container_depth();
10984template <
typename Deserializer>
10987 deserializer.increase_container_depth();
10992 deserializer.decrease_container_depth();
11017 if (deserializer.get_buffer_offset() < input.size()) {
11026template <
typename Serializer>
11028 Serializer& serializer)
11030 serializer.increase_container_depth();
11032 serializer.decrease_container_depth();
11036template <
typename Deserializer>
11039 deserializer.increase_container_depth();
11042 deserializer.decrease_container_depth();
11067 if (deserializer.get_buffer_offset() < input.size()) {
11076template <
typename Serializer>
11079 serializer.increase_container_depth();
11081 serializer.decrease_container_depth();
11085template <
typename Deserializer>
11088 deserializer.increase_container_depth();
11091 deserializer.decrease_container_depth();
11116 if (deserializer.get_buffer_offset() < input.size()) {
11125template <
typename Serializer>
11128 serializer.increase_container_depth();
11130 serializer.decrease_container_depth();
11134template <
typename Deserializer>
11137 deserializer.increase_container_depth();
11140 deserializer.decrease_container_depth();
11165 if (deserializer.get_buffer_offset() < input.size()) {
11174template <
typename Serializer>
11176 Serializer& serializer)
11182template <
typename Deserializer>
11184 Deserializer& deserializer)
11212 if (deserializer.get_buffer_offset() < input.size()) {
11221template <
typename Serializer>
11223 Serializer& serializer)
11229template <
typename Deserializer>
11231 Deserializer& deserializer)
11259 if (deserializer.get_buffer_offset() < input.size()) {
11268template <
typename Serializer>
11270 Serializer& serializer)
11276template <
typename Deserializer>
11278 Deserializer& deserializer)
11306 if (deserializer.get_buffer_offset() < input.size()) {
11315template <
typename Serializer>
11318 serializer.increase_container_depth();
11320 serializer.decrease_container_depth();
11324template <
typename Deserializer>
11327 deserializer.increase_container_depth();
11330 deserializer.decrease_container_depth();
Serves as a key-value node store for merkle trees. Caches all changes in memory before persisting the...
const std::vector< FF > data
bool operator==(const AssertionPayload &lhs, const AssertionPayload &rhs)
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
std::string to_string(bb::avm2::ValueTag tag)
static AssertionPayload bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
std::vector< Acir::ExpressionOrMemory > payload
friend bool operator==(const AssertionPayload &, const AssertionPayload &)
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
static Add bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const Add &, const Add &)
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
friend bool operator==(const Div &, const Div &)
static Div bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
static Equals bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
friend bool operator==(const Equals &, const Equals &)
static IntegerDiv bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const IntegerDiv &, const IntegerDiv &)
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const LessThanEquals &, const LessThanEquals &)
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
static LessThanEquals bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
static LessThan bincodeDeserialize(std::vector< uint8_t >)
void msgpack_pack(auto &packer) const
friend bool operator==(const LessThan &, const LessThan &)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const Mul &, const Mul &)
static Mul bincodeDeserialize(std::vector< uint8_t >)
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const Sub &, const Sub &)
static Sub bincodeDeserialize(std::vector< uint8_t >)
std::variant< Add, Sub, Mul, Div, IntegerDiv, Equals, LessThan, LessThanEquals > value
void msgpack_pack(auto &packer) const
static BinaryFieldOp bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const BinaryFieldOp &, const BinaryFieldOp &)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
static Add bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const Add &, const Add &)
void msgpack_pack(auto &packer) const
void msgpack_pack(auto &packer) const
static And bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const And &, const And &)
void msgpack_unpack(msgpack::object const &o)
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
static Div bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const Div &, const Div &)
void msgpack_pack(auto &packer) const
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
static Equals bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const Equals &, const Equals &)
friend bool operator==(const LessThanEquals &, const LessThanEquals &)
static LessThanEquals bincodeDeserialize(std::vector< uint8_t >)
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
static LessThan bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
friend bool operator==(const LessThan &, const LessThan &)
void msgpack_pack(auto &packer) const
void msgpack_pack(auto &packer) const
friend bool operator==(const Mul &, const Mul &)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
static Mul bincodeDeserialize(std::vector< uint8_t >)
static Or bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
friend bool operator==(const Or &, const Or &)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const Shl &, const Shl &)
static Shl bincodeDeserialize(std::vector< uint8_t >)
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
friend bool operator==(const Shr &, const Shr &)
std::vector< uint8_t > bincodeSerialize() const
static Shr bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
static Sub bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const Sub &, const Sub &)
friend bool operator==(const Xor &, const Xor &)
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
static Xor bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
static BinaryIntOp bincodeDeserialize(std::vector< uint8_t >)
std::variant< Add, Sub, Mul, Div, Equals, LessThan, LessThanEquals, And, Or, Xor, Shl, Shr > value
friend bool operator==(const BinaryIntOp &, const BinaryIntOp &)
static Field bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const Field &, const Field &)
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
Acir::IntegerBitSize value
static Integer bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const Integer &, const Integer &)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
std::variant< Field, Integer > value
static BitSize bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const BitSize &, const BitSize &)
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
std::shared_ptr< std::array< Acir::FunctionInput, 16 > > key
std::vector< Acir::Witness > outputs
std::vector< uint8_t > bincodeSerialize() const
std::vector< Acir::FunctionInput > inputs
friend bool operator==(const AES128Encrypt &, const AES128Encrypt &)
void msgpack_unpack(msgpack::object const &o)
static AES128Encrypt bincodeDeserialize(std::vector< uint8_t >)
std::shared_ptr< std::array< Acir::FunctionInput, 16 > > iv
friend bool operator==(const AND &, const AND &)
static AND bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
std::shared_ptr< std::array< Acir::Witness, 32 > > outputs
static Blake2s bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
friend bool operator==(const Blake2s &, const Blake2s &)
std::vector< Acir::FunctionInput > inputs
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
static Blake3 bincodeDeserialize(std::vector< uint8_t >)
std::shared_ptr< std::array< Acir::Witness, 32 > > outputs
std::vector< uint8_t > bincodeSerialize() const
std::vector< Acir::FunctionInput > inputs
friend bool operator==(const Blake3 &, const Blake3 &)
std::vector< uint8_t > bincodeSerialize() const
static EcdsaSecp256k1 bincodeDeserialize(std::vector< uint8_t >)
std::shared_ptr< std::array< Acir::FunctionInput, 32 > > public_key_x
std::shared_ptr< std::array< Acir::FunctionInput, 32 > > hashed_message
void msgpack_pack(auto &packer) const
friend bool operator==(const EcdsaSecp256k1 &, const EcdsaSecp256k1 &)
std::shared_ptr< std::array< Acir::FunctionInput, 32 > > public_key_y
void msgpack_unpack(msgpack::object const &o)
std::shared_ptr< std::array< Acir::FunctionInput, 64 > > signature
Acir::FunctionInput predicate
std::shared_ptr< std::array< Acir::FunctionInput, 32 > > public_key_x
static EcdsaSecp256r1 bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const EcdsaSecp256r1 &, const EcdsaSecp256r1 &)
void msgpack_unpack(msgpack::object const &o)
std::shared_ptr< std::array< Acir::FunctionInput, 32 > > hashed_message
void msgpack_pack(auto &packer) const
std::shared_ptr< std::array< Acir::FunctionInput, 32 > > public_key_y
std::shared_ptr< std::array< Acir::FunctionInput, 64 > > signature
Acir::FunctionInput predicate
std::vector< uint8_t > bincodeSerialize() const
std::shared_ptr< std::array< Acir::Witness, 3 > > outputs
friend bool operator==(const EmbeddedCurveAdd &, const EmbeddedCurveAdd &)
void msgpack_pack(auto &packer) const
std::shared_ptr< std::array< Acir::FunctionInput, 3 > > input2
Acir::FunctionInput predicate
void msgpack_unpack(msgpack::object const &o)
std::shared_ptr< std::array< Acir::FunctionInput, 3 > > input1
static EmbeddedCurveAdd bincodeDeserialize(std::vector< uint8_t >)
std::shared_ptr< std::array< Acir::FunctionInput, 25 > > inputs
friend bool operator==(const Keccakf1600 &, const Keccakf1600 &)
void msgpack_unpack(msgpack::object const &o)
static Keccakf1600 bincodeDeserialize(std::vector< uint8_t >)
void msgpack_pack(auto &packer) const
std::shared_ptr< std::array< Acir::Witness, 25 > > outputs
std::vector< uint8_t > bincodeSerialize() const
std::vector< uint8_t > bincodeSerialize() const
std::vector< Acir::FunctionInput > scalars
Acir::FunctionInput predicate
std::vector< Acir::FunctionInput > points
std::shared_ptr< std::array< Acir::Witness, 3 > > outputs
static MultiScalarMul bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const MultiScalarMul &, const MultiScalarMul &)
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
std::vector< Acir::Witness > outputs
std::vector< Acir::FunctionInput > inputs
static Poseidon2Permutation bincodeDeserialize(std::vector< uint8_t >)
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
friend bool operator==(const Poseidon2Permutation &, const Poseidon2Permutation &)
void msgpack_unpack(msgpack::object const &o)
friend bool operator==(const RANGE &, const RANGE &)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
static RANGE bincodeDeserialize(std::vector< uint8_t >)
Acir::FunctionInput input
std::vector< Acir::FunctionInput > verification_key
std::vector< Acir::FunctionInput > proof
Acir::FunctionInput predicate
Acir::FunctionInput key_hash
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
std::vector< Acir::FunctionInput > public_inputs
static RecursiveAggregation bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const RecursiveAggregation &, const RecursiveAggregation &)
void msgpack_unpack(msgpack::object const &o)
void msgpack_unpack(msgpack::object const &o)
static Sha256Compression bincodeDeserialize(std::vector< uint8_t >)
std::shared_ptr< std::array< Acir::FunctionInput, 8 > > hash_values
friend bool operator==(const Sha256Compression &, const Sha256Compression &)
std::shared_ptr< std::array< Acir::FunctionInput, 16 > > inputs
std::vector< uint8_t > bincodeSerialize() const
std::shared_ptr< std::array< Acir::Witness, 8 > > outputs
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
static XOR bincodeDeserialize(std::vector< uint8_t >)
void msgpack_pack(auto &packer) const
friend bool operator==(const XOR &, const XOR &)
std::vector< uint8_t > bincodeSerialize() const
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
friend bool operator==(const BlackBoxFuncCall &, const BlackBoxFuncCall &)
void msgpack_unpack(msgpack::object const &o)
std::variant< AES128Encrypt, AND, XOR, RANGE, Blake2s, Blake3, EcdsaSecp256k1, EcdsaSecp256r1, MultiScalarMul, EmbeddedCurveAdd, Keccakf1600, RecursiveAggregation, Poseidon2Permutation, Sha256Compression > value
static BlackBoxFuncCall bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
friend bool operator==(const AES128Encrypt &, const AES128Encrypt &)
static AES128Encrypt bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
static Blake2s bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const Blake2s &, const Blake2s &)
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
static Blake3 bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const Blake3 &, const Blake3 &)
Acir::MemoryAddress result
static EcdsaSecp256k1 bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
Acir::HeapArray public_key_y
Acir::HeapArray signature
Acir::HeapVector hashed_msg
friend bool operator==(const EcdsaSecp256k1 &, const EcdsaSecp256k1 &)
void msgpack_pack(auto &packer) const
Acir::HeapArray public_key_x
Acir::MemoryAddress result
Acir::HeapVector hashed_msg
void msgpack_unpack(msgpack::object const &o)
Acir::HeapArray signature
friend bool operator==(const EcdsaSecp256r1 &, const EcdsaSecp256r1 &)
void msgpack_pack(auto &packer) const
Acir::HeapArray public_key_y
std::vector< uint8_t > bincodeSerialize() const
static EcdsaSecp256r1 bincodeDeserialize(std::vector< uint8_t >)
Acir::HeapArray public_key_x
static EmbeddedCurveAdd bincodeDeserialize(std::vector< uint8_t >)
Acir::MemoryAddress input1_x
friend bool operator==(const EmbeddedCurveAdd &, const EmbeddedCurveAdd &)
Acir::MemoryAddress input2_infinite
Acir::MemoryAddress input1_y
Acir::MemoryAddress input1_infinite
Acir::MemoryAddress input2_x
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
Acir::MemoryAddress input2_y
static Keccakf1600 bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const Keccakf1600 &, const Keccakf1600 &)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const MultiScalarMul &, const MultiScalarMul &)
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
static MultiScalarMul bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
static Poseidon2Permutation bincodeDeserialize(std::vector< uint8_t >)
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
friend bool operator==(const Poseidon2Permutation &, const Poseidon2Permutation &)
friend bool operator==(const Sha256Compression &, const Sha256Compression &)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
static Sha256Compression bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
Acir::HeapArray hash_values
friend bool operator==(const ToRadix &, const ToRadix &)
Acir::MemoryAddress output_pointer
std::vector< uint8_t > bincodeSerialize() const
static ToRadix bincodeDeserialize(std::vector< uint8_t >)
Acir::MemoryAddress radix
Acir::MemoryAddress output_bits
Acir::MemoryAddress input
Acir::MemoryAddress num_limbs
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
friend bool operator==(const BlackBoxOp &, const BlackBoxOp &)
std::variant< AES128Encrypt, Blake2s, Blake3, Keccakf1600, EcdsaSecp256k1, EcdsaSecp256r1, MultiScalarMul, EmbeddedCurveAdd, Poseidon2Permutation, Sha256Compression, ToRadix > value
static BlackBoxOp bincodeDeserialize(std::vector< uint8_t >)
void msgpack_pack(auto &packer) const
friend bool operator==(const BlockId &, const BlockId &)
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
static BlockId bincodeDeserialize(std::vector< uint8_t >)
static CallData bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const CallData &, const CallData &)
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const Memory &, const Memory &)
void msgpack_pack(auto &packer) const
static Memory bincodeDeserialize(std::vector< uint8_t >)
static ReturnData bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
friend bool operator==(const ReturnData &, const ReturnData &)
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
static BlockType bincodeDeserialize(std::vector< uint8_t >)
std::variant< Memory, CallData, ReturnData > value
friend bool operator==(const BlockType &, const BlockType &)
void msgpack_pack(auto &packer) const
static BrilligBytecode bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const BrilligBytecode &, const BrilligBytecode &)
std::vector< Acir::BrilligOpcode > bytecode
std::string function_name
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
static BinaryFieldOp bincodeDeserialize(std::vector< uint8_t >)
void msgpack_pack(auto &packer) const
friend bool operator==(const BinaryFieldOp &, const BinaryFieldOp &)
Acir::MemoryAddress destination
void msgpack_unpack(msgpack::object const &o)
void msgpack_unpack(msgpack::object const &o)
Acir::MemoryAddress destination
std::vector< uint8_t > bincodeSerialize() const
static BinaryIntOp bincodeDeserialize(std::vector< uint8_t >)
void msgpack_pack(auto &packer) const
friend bool operator==(const BinaryIntOp &, const BinaryIntOp &)
Acir::IntegerBitSize bit_size
void msgpack_unpack(msgpack::object const &o)
static BlackBox bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const BlackBox &, const BlackBox &)
void msgpack_pack(auto &packer) const
void msgpack_pack(auto &packer) const
static Call bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const Call &, const Call &)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
Acir::MemoryAddress offset_address
static CalldataCopy bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const CalldataCopy &, const CalldataCopy &)
Acir::MemoryAddress destination_address
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
Acir::MemoryAddress size_address
void msgpack_unpack(msgpack::object const &o)
Acir::MemoryAddress source
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
Acir::MemoryAddress destination
std::vector< uint8_t > bincodeSerialize() const
static Cast bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const Cast &, const Cast &)
Acir::MemoryAddress source_b
static ConditionalMov bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const ConditionalMov &, const ConditionalMov &)
Acir::MemoryAddress source_a
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
Acir::MemoryAddress destination
Acir::MemoryAddress condition
static Const bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const Const &, const Const &)
std::vector< uint8_t > value
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
Acir::MemoryAddress destination
std::vector< uint8_t > bincodeSerialize() const
std::vector< Acir::HeapValueType > input_value_types
std::vector< Acir::HeapValueType > destination_value_types
static ForeignCall bincodeDeserialize(std::vector< uint8_t >)
std::vector< Acir::ValueOrArray > destinations
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const ForeignCall &, const ForeignCall &)
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
std::vector< Acir::ValueOrArray > inputs
std::vector< uint8_t > value
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
static IndirectConst bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const IndirectConst &, const IndirectConst &)
Acir::MemoryAddress destination_pointer
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
friend bool operator==(const Jump &, const Jump &)
static Jump bincodeDeserialize(std::vector< uint8_t >)
void msgpack_pack(auto &packer) const
Acir::MemoryAddress condition
static JumpIf bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const JumpIf &, const JumpIf &)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
void msgpack_unpack(msgpack::object const &o)
static Load bincodeDeserialize(std::vector< uint8_t >)
Acir::MemoryAddress destination
Acir::MemoryAddress source_pointer
friend bool operator==(const Load &, const Load &)
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
Acir::MemoryAddress destination
friend bool operator==(const Mov &, const Mov &)
void msgpack_unpack(msgpack::object const &o)
static Mov bincodeDeserialize(std::vector< uint8_t >)
Acir::MemoryAddress source
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const Not &, const Not &)
Acir::MemoryAddress source
void msgpack_pack(auto &packer) const
static Not bincodeDeserialize(std::vector< uint8_t >)
Acir::IntegerBitSize bit_size
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
Acir::MemoryAddress destination
friend bool operator==(const Return &, const Return &)
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
static Return bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const Stop &, const Stop &)
static Stop bincodeDeserialize(std::vector< uint8_t >)
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
Acir::HeapVector return_data
static Store bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const Store &, const Store &)
void msgpack_unpack(msgpack::object const &o)
Acir::MemoryAddress source
Acir::MemoryAddress destination_pointer
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
friend bool operator==(const Trap &, const Trap &)
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
Acir::HeapVector revert_data
std::vector< uint8_t > bincodeSerialize() const
static Trap bincodeDeserialize(std::vector< uint8_t >)
static BrilligOpcode bincodeDeserialize(std::vector< uint8_t >)
std::variant< BinaryFieldOp, BinaryIntOp, Not, Cast, JumpIf, Jump, CalldataCopy, Call, Const, IndirectConst, Return, ForeignCall, Mov, ConditionalMov, Load, Store, BlackBox, Trap, Stop > value
friend bool operator==(const BrilligOpcode &, const BrilligOpcode &)
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
static Array bincodeDeserialize(std::vector< uint8_t >)
void msgpack_pack(auto &packer) const
std::vector< Acir::Witness > value
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const Array &, const Array &)
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
friend bool operator==(const Simple &, const Simple &)
void msgpack_unpack(msgpack::object const &o)
static Simple bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const BrilligOutputs &, const BrilligOutputs &)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
static BrilligOutputs bincodeDeserialize(std::vector< uint8_t >)
std::variant< Simple, Array > value
Acir::PublicInputs return_values
static Circuit bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
std::vector< Acir::Opcode > opcodes
friend bool operator==(const Circuit &, const Circuit &)
void msgpack_unpack(msgpack::object const &o)
uint32_t current_witness_index
std::vector< Acir::Witness > private_parameters
Acir::PublicInputs public_parameters
std::string function_name
std::vector< std::tuple< Acir::OpcodeLocation, Acir::AssertionPayload > > assert_messages
static Expression bincodeDeserialize(std::vector< uint8_t >)
std::vector< std::tuple< std::vector< uint8_t >, Acir::Witness > > linear_combinations
std::vector< uint8_t > bincodeSerialize() const
std::vector< uint8_t > q_c
std::vector< std::tuple< std::vector< uint8_t >, Acir::Witness, Acir::Witness > > mul_terms
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
friend bool operator==(const Expression &, const Expression &)
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
static Expression bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const Expression &, const Expression &)
void msgpack_pack(auto &packer) const
friend bool operator==(const Memory &, const Memory &)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
static Memory bincodeDeserialize(std::vector< uint8_t >)
std::variant< Expression, Memory > value
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
static ExpressionOrMemory bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const ExpressionOrMemory &, const ExpressionOrMemory &)
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
friend bool operator==(const Bounded &, const Bounded &)
void msgpack_unpack(msgpack::object const &o)
static Bounded bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
static Unbounded bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const Unbounded &, const Unbounded &)
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
std::variant< Unbounded, Bounded > value
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
friend bool operator==(const ExpressionWidth &, const ExpressionWidth &)
static ExpressionWidth bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
static HeapArray bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
friend bool operator==(const HeapArray &, const HeapArray &)
Acir::MemoryAddress pointer
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
static Array bincodeDeserialize(std::vector< uint8_t >)
void msgpack_pack(auto &packer) const
friend bool operator==(const Array &, const Array &)
std::vector< Acir::HeapValueType > value_types
void msgpack_pack(auto &packer) const
friend bool operator==(const Simple &, const Simple &)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
static Simple bincodeDeserialize(std::vector< uint8_t >)
static Vector bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const Vector &, const Vector &)
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
std::vector< Acir::HeapValueType > value_types
std::vector< uint8_t > bincodeSerialize() const
static HeapValueType bincodeDeserialize(std::vector< uint8_t >)
void msgpack_pack(auto &packer) const
friend bool operator==(const HeapValueType &, const HeapValueType &)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
std::variant< Simple, Array, Vector > value
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
static HeapVector bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const HeapVector &, const HeapVector &)
std::vector< uint8_t > bincodeSerialize() const
Acir::MemoryAddress pointer
static void conv_fld_from_kvmap(std::map< std::string, msgpack::object const * > const &kvmap, std::string const &struct_name, std::string const &field_name, T &field, bool is_optional)
static std::map< std::string, msgpack::object const * > make_kvmap(msgpack::object const &o, std::string const &name)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const U128 &, const U128 &)
static U128 bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const U16 &, const U16 &)
static U16 bincodeDeserialize(std::vector< uint8_t >)
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
static U1 bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
friend bool operator==(const U1 &, const U1 &)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
friend bool operator==(const U32 &, const U32 &)
static U32 bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
static U64 bincodeDeserialize(std::vector< uint8_t >)
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
friend bool operator==(const U64 &, const U64 &)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
static U8 bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const U8 &, const U8 &)
static IntegerBitSize bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
friend bool operator==(const IntegerBitSize &, const IntegerBitSize &)
std::variant< U1, U8, U16, U32, U64, U128 > value
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const MemOp &, const MemOp &)
void msgpack_pack(auto &packer) const
static MemOp bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
Acir::Expression operation
std::vector< uint8_t > bincodeSerialize() const
static Direct bincodeDeserialize(std::vector< uint8_t >)
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const Direct &, const Direct &)
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
static Relative bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
friend bool operator==(const Relative &, const Relative &)
std::vector< uint8_t > bincodeSerialize() const
static MemoryAddress bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
friend bool operator==(const MemoryAddress &, const MemoryAddress &)
void msgpack_pack(auto &packer) const
std::variant< Direct, Relative > value
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
static AssertZero bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const AssertZero &, const AssertZero &)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
Acir::BlackBoxFuncCall value
static BlackBoxFuncCall bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const BlackBoxFuncCall &, const BlackBoxFuncCall &)
void msgpack_pack(auto &packer) const
std::optional< Acir::Expression > predicate
friend bool operator==(const BrilligCall &, const BrilligCall &)
static BrilligCall bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
std::vector< Acir::BrilligInputs > inputs
void msgpack_pack(auto &packer) const
std::vector< Acir::BrilligOutputs > outputs
void msgpack_unpack(msgpack::object const &o)
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const Call &, const Call &)
void msgpack_pack(auto &packer) const
std::vector< Acir::Witness > outputs
std::optional< Acir::Expression > predicate
std::vector< Acir::Witness > inputs
static Call bincodeDeserialize(std::vector< uint8_t >)
static MemoryInit bincodeDeserialize(std::vector< uint8_t >)
std::vector< Acir::Witness > init
std::vector< uint8_t > bincodeSerialize() const
Acir::BlockType block_type
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
friend bool operator==(const MemoryInit &, const MemoryInit &)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const MemoryOp &, const MemoryOp &)
static MemoryOp bincodeDeserialize(std::vector< uint8_t >)
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
static Opcode bincodeDeserialize(std::vector< uint8_t >)
std::variant< AssertZero, BlackBoxFuncCall, MemoryOp, MemoryInit, BrilligCall, Call > value
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const Opcode &, const Opcode &)
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
static Acir bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const Acir &, const Acir &)
void msgpack_pack(auto &packer) const
friend bool operator==(const Brillig &, const Brillig &)
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
static Brillig bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const OpcodeLocation &, const OpcodeLocation &)
void msgpack_unpack(msgpack::object const &o)
static OpcodeLocation bincodeDeserialize(std::vector< uint8_t >)
std::variant< Acir, Brillig > value
void msgpack_pack(auto &packer) const
void msgpack_pack(auto &packer) const
std::vector< Acir::Circuit > functions
friend bool operator==(const Program &, const Program &)
static Program bincodeDeserialize(std::vector< uint8_t >)
std::vector< Acir::BrilligBytecode > unconstrained_functions
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
std::vector< Acir::Circuit > functions
void msgpack_unpack(msgpack::object const &o)
static ProgramWithoutBrillig bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const ProgramWithoutBrillig &, const ProgramWithoutBrillig &)
std::vector< uint8_t > bincodeSerialize() const
static HeapArray bincodeDeserialize(std::vector< uint8_t >)
void msgpack_pack(auto &packer) const
friend bool operator==(const HeapArray &, const HeapArray &)
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
friend bool operator==(const HeapVector &, const HeapVector &)
std::vector< uint8_t > bincodeSerialize() const
static HeapVector bincodeDeserialize(std::vector< uint8_t >)
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
static MemoryAddress bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
friend bool operator==(const MemoryAddress &, const MemoryAddress &)
Acir::MemoryAddress value
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
std::variant< MemoryAddress, HeapArray, HeapVector > value
static ValueOrArray bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const ValueOrArray &, const ValueOrArray &)
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
static Witness bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const Witness &, const Witness &)
std::vector< uint8_t > bincodeSerialize() const
static T deserialize(Deserializer &deserializer)
static void serialize(const T &value, Serializer &serializer)
void throw_or_abort(std::string const &err)