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";
1183 auto name =
"BigIntAdd";
1210 auto name =
"BigIntSub";
1237 auto name =
"BigIntMul";
1264 auto name =
"BigIntDiv";
1291 auto name =
"BigIntFromLeBytes";
1316 auto name =
"BigIntToLeBytes";
1342 auto name =
"Poseidon2Permutation";
1369 auto name =
"Sha256Compression";
1400 auto name =
"ToRadix";
1424 Poseidon2Permutation,
1437 switch (
value.index()) {
1440 tag =
"AES128Encrypt";
1452 tag =
"Keccakf1600";
1456 tag =
"EcdsaSecp256k1";
1460 tag =
"EcdsaSecp256r1";
1464 tag =
"MultiScalarMul";
1468 tag =
"EmbeddedCurveAdd";
1488 tag =
"BigIntFromLeBytes";
1492 tag =
"BigIntToLeBytes";
1496 tag =
"Poseidon2Permutation";
1500 tag =
"Sha256Compression";
1514 [&packer, tag](
const auto& arg) {
1516 data[tag] = msgpack::object(arg);
1526 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
1530 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
1535 if (o.type == msgpack::type::object_type::MAP) {
1536 o.via.map.ptr[0].key.convert(tag);
1540 }
catch (
const msgpack::type_error&) {
1542 throw_or_abort(
"error converting tag to string for enum 'BlackBoxOp'");
1544 if (tag ==
"AES128Encrypt") {
1547 o.via.map.ptr[0].val.convert(v);
1548 }
catch (
const msgpack::type_error&) {
1550 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::AES128Encrypt'");
1554 }
else if (tag ==
"Blake2s") {
1557 o.via.map.ptr[0].val.convert(v);
1558 }
catch (
const msgpack::type_error&) {
1560 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::Blake2s'");
1564 }
else if (tag ==
"Blake3") {
1567 o.via.map.ptr[0].val.convert(v);
1568 }
catch (
const msgpack::type_error&) {
1570 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::Blake3'");
1574 }
else if (tag ==
"Keccakf1600") {
1577 o.via.map.ptr[0].val.convert(v);
1578 }
catch (
const msgpack::type_error&) {
1580 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::Keccakf1600'");
1584 }
else if (tag ==
"EcdsaSecp256k1") {
1587 o.via.map.ptr[0].val.convert(v);
1588 }
catch (
const msgpack::type_error&) {
1590 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::EcdsaSecp256k1'");
1594 }
else if (tag ==
"EcdsaSecp256r1") {
1597 o.via.map.ptr[0].val.convert(v);
1598 }
catch (
const msgpack::type_error&) {
1600 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::EcdsaSecp256r1'");
1604 }
else if (tag ==
"MultiScalarMul") {
1607 o.via.map.ptr[0].val.convert(v);
1608 }
catch (
const msgpack::type_error&) {
1610 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::MultiScalarMul'");
1614 }
else if (tag ==
"EmbeddedCurveAdd") {
1617 o.via.map.ptr[0].val.convert(v);
1618 }
catch (
const msgpack::type_error&) {
1620 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::EmbeddedCurveAdd'");
1624 }
else if (tag ==
"BigIntAdd") {
1627 o.via.map.ptr[0].val.convert(v);
1628 }
catch (
const msgpack::type_error&) {
1630 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::BigIntAdd'");
1634 }
else if (tag ==
"BigIntSub") {
1637 o.via.map.ptr[0].val.convert(v);
1638 }
catch (
const msgpack::type_error&) {
1640 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::BigIntSub'");
1644 }
else if (tag ==
"BigIntMul") {
1647 o.via.map.ptr[0].val.convert(v);
1648 }
catch (
const msgpack::type_error&) {
1650 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::BigIntMul'");
1654 }
else if (tag ==
"BigIntDiv") {
1657 o.via.map.ptr[0].val.convert(v);
1658 }
catch (
const msgpack::type_error&) {
1660 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::BigIntDiv'");
1664 }
else if (tag ==
"BigIntFromLeBytes") {
1667 o.via.map.ptr[0].val.convert(v);
1668 }
catch (
const msgpack::type_error&) {
1670 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::BigIntFromLeBytes'");
1674 }
else if (tag ==
"BigIntToLeBytes") {
1677 o.via.map.ptr[0].val.convert(v);
1678 }
catch (
const msgpack::type_error&) {
1680 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::BigIntToLeBytes'");
1684 }
else if (tag ==
"Poseidon2Permutation") {
1687 o.via.map.ptr[0].val.convert(v);
1688 }
catch (
const msgpack::type_error&) {
1690 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::Poseidon2Permutation'");
1694 }
else if (tag ==
"Sha256Compression") {
1697 o.via.map.ptr[0].val.convert(v);
1698 }
catch (
const msgpack::type_error&) {
1700 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::Sha256Compression'");
1704 }
else if (tag ==
"ToRadix") {
1707 o.via.map.ptr[0].val.convert(v);
1708 }
catch (
const msgpack::type_error&) {
1710 throw_or_abort(
"error converting into enum variant 'BlackBoxOp::ToRadix'");
1721struct HeapValueType;
1738 }
catch (
const msgpack::type_error&) {
1762 auto name =
"Array";
1784 auto name =
"Vector";
1800 switch (
value.index()) {
1821 [&packer, tag](
const auto& arg) {
1823 data[tag] = msgpack::object(arg);
1833 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
1837 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
1842 if (o.type == msgpack::type::object_type::MAP) {
1843 o.via.map.ptr[0].key.convert(tag);
1847 }
catch (
const msgpack::type_error&) {
1849 throw_or_abort(
"error converting tag to string for enum 'HeapValueType'");
1851 if (tag ==
"Simple") {
1854 o.via.map.ptr[0].val.convert(v);
1855 }
catch (
const msgpack::type_error&) {
1857 throw_or_abort(
"error converting into enum variant 'HeapValueType::Simple'");
1861 }
else if (tag ==
"Array") {
1864 o.via.map.ptr[0].val.convert(v);
1865 }
catch (
const msgpack::type_error&) {
1867 throw_or_abort(
"error converting into enum variant 'HeapValueType::Array'");
1871 }
else if (tag ==
"Vector") {
1874 o.via.map.ptr[0].val.convert(v);
1875 }
catch (
const msgpack::type_error&) {
1877 throw_or_abort(
"error converting into enum variant 'HeapValueType::Vector'");
1903 }
catch (
const msgpack::type_error&) {
1923 }
catch (
const msgpack::type_error&) {
1943 }
catch (
const msgpack::type_error&) {
1960 switch (
value.index()) {
1963 tag =
"MemoryAddress";
1981 [&packer, tag](
const auto& arg) {
1983 data[tag] = msgpack::object(arg);
1993 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
1997 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
2002 if (o.type == msgpack::type::object_type::MAP) {
2003 o.via.map.ptr[0].key.convert(tag);
2007 }
catch (
const msgpack::type_error&) {
2009 throw_or_abort(
"error converting tag to string for enum 'ValueOrArray'");
2011 if (tag ==
"MemoryAddress") {
2014 o.via.map.ptr[0].val.convert(v);
2015 }
catch (
const msgpack::type_error&) {
2017 throw_or_abort(
"error converting into enum variant 'ValueOrArray::MemoryAddress'");
2021 }
else if (tag ==
"HeapArray") {
2024 o.via.map.ptr[0].val.convert(v);
2025 }
catch (
const msgpack::type_error&) {
2027 throw_or_abort(
"error converting into enum variant 'ValueOrArray::HeapArray'");
2031 }
else if (tag ==
"HeapVector") {
2034 o.via.map.ptr[0].val.convert(v);
2035 }
catch (
const msgpack::type_error&) {
2037 throw_or_abort(
"error converting into enum variant 'ValueOrArray::HeapVector'");
2071 auto name =
"BinaryFieldOp";
2103 auto name =
"BinaryIntOp";
2184 auto name =
"JumpIfNot";
2208 auto name =
"JumpIf";
2255 auto name =
"CalldataCopy";
2303 auto name =
"Const";
2330 auto name =
"IndirectConst";
2370 auto name =
"ForeignCall";
2425 auto name =
"ConditionalMov";
2475 auto name =
"Store";
2495 }
catch (
const msgpack::type_error&) {
2574 switch (
value.index()) {
2577 tag =
"BinaryFieldOp";
2581 tag =
"BinaryIntOp";
2605 tag =
"CalldataCopy";
2617 tag =
"IndirectConst";
2625 tag =
"ForeignCall";
2633 tag =
"ConditionalMov";
2663 [&packer, tag](
const auto& arg) {
2665 data[tag] = msgpack::object(arg);
2675 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
2679 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
2684 if (o.type == msgpack::type::object_type::MAP) {
2685 o.via.map.ptr[0].key.convert(tag);
2689 }
catch (
const msgpack::type_error&) {
2691 throw_or_abort(
"error converting tag to string for enum 'BrilligOpcode'");
2693 if (tag ==
"BinaryFieldOp") {
2696 o.via.map.ptr[0].val.convert(v);
2697 }
catch (
const msgpack::type_error&) {
2699 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::BinaryFieldOp'");
2703 }
else if (tag ==
"BinaryIntOp") {
2706 o.via.map.ptr[0].val.convert(v);
2707 }
catch (
const msgpack::type_error&) {
2709 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::BinaryIntOp'");
2713 }
else if (tag ==
"Not") {
2716 o.via.map.ptr[0].val.convert(v);
2717 }
catch (
const msgpack::type_error&) {
2719 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::Not'");
2723 }
else if (tag ==
"Cast") {
2726 o.via.map.ptr[0].val.convert(v);
2727 }
catch (
const msgpack::type_error&) {
2729 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::Cast'");
2733 }
else if (tag ==
"JumpIfNot") {
2736 o.via.map.ptr[0].val.convert(v);
2737 }
catch (
const msgpack::type_error&) {
2739 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::JumpIfNot'");
2743 }
else if (tag ==
"JumpIf") {
2746 o.via.map.ptr[0].val.convert(v);
2747 }
catch (
const msgpack::type_error&) {
2749 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::JumpIf'");
2753 }
else if (tag ==
"Jump") {
2756 o.via.map.ptr[0].val.convert(v);
2757 }
catch (
const msgpack::type_error&) {
2759 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::Jump'");
2763 }
else if (tag ==
"CalldataCopy") {
2766 o.via.map.ptr[0].val.convert(v);
2767 }
catch (
const msgpack::type_error&) {
2769 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::CalldataCopy'");
2773 }
else if (tag ==
"Call") {
2776 o.via.map.ptr[0].val.convert(v);
2777 }
catch (
const msgpack::type_error&) {
2779 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::Call'");
2783 }
else if (tag ==
"Const") {
2786 o.via.map.ptr[0].val.convert(v);
2787 }
catch (
const msgpack::type_error&) {
2789 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::Const'");
2793 }
else if (tag ==
"IndirectConst") {
2796 o.via.map.ptr[0].val.convert(v);
2797 }
catch (
const msgpack::type_error&) {
2799 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::IndirectConst'");
2803 }
else if (tag ==
"Return") {
2806 }
else if (tag ==
"ForeignCall") {
2809 o.via.map.ptr[0].val.convert(v);
2810 }
catch (
const msgpack::type_error&) {
2812 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::ForeignCall'");
2816 }
else if (tag ==
"Mov") {
2819 o.via.map.ptr[0].val.convert(v);
2820 }
catch (
const msgpack::type_error&) {
2822 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::Mov'");
2826 }
else if (tag ==
"ConditionalMov") {
2829 o.via.map.ptr[0].val.convert(v);
2830 }
catch (
const msgpack::type_error&) {
2832 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::ConditionalMov'");
2836 }
else if (tag ==
"Load") {
2839 o.via.map.ptr[0].val.convert(v);
2840 }
catch (
const msgpack::type_error&) {
2842 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::Load'");
2846 }
else if (tag ==
"Store") {
2849 o.via.map.ptr[0].val.convert(v);
2850 }
catch (
const msgpack::type_error&) {
2852 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::Store'");
2856 }
else if (tag ==
"BlackBox") {
2859 o.via.map.ptr[0].val.convert(v);
2860 }
catch (
const msgpack::type_error&) {
2862 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::BlackBox'");
2866 }
else if (tag ==
"Trap") {
2869 o.via.map.ptr[0].val.convert(v);
2870 }
catch (
const msgpack::type_error&) {
2872 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::Trap'");
2876 }
else if (tag ==
"Stop") {
2879 o.via.map.ptr[0].val.convert(v);
2880 }
catch (
const msgpack::type_error&) {
2882 throw_or_abort(
"error converting into enum variant 'BrilligOpcode::Stop'");
2906 }
catch (
const msgpack::type_error&) {
2928 }
catch (
const msgpack::type_error&) {
2948 }
catch (
const msgpack::type_error&) {
2965 switch (
value.index()) {
2982 [&packer, tag](
const auto& arg) {
2984 data[tag] = msgpack::object(arg);
2994 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
2998 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
3003 if (o.type == msgpack::type::object_type::MAP) {
3004 o.via.map.ptr[0].key.convert(tag);
3008 }
catch (
const msgpack::type_error&) {
3010 throw_or_abort(
"error converting tag to string for enum 'ConstantOrWitnessEnum'");
3012 if (tag ==
"Constant") {
3015 o.via.map.ptr[0].val.convert(v);
3016 }
catch (
const msgpack::type_error&) {
3018 throw_or_abort(
"error converting into enum variant 'ConstantOrWitnessEnum::Constant'");
3022 }
else if (tag ==
"Witness") {
3025 o.via.map.ptr[0].val.convert(v);
3026 }
catch (
const msgpack::type_error&) {
3028 throw_or_abort(
"error converting into enum variant 'ConstantOrWitnessEnum::Witness'");
3034 throw_or_abort(
"unknown 'ConstantOrWitnessEnum' enum variant: " + tag);
3056 auto name =
"FunctionInput";
3086 auto name =
"AES128Encrypt";
3164 auto name =
"RANGE";
3187 auto name =
"Blake2s";
3211 auto name =
"Blake3";
3241 auto name =
"EcdsaSecp256k1";
3274 auto name =
"EcdsaSecp256r1";
3303 auto name =
"MultiScalarMul";
3330 auto name =
"EmbeddedCurveAdd";
3355 auto name =
"Keccakf1600";
3385 auto name =
"RecursiveAggregation";
3414 auto name =
"BigIntAdd";
3441 auto name =
"BigIntSub";
3468 auto name =
"BigIntMul";
3495 auto name =
"BigIntDiv";
3522 auto name =
"BigIntFromLeBytes";
3547 auto name =
"BigIntToLeBytes";
3573 auto name =
"Poseidon2Permutation";
3600 auto name =
"Sha256Compression";
3619 RecursiveAggregation,
3626 Poseidon2Permutation,
3638 switch (
value.index()) {
3641 tag =
"AES128Encrypt";
3665 tag =
"EcdsaSecp256k1";
3669 tag =
"EcdsaSecp256r1";
3673 tag =
"MultiScalarMul";
3677 tag =
"EmbeddedCurveAdd";
3681 tag =
"Keccakf1600";
3685 tag =
"RecursiveAggregation";
3705 tag =
"BigIntFromLeBytes";
3709 tag =
"BigIntToLeBytes";
3713 tag =
"Poseidon2Permutation";
3717 tag =
"Sha256Compression";
3727 [&packer, tag](
const auto& arg) {
3729 data[tag] = msgpack::object(arg);
3739 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
3743 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
3748 if (o.type == msgpack::type::object_type::MAP) {
3749 o.via.map.ptr[0].key.convert(tag);
3753 }
catch (
const msgpack::type_error&) {
3755 throw_or_abort(
"error converting tag to string for enum 'BlackBoxFuncCall'");
3757 if (tag ==
"AES128Encrypt") {
3760 o.via.map.ptr[0].val.convert(v);
3761 }
catch (
const msgpack::type_error&) {
3763 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::AES128Encrypt'");
3767 }
else if (tag ==
"AND") {
3770 o.via.map.ptr[0].val.convert(v);
3771 }
catch (
const msgpack::type_error&) {
3773 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::AND'");
3777 }
else if (tag ==
"XOR") {
3780 o.via.map.ptr[0].val.convert(v);
3781 }
catch (
const msgpack::type_error&) {
3783 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::XOR'");
3787 }
else if (tag ==
"RANGE") {
3790 o.via.map.ptr[0].val.convert(v);
3791 }
catch (
const msgpack::type_error&) {
3793 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::RANGE'");
3797 }
else if (tag ==
"Blake2s") {
3800 o.via.map.ptr[0].val.convert(v);
3801 }
catch (
const msgpack::type_error&) {
3803 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::Blake2s'");
3807 }
else if (tag ==
"Blake3") {
3810 o.via.map.ptr[0].val.convert(v);
3811 }
catch (
const msgpack::type_error&) {
3813 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::Blake3'");
3817 }
else if (tag ==
"EcdsaSecp256k1") {
3820 o.via.map.ptr[0].val.convert(v);
3821 }
catch (
const msgpack::type_error&) {
3823 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::EcdsaSecp256k1'");
3827 }
else if (tag ==
"EcdsaSecp256r1") {
3830 o.via.map.ptr[0].val.convert(v);
3831 }
catch (
const msgpack::type_error&) {
3833 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::EcdsaSecp256r1'");
3837 }
else if (tag ==
"MultiScalarMul") {
3840 o.via.map.ptr[0].val.convert(v);
3841 }
catch (
const msgpack::type_error&) {
3843 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::MultiScalarMul'");
3847 }
else if (tag ==
"EmbeddedCurveAdd") {
3850 o.via.map.ptr[0].val.convert(v);
3851 }
catch (
const msgpack::type_error&) {
3853 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::EmbeddedCurveAdd'");
3857 }
else if (tag ==
"Keccakf1600") {
3860 o.via.map.ptr[0].val.convert(v);
3861 }
catch (
const msgpack::type_error&) {
3863 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::Keccakf1600'");
3867 }
else if (tag ==
"RecursiveAggregation") {
3870 o.via.map.ptr[0].val.convert(v);
3871 }
catch (
const msgpack::type_error&) {
3873 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::RecursiveAggregation'");
3877 }
else if (tag ==
"BigIntAdd") {
3880 o.via.map.ptr[0].val.convert(v);
3881 }
catch (
const msgpack::type_error&) {
3883 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::BigIntAdd'");
3887 }
else if (tag ==
"BigIntSub") {
3890 o.via.map.ptr[0].val.convert(v);
3891 }
catch (
const msgpack::type_error&) {
3893 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::BigIntSub'");
3897 }
else if (tag ==
"BigIntMul") {
3900 o.via.map.ptr[0].val.convert(v);
3901 }
catch (
const msgpack::type_error&) {
3903 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::BigIntMul'");
3907 }
else if (tag ==
"BigIntDiv") {
3910 o.via.map.ptr[0].val.convert(v);
3911 }
catch (
const msgpack::type_error&) {
3913 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::BigIntDiv'");
3917 }
else if (tag ==
"BigIntFromLeBytes") {
3920 o.via.map.ptr[0].val.convert(v);
3921 }
catch (
const msgpack::type_error&) {
3923 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::BigIntFromLeBytes'");
3927 }
else if (tag ==
"BigIntToLeBytes") {
3930 o.via.map.ptr[0].val.convert(v);
3931 }
catch (
const msgpack::type_error&) {
3933 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::BigIntToLeBytes'");
3937 }
else if (tag ==
"Poseidon2Permutation") {
3940 o.via.map.ptr[0].val.convert(v);
3941 }
catch (
const msgpack::type_error&) {
3943 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::Poseidon2Permutation'");
3947 }
else if (tag ==
"Sha256Compression") {
3950 o.via.map.ptr[0].val.convert(v);
3951 }
catch (
const msgpack::type_error&) {
3953 throw_or_abort(
"error converting into enum variant 'BlackBoxFuncCall::Sha256Compression'");
3959 throw_or_abort(
"unknown 'BlackBoxFuncCall' enum variant: " + tag);
3977 }
catch (
const msgpack::type_error&) {
4008 }
catch (
const msgpack::type_error&) {
4034 switch (
value.index()) {
4055 [&packer, tag](
const auto& arg) {
4057 data[tag] = msgpack::object(arg);
4067 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
4071 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
4076 if (o.type == msgpack::type::object_type::MAP) {
4077 o.via.map.ptr[0].key.convert(tag);
4081 }
catch (
const msgpack::type_error&) {
4083 throw_or_abort(
"error converting tag to string for enum 'BlockType'");
4085 if (tag ==
"Memory") {
4088 }
else if (tag ==
"CallData") {
4091 o.via.map.ptr[0].val.convert(v);
4092 }
catch (
const msgpack::type_error&) {
4094 throw_or_abort(
"error converting into enum variant 'BlockType::CallData'");
4098 }
else if (tag ==
"ReturnData") {
4127 auto name =
"Expression";
4150 }
catch (
const msgpack::type_error&) {
4170 }
catch (
const msgpack::type_error&) {
4190 }
catch (
const msgpack::type_error&) {
4207 switch (
value.index()) {
4218 tag =
"MemoryArray";
4228 [&packer, tag](
const auto& arg) {
4230 data[tag] = msgpack::object(arg);
4240 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
4244 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
4249 if (o.type == msgpack::type::object_type::MAP) {
4250 o.via.map.ptr[0].key.convert(tag);
4254 }
catch (
const msgpack::type_error&) {
4256 throw_or_abort(
"error converting tag to string for enum 'BrilligInputs'");
4258 if (tag ==
"Single") {
4261 o.via.map.ptr[0].val.convert(v);
4262 }
catch (
const msgpack::type_error&) {
4264 throw_or_abort(
"error converting into enum variant 'BrilligInputs::Single'");
4268 }
else if (tag ==
"Array") {
4271 o.via.map.ptr[0].val.convert(v);
4272 }
catch (
const msgpack::type_error&) {
4274 throw_or_abort(
"error converting into enum variant 'BrilligInputs::Array'");
4278 }
else if (tag ==
"MemoryArray") {
4281 o.via.map.ptr[0].val.convert(v);
4282 }
catch (
const msgpack::type_error&) {
4284 throw_or_abort(
"error converting into enum variant 'BrilligInputs::MemoryArray'");
4310 }
catch (
const msgpack::type_error&) {
4330 }
catch (
const msgpack::type_error&) {
4347 switch (
value.index()) {
4364 [&packer, tag](
const auto& arg) {
4366 data[tag] = msgpack::object(arg);
4376 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
4380 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
4385 if (o.type == msgpack::type::object_type::MAP) {
4386 o.via.map.ptr[0].key.convert(tag);
4390 }
catch (
const msgpack::type_error&) {
4392 throw_or_abort(
"error converting tag to string for enum 'BrilligOutputs'");
4394 if (tag ==
"Simple") {
4397 o.via.map.ptr[0].val.convert(v);
4398 }
catch (
const msgpack::type_error&) {
4400 throw_or_abort(
"error converting into enum variant 'BrilligOutputs::Simple'");
4404 }
else if (tag ==
"Array") {
4407 o.via.map.ptr[0].val.convert(v);
4408 }
catch (
const msgpack::type_error&) {
4410 throw_or_abort(
"error converting into enum variant 'BrilligOutputs::Array'");
4440 auto name =
"MemOp";
4463 }
catch (
const msgpack::type_error&) {
4483 }
catch (
const msgpack::type_error&) {
4485 throw_or_abort(
"error converting into newtype 'BlackBoxFuncCall'");
4509 auto name =
"MemoryOp";
4536 auto name =
"MemoryInit";
4565 auto name =
"BrilligCall";
4614 switch (
value.index()) {
4621 tag =
"BlackBoxFuncCall";
4633 tag =
"BrilligCall";
4647 [&packer, tag](
const auto& arg) {
4649 data[tag] = msgpack::object(arg);
4659 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
4663 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
4668 if (o.type == msgpack::type::object_type::MAP) {
4669 o.via.map.ptr[0].key.convert(tag);
4673 }
catch (
const msgpack::type_error&) {
4675 throw_or_abort(
"error converting tag to string for enum 'Opcode'");
4677 if (tag ==
"AssertZero") {
4680 o.via.map.ptr[0].val.convert(v);
4681 }
catch (
const msgpack::type_error&) {
4683 throw_or_abort(
"error converting into enum variant 'Opcode::AssertZero'");
4687 }
else if (tag ==
"BlackBoxFuncCall") {
4690 o.via.map.ptr[0].val.convert(v);
4691 }
catch (
const msgpack::type_error&) {
4693 throw_or_abort(
"error converting into enum variant 'Opcode::BlackBoxFuncCall'");
4697 }
else if (tag ==
"MemoryOp") {
4700 o.via.map.ptr[0].val.convert(v);
4701 }
catch (
const msgpack::type_error&) {
4703 throw_or_abort(
"error converting into enum variant 'Opcode::MemoryOp'");
4707 }
else if (tag ==
"MemoryInit") {
4710 o.via.map.ptr[0].val.convert(v);
4711 }
catch (
const msgpack::type_error&) {
4713 throw_or_abort(
"error converting into enum variant 'Opcode::MemoryInit'");
4717 }
else if (tag ==
"BrilligCall") {
4720 o.via.map.ptr[0].val.convert(v);
4721 }
catch (
const msgpack::type_error&) {
4723 throw_or_abort(
"error converting into enum variant 'Opcode::BrilligCall'");
4727 }
else if (tag ==
"Call") {
4730 o.via.map.ptr[0].val.convert(v);
4731 }
catch (
const msgpack::type_error&) {
4733 throw_or_abort(
"error converting into enum variant 'Opcode::Call'");
4759 }
catch (
const msgpack::type_error&) {
4779 }
catch (
const msgpack::type_error&) {
4796 switch (
value.index()) {
4813 [&packer, tag](
const auto& arg) {
4815 data[tag] = msgpack::object(arg);
4825 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
4829 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
4834 if (o.type == msgpack::type::object_type::MAP) {
4835 o.via.map.ptr[0].key.convert(tag);
4839 }
catch (
const msgpack::type_error&) {
4841 throw_or_abort(
"error converting tag to string for enum 'ExpressionOrMemory'");
4843 if (tag ==
"Expression") {
4846 o.via.map.ptr[0].val.convert(v);
4847 }
catch (
const msgpack::type_error&) {
4849 throw_or_abort(
"error converting into enum variant 'ExpressionOrMemory::Expression'");
4853 }
else if (tag ==
"Memory") {
4856 o.via.map.ptr[0].val.convert(v);
4857 }
catch (
const msgpack::type_error&) {
4859 throw_or_abort(
"error converting into enum variant 'ExpressionOrMemory::Memory'");
4865 throw_or_abort(
"unknown 'ExpressionOrMemory' enum variant: " + tag);
4887 auto name =
"AssertionPayload";
4920 auto name =
"Bounded";
4936 switch (
value.index()) {
4953 [&packer, tag](
const auto& arg) {
4955 data[tag] = msgpack::object(arg);
4965 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
4969 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
4974 if (o.type == msgpack::type::object_type::MAP) {
4975 o.via.map.ptr[0].key.convert(tag);
4979 }
catch (
const msgpack::type_error&) {
4981 throw_or_abort(
"error converting tag to string for enum 'ExpressionWidth'");
4983 if (tag ==
"Unbounded") {
4986 }
else if (tag ==
"Bounded") {
4989 o.via.map.ptr[0].val.convert(v);
4990 }
catch (
const msgpack::type_error&) {
4992 throw_or_abort(
"error converting into enum variant 'ExpressionWidth::Bounded'");
4998 throw_or_abort(
"unknown 'ExpressionWidth' enum variant: " + tag);
5018 }
catch (
const msgpack::type_error&) {
5042 auto name =
"Brillig";
5059 switch (
value.index()) {
5076 [&packer, tag](
const auto& arg) {
5078 data[tag] = msgpack::object(arg);
5088 if (o.type != msgpack::type::object_type::MAP && o.type != msgpack::type::object_type::STR) {
5092 if (o.type == msgpack::type::object_type::MAP && o.via.map.size != 1) {
5097 if (o.type == msgpack::type::object_type::MAP) {
5098 o.via.map.ptr[0].key.convert(tag);
5102 }
catch (
const msgpack::type_error&) {
5104 throw_or_abort(
"error converting tag to string for enum 'OpcodeLocation'");
5106 if (tag ==
"Acir") {
5109 o.via.map.ptr[0].val.convert(v);
5110 }
catch (
const msgpack::type_error&) {
5112 throw_or_abort(
"error converting into enum variant 'OpcodeLocation::Acir'");
5116 }
else if (tag ==
"Brillig") {
5119 o.via.map.ptr[0].val.convert(v);
5120 }
catch (
const msgpack::type_error&) {
5122 throw_or_abort(
"error converting into enum variant 'OpcodeLocation::Brillig'");
5146 }
catch (
const msgpack::type_error&) {
5180 auto name =
"Circuit";
5207 auto name =
"BrilligBytecode";
5230 auto name =
"Program";
5252 auto name =
"ProgramWithoutBrillig";
5282 const size_t input_size = input.size();
5285 if (deserializer.get_buffer_offset() < input_size) {
5294template <
typename Serializer>
5297 serializer.increase_container_depth();
5300 serializer.decrease_container_depth();
5304template <
typename Deserializer>
5307 deserializer.increase_container_depth();
5311 deserializer.decrease_container_depth();
5336 if (deserializer.get_buffer_offset() < input.size()) {
5345template <
typename Serializer>
5348 serializer.increase_container_depth();
5350 serializer.decrease_container_depth();
5354template <
typename Deserializer>
5357 deserializer.increase_container_depth();
5360 deserializer.decrease_container_depth();
5382 if (deserializer.get_buffer_offset() < input.size()) {
5391template <
typename Serializer>
5393 Serializer& serializer)
5397template <
typename Deserializer>
5422 if (deserializer.get_buffer_offset() < input.size()) {
5431template <
typename Serializer>
5433 Serializer& serializer)
5437template <
typename Deserializer>
5462 if (deserializer.get_buffer_offset() < input.size()) {
5471template <
typename Serializer>
5473 Serializer& serializer)
5477template <
typename Deserializer>
5502 if (deserializer.get_buffer_offset() < input.size()) {
5511template <
typename Serializer>
5513 Serializer& serializer)
5517template <
typename Deserializer>
5542 if (deserializer.get_buffer_offset() < input.size()) {
5551template <
typename Serializer>
5553 Serializer& serializer)
5557template <
typename Deserializer>
5559 Deserializer& deserializer)
5583 if (deserializer.get_buffer_offset() < input.size()) {
5592template <
typename Serializer>
5594 Serializer& serializer)
5598template <
typename Deserializer>
5623 if (deserializer.get_buffer_offset() < input.size()) {
5632template <
typename Serializer>
5634 Serializer& serializer)
5638template <
typename Deserializer>
5640 Deserializer& deserializer)
5664 if (deserializer.get_buffer_offset() < input.size()) {
5673template <
typename Serializer>
5675 Serializer& serializer)
5679template <
typename Deserializer>
5681 Deserializer& deserializer)
5708 if (deserializer.get_buffer_offset() < input.size()) {
5717template <
typename Serializer>
5720 serializer.increase_container_depth();
5722 serializer.decrease_container_depth();
5726template <
typename Deserializer>
5729 deserializer.increase_container_depth();
5732 deserializer.decrease_container_depth();
5754 if (deserializer.get_buffer_offset() < input.size()) {
5763template <
typename Serializer>
5768template <
typename Deserializer>
5793 if (deserializer.get_buffer_offset() < input.size()) {
5802template <
typename Serializer>
5807template <
typename Deserializer>
5832 if (deserializer.get_buffer_offset() < input.size()) {
5841template <
typename Serializer>
5846template <
typename Deserializer>
5871 if (deserializer.get_buffer_offset() < input.size()) {
5880template <
typename Serializer>
5885template <
typename Deserializer>
5910 if (deserializer.get_buffer_offset() < input.size()) {
5919template <
typename Serializer>
5921 Serializer& serializer)
5925template <
typename Deserializer>
5950 if (deserializer.get_buffer_offset() < input.size()) {
5959template <
typename Serializer>
5961 Serializer& serializer)
5965template <
typename Deserializer>
5990 if (deserializer.get_buffer_offset() < input.size()) {
5999template <
typename Serializer>
6001 Serializer& serializer)
6005template <
typename Deserializer>
6007 Deserializer& deserializer)
6031 if (deserializer.get_buffer_offset() < input.size()) {
6040template <
typename Serializer>
6045template <
typename Deserializer>
6070 if (deserializer.get_buffer_offset() < input.size()) {
6079template <
typename Serializer>
6084template <
typename Deserializer>
6109 if (deserializer.get_buffer_offset() < input.size()) {
6118template <
typename Serializer>
6123template <
typename Deserializer>
6148 if (deserializer.get_buffer_offset() < input.size()) {
6157template <
typename Serializer>
6162template <
typename Deserializer>
6187 if (deserializer.get_buffer_offset() < input.size()) {
6196template <
typename Serializer>
6201template <
typename Deserializer>
6229 if (deserializer.get_buffer_offset() < input.size()) {
6238template <
typename Serializer>
6241 serializer.increase_container_depth();
6243 serializer.decrease_container_depth();
6247template <
typename Deserializer>
6250 deserializer.increase_container_depth();
6253 deserializer.decrease_container_depth();
6275 if (deserializer.get_buffer_offset() < input.size()) {
6284template <
typename Serializer>
6289template <
typename Deserializer>
6317 if (deserializer.get_buffer_offset() < input.size()) {
6326template <
typename Serializer>
6333template <
typename Deserializer>
6362 if (deserializer.get_buffer_offset() < input.size()) {
6371template <
typename Serializer>
6374 serializer.increase_container_depth();
6376 serializer.decrease_container_depth();
6380template <
typename Deserializer>
6383 deserializer.increase_container_depth();
6386 deserializer.decrease_container_depth();
6397 if (!(lhs.
iv == rhs.
iv)) {
6400 if (!(lhs.
key == rhs.
key)) {
6420 if (deserializer.get_buffer_offset() < input.size()) {
6429template <
typename Serializer>
6440template <
typename Deserializer>
6442 Deserializer& deserializer)
6456 if (!(lhs.
lhs == rhs.
lhs)) {
6459 if (!(lhs.
rhs == rhs.
rhs)) {
6479 if (deserializer.get_buffer_offset() < input.size()) {
6488template <
typename Serializer>
6490 Serializer& serializer)
6498template <
typename Deserializer>
6512 if (!(lhs.
lhs == rhs.
lhs)) {
6515 if (!(lhs.
rhs == rhs.
rhs)) {
6535 if (deserializer.get_buffer_offset() < input.size()) {
6544template <
typename Serializer>
6546 Serializer& serializer)
6554template <
typename Deserializer>
6585 if (deserializer.get_buffer_offset() < input.size()) {
6594template <
typename Serializer>
6596 Serializer& serializer)
6602template <
typename Deserializer>
6604 Deserializer& deserializer)
6635 if (deserializer.get_buffer_offset() < input.size()) {
6644template <
typename Serializer>
6646 Serializer& serializer)
6653template <
typename Deserializer>
6655 Deserializer& deserializer)
6687 if (deserializer.get_buffer_offset() < input.size()) {
6696template <
typename Serializer>
6698 Serializer& serializer)
6705template <
typename Deserializer>
6707 Deserializer& deserializer)
6748 if (deserializer.get_buffer_offset() < input.size()) {
6757template <
typename Serializer>
6769template <
typename Deserializer>
6771 Deserializer& deserializer)
6815 if (deserializer.get_buffer_offset() < input.size()) {
6824template <
typename Serializer>
6836template <
typename Deserializer>
6838 Deserializer& deserializer)
6876 if (deserializer.get_buffer_offset() < input.size()) {
6885template <
typename Serializer>
6895template <
typename Deserializer>
6897 Deserializer& deserializer)
6930 std::vector<uint8_t> input)
6934 if (deserializer.get_buffer_offset() < input.size()) {
6943template <
typename Serializer>
6953template <
typename Deserializer>
6955 Deserializer& deserializer)
6988 if (deserializer.get_buffer_offset() < input.size()) {
6997template <
typename Serializer>
6999 Serializer& serializer)
7006template <
typename Deserializer>
7008 Deserializer& deserializer)
7047 std::vector<uint8_t> input)
7051 if (deserializer.get_buffer_offset() < input.size()) {
7060template <
typename Serializer>
7072template <
typename Deserializer>
7089 if (!(lhs.
lhs == rhs.
lhs)) {
7092 if (!(lhs.
rhs == rhs.
rhs)) {
7112 if (deserializer.get_buffer_offset() < input.size()) {
7121template <
typename Serializer>
7123 Serializer& serializer)
7131template <
typename Deserializer>
7133 Deserializer& deserializer)
7146 if (!(lhs.
lhs == rhs.
lhs)) {
7149 if (!(lhs.
rhs == rhs.
rhs)) {
7169 if (deserializer.get_buffer_offset() < input.size()) {
7178template <
typename Serializer>
7180 Serializer& serializer)
7188template <
typename Deserializer>
7190 Deserializer& deserializer)
7203 if (!(lhs.
lhs == rhs.
lhs)) {
7206 if (!(lhs.
rhs == rhs.
rhs)) {
7226 if (deserializer.get_buffer_offset() < input.size()) {
7235template <
typename Serializer>
7237 Serializer& serializer)
7245template <
typename Deserializer>
7247 Deserializer& deserializer)
7260 if (!(lhs.
lhs == rhs.
lhs)) {
7263 if (!(lhs.
rhs == rhs.
rhs)) {
7283 if (deserializer.get_buffer_offset() < input.size()) {
7292template <
typename Serializer>
7294 Serializer& serializer)
7302template <
typename Deserializer>
7304 Deserializer& deserializer)
7337 std::vector<uint8_t> input)
7341 if (deserializer.get_buffer_offset() < input.size()) {
7350template <
typename Serializer>
7360template <
typename Deserializer>
7362 Deserializer& deserializer)
7392 std::vector<uint8_t> input)
7396 if (deserializer.get_buffer_offset() < input.size()) {
7405template <
typename Serializer>
7414template <
typename Deserializer>
7416 Deserializer& deserializer)
7435 if (!(lhs.
len == rhs.
len)) {
7449 std::vector<uint8_t> input)
7453 if (deserializer.get_buffer_offset() < input.size()) {
7462template <
typename Serializer>
7472template <
typename Deserializer>
7507 std::vector<uint8_t> input)
7511 if (deserializer.get_buffer_offset() < input.size()) {
7520template <
typename Serializer>
7530template <
typename Deserializer>
7532 Deserializer& deserializer)
7562 if (deserializer.get_buffer_offset() < input.size()) {
7571template <
typename Serializer>
7574 serializer.increase_container_depth();
7576 serializer.decrease_container_depth();
7580template <
typename Deserializer>
7583 deserializer.increase_container_depth();
7586 deserializer.decrease_container_depth();
7597 if (!(lhs.
iv == rhs.
iv)) {
7600 if (!(lhs.
key == rhs.
key)) {
7620 if (deserializer.get_buffer_offset() < input.size()) {
7629template <
typename Serializer>
7631 Serializer& serializer)
7640template <
typename Deserializer>
7642 Deserializer& deserializer)
7676 if (deserializer.get_buffer_offset() < input.size()) {
7685template <
typename Serializer>
7687 Serializer& serializer)
7694template <
typename Deserializer>
7727 if (deserializer.get_buffer_offset() < input.size()) {
7736template <
typename Serializer>
7738 Serializer& serializer)
7745template <
typename Deserializer>
7778 if (deserializer.get_buffer_offset() < input.size()) {
7787template <
typename Serializer>
7789 Serializer& serializer)
7796template <
typename Deserializer>
7798 Deserializer& deserializer)
7839 if (deserializer.get_buffer_offset() < input.size()) {
7848template <
typename Serializer>
7850 Serializer& serializer)
7860template <
typename Deserializer>
7862 Deserializer& deserializer)
7906 if (deserializer.get_buffer_offset() < input.size()) {
7915template <
typename Serializer>
7917 Serializer& serializer)
7927template <
typename Deserializer>
7929 Deserializer& deserializer)
7967 if (deserializer.get_buffer_offset() < input.size()) {
7976template <
typename Serializer>
7978 Serializer& serializer)
7986template <
typename Deserializer>
7988 Deserializer& deserializer)
8036 if (deserializer.get_buffer_offset() < input.size()) {
8045template <
typename Serializer>
8047 Serializer& serializer)
8059template <
typename Deserializer>
8061 Deserializer& deserializer)
8078 if (!(lhs.
lhs == rhs.
lhs)) {
8081 if (!(lhs.
rhs == rhs.
rhs)) {
8101 if (deserializer.get_buffer_offset() < input.size()) {
8110template <
typename Serializer>
8112 Serializer& serializer)
8120template <
typename Deserializer>
8134 if (!(lhs.
lhs == rhs.
lhs)) {
8137 if (!(lhs.
rhs == rhs.
rhs)) {
8157 if (deserializer.get_buffer_offset() < input.size()) {
8166template <
typename Serializer>
8168 Serializer& serializer)
8176template <
typename Deserializer>
8190 if (!(lhs.
lhs == rhs.
lhs)) {
8193 if (!(lhs.
rhs == rhs.
rhs)) {
8213 if (deserializer.get_buffer_offset() < input.size()) {
8222template <
typename Serializer>
8224 Serializer& serializer)
8232template <
typename Deserializer>
8246 if (!(lhs.
lhs == rhs.
lhs)) {
8249 if (!(lhs.
rhs == rhs.
rhs)) {
8269 if (deserializer.get_buffer_offset() < input.size()) {
8278template <
typename Serializer>
8280 Serializer& serializer)
8288template <
typename Deserializer>
8325 if (deserializer.get_buffer_offset() < input.size()) {
8334template <
typename Serializer>
8336 Serializer& serializer)
8344template <
typename Deserializer>
8346 Deserializer& deserializer)
8379 if (deserializer.get_buffer_offset() < input.size()) {
8388template <
typename Serializer>
8390 Serializer& serializer)
8397template <
typename Deserializer>
8399 Deserializer& deserializer)
8417 if (!(lhs.
len == rhs.
len)) {
8434 if (deserializer.get_buffer_offset() < input.size()) {
8443template <
typename Serializer>
8453template <
typename Deserializer>
8455 Deserializer& deserializer)
8491 if (deserializer.get_buffer_offset() < input.size()) {
8500template <
typename Serializer>
8502 Serializer& serializer)
8510template <
typename Deserializer>
8512 Deserializer& deserializer)
8554 if (deserializer.get_buffer_offset() < input.size()) {
8563template <
typename Serializer>
8565 Serializer& serializer)
8575template <
typename Deserializer>
8608 if (deserializer.get_buffer_offset() < input.size()) {
8617template <
typename Serializer>
8620 serializer.increase_container_depth();
8622 serializer.decrease_container_depth();
8626template <
typename Deserializer>
8629 deserializer.increase_container_depth();
8632 deserializer.decrease_container_depth();
8657 if (deserializer.get_buffer_offset() < input.size()) {
8666template <
typename Serializer>
8669 serializer.increase_container_depth();
8671 serializer.decrease_container_depth();
8675template <
typename Deserializer>
8678 deserializer.increase_container_depth();
8681 deserializer.decrease_container_depth();
8703 if (deserializer.get_buffer_offset() < input.size()) {
8712template <
typename Serializer>
8717template <
typename Deserializer>
8745 if (deserializer.get_buffer_offset() < input.size()) {
8754template <
typename Serializer>
8756 Serializer& serializer)
8762template <
typename Deserializer>
8788 if (deserializer.get_buffer_offset() < input.size()) {
8797template <
typename Serializer>
8799 Serializer& serializer)
8803template <
typename Deserializer>
8831 if (deserializer.get_buffer_offset() < input.size()) {
8840template <
typename Serializer>
8843 serializer.increase_container_depth();
8845 serializer.decrease_container_depth();
8849template <
typename Deserializer>
8852 deserializer.increase_container_depth();
8855 deserializer.decrease_container_depth();
8880 if (deserializer.get_buffer_offset() < input.size()) {
8889template <
typename Serializer>
8892 serializer.increase_container_depth();
8894 serializer.decrease_container_depth();
8898template <
typename Deserializer>
8901 deserializer.increase_container_depth();
8904 deserializer.decrease_container_depth();
8929 if (deserializer.get_buffer_offset() < input.size()) {
8938template <
typename Serializer>
8940 Serializer& serializer)
8946template <
typename Deserializer>
8975 if (deserializer.get_buffer_offset() < input.size()) {
8984template <
typename Serializer>
8986 Serializer& serializer)
8992template <
typename Deserializer>
9021 if (deserializer.get_buffer_offset() < input.size()) {
9030template <
typename Serializer>
9032 Serializer& serializer)
9038template <
typename Deserializer>
9040 Deserializer& deserializer)
9068 if (deserializer.get_buffer_offset() < input.size()) {
9077template <
typename Serializer>
9080 serializer.increase_container_depth();
9082 serializer.decrease_container_depth();
9086template <
typename Deserializer>
9089 deserializer.increase_container_depth();
9092 deserializer.decrease_container_depth();
9103 if (!(lhs.
op == rhs.
op)) {
9106 if (!(lhs.
lhs == rhs.
lhs)) {
9109 if (!(lhs.
rhs == rhs.
rhs)) {
9126 if (deserializer.get_buffer_offset() < input.size()) {
9135template <
typename Serializer>
9137 Serializer& serializer)
9146template <
typename Deserializer>
9148 Deserializer& deserializer)
9165 if (!(lhs.
op == rhs.
op)) {
9171 if (!(lhs.
lhs == rhs.
lhs)) {
9174 if (!(lhs.
rhs == rhs.
rhs)) {
9191 if (deserializer.get_buffer_offset() < input.size()) {
9200template <
typename Serializer>
9202 Serializer& serializer)
9212template <
typename Deserializer>
9214 Deserializer& deserializer)
9252 if (deserializer.get_buffer_offset() < input.size()) {
9261template <
typename Serializer>
9263 Serializer& serializer)
9271template <
typename Deserializer>
9308 if (deserializer.get_buffer_offset() < input.size()) {
9317template <
typename Serializer>
9319 Serializer& serializer)
9327template <
typename Deserializer>
9361 if (deserializer.get_buffer_offset() < input.size()) {
9370template <
typename Serializer>
9372 Serializer& serializer)
9379template <
typename Deserializer>
9381 Deserializer& deserializer)
9413 if (deserializer.get_buffer_offset() < input.size()) {
9422template <
typename Serializer>
9424 Serializer& serializer)
9431template <
typename Deserializer>
9461 if (deserializer.get_buffer_offset() < input.size()) {
9470template <
typename Serializer>
9472 Serializer& serializer)
9478template <
typename Deserializer>
9513 if (deserializer.get_buffer_offset() < input.size()) {
9522template <
typename Serializer>
9524 Serializer& serializer)
9532template <
typename Deserializer>
9534 Deserializer& deserializer)
9564 if (deserializer.get_buffer_offset() < input.size()) {
9573template <
typename Serializer>
9575 Serializer& serializer)
9581template <
typename Deserializer>
9616 if (deserializer.get_buffer_offset() < input.size()) {
9625template <
typename Serializer>
9627 Serializer& serializer)
9635template <
typename Deserializer>
9672 if (deserializer.get_buffer_offset() < input.size()) {
9681template <
typename Serializer>
9683 Serializer& serializer)
9691template <
typename Deserializer>
9693 Deserializer& deserializer)
9720 if (deserializer.get_buffer_offset() < input.size()) {
9729template <
typename Serializer>
9731 Serializer& serializer)
9735template <
typename Deserializer>
9775 if (deserializer.get_buffer_offset() < input.size()) {
9784template <
typename Serializer>
9786 Serializer& serializer)
9796template <
typename Deserializer>
9798 Deserializer& deserializer)
9834 if (deserializer.get_buffer_offset() < input.size()) {
9843template <
typename Serializer>
9845 Serializer& serializer)
9852template <
typename Deserializer>
9891 if (deserializer.get_buffer_offset() < input.size()) {
9900template <
typename Serializer>
9902 Serializer& serializer)
9911template <
typename Deserializer>
9913 Deserializer& deserializer)
9947 if (deserializer.get_buffer_offset() < input.size()) {
9956template <
typename Serializer>
9958 Serializer& serializer)
9965template <
typename Deserializer>
9987inline std::vector<uint8_t> BrilligOpcode::Store::bincodeSerialize()
const
9998 if (deserializer.get_buffer_offset() < input.size()) {
10007template <
typename Serializer>
10009 Serializer& serializer)
10016template <
typename Deserializer>
10046 if (deserializer.get_buffer_offset() < input.size()) {
10055template <
typename Serializer>
10057 Serializer& serializer)
10063template <
typename Deserializer>
10065 Deserializer& deserializer)
10093 if (deserializer.get_buffer_offset() < input.size()) {
10102template <
typename Serializer>
10104 Serializer& serializer)
10110template <
typename Deserializer>
10139 if (deserializer.get_buffer_offset() < input.size()) {
10148template <
typename Serializer>
10150 Serializer& serializer)
10156template <
typename Deserializer>
10185 if (deserializer.get_buffer_offset() < input.size()) {
10194template <
typename Serializer>
10197 serializer.increase_container_depth();
10199 serializer.decrease_container_depth();
10203template <
typename Deserializer>
10206 deserializer.increase_container_depth();
10209 deserializer.decrease_container_depth();
10234 if (deserializer.get_buffer_offset() < input.size()) {
10243template <
typename Serializer>
10245 Serializer& serializer)
10251template <
typename Deserializer>
10253 Deserializer& deserializer)
10281 if (deserializer.get_buffer_offset() < input.size()) {
10290template <
typename Serializer>
10292 Serializer& serializer)
10298template <
typename Deserializer>
10345 if (deserializer.get_buffer_offset() < input.size()) {
10354template <
typename Serializer>
10357 serializer.increase_container_depth();
10365 serializer.decrease_container_depth();
10369template <
typename Deserializer>
10372 deserializer.increase_container_depth();
10381 deserializer.decrease_container_depth();
10406 if (deserializer.get_buffer_offset() < input.size()) {
10415template <
typename Serializer>
10417 Serializer& serializer)
10419 serializer.increase_container_depth();
10421 serializer.decrease_container_depth();
10425template <
typename Deserializer>
10428 deserializer.increase_container_depth();
10431 deserializer.decrease_container_depth();
10456 if (deserializer.get_buffer_offset() < input.size()) {
10465template <
typename Serializer>
10473template <
typename Deserializer>
10475 Deserializer& deserializer)
10503 if (deserializer.get_buffer_offset() < input.size()) {
10512template <
typename Serializer>
10520template <
typename Deserializer>
10522 Deserializer& deserializer)
10539 if (!(lhs.
q_c == rhs.
q_c)) {
10556 if (deserializer.get_buffer_offset() < input.size()) {
10565template <
typename Serializer>
10568 serializer.increase_container_depth();
10572 serializer.decrease_container_depth();
10576template <
typename Deserializer>
10579 deserializer.increase_container_depth();
10584 deserializer.decrease_container_depth();
10609 if (deserializer.get_buffer_offset() < input.size()) {
10618template <
typename Serializer>
10620 Serializer& serializer)
10622 serializer.increase_container_depth();
10624 serializer.decrease_container_depth();
10628template <
typename Deserializer>
10631 deserializer.increase_container_depth();
10634 deserializer.decrease_container_depth();
10659 if (deserializer.get_buffer_offset() < input.size()) {
10668template <
typename Serializer>
10676template <
typename Deserializer>
10678 Deserializer& deserializer)
10706 if (deserializer.get_buffer_offset() < input.size()) {
10715template <
typename Serializer>
10717 Serializer& serializer)
10723template <
typename Deserializer>
10725 Deserializer& deserializer)
10753 if (deserializer.get_buffer_offset() < input.size()) {
10762template <
typename Serializer>
10765 serializer.increase_container_depth();
10767 serializer.decrease_container_depth();
10771template <
typename Deserializer>
10774 deserializer.increase_container_depth();
10777 deserializer.decrease_container_depth();
10799 if (deserializer.get_buffer_offset() < input.size()) {
10808template <
typename Serializer>
10810 Serializer& serializer)
10814template <
typename Deserializer>
10816 Deserializer& deserializer)
10843 if (deserializer.get_buffer_offset() < input.size()) {
10852template <
typename Serializer>
10854 Serializer& serializer)
10860template <
typename Deserializer>
10862 Deserializer& deserializer)
10893 if (deserializer.get_buffer_offset() <
input.size()) {
10902template <
typename Serializer>
10905 serializer.increase_container_depth();
10908 serializer.decrease_container_depth();
10912template <
typename Deserializer>
10915 deserializer.increase_container_depth();
10919 deserializer.decrease_container_depth();
10947 if (deserializer.get_buffer_offset() < input.size()) {
10956template <
typename Serializer>
10959 serializer.increase_container_depth();
10962 serializer.decrease_container_depth();
10966template <
typename Deserializer>
10969 deserializer.increase_container_depth();
10973 deserializer.decrease_container_depth();
10998 if (deserializer.get_buffer_offset() < input.size()) {
11007template <
typename Serializer>
11010 serializer.increase_container_depth();
11012 serializer.decrease_container_depth();
11016template <
typename Deserializer>
11019 deserializer.increase_container_depth();
11022 deserializer.decrease_container_depth();
11047 if (deserializer.get_buffer_offset() < input.size()) {
11056template <
typename Serializer>
11058 Serializer& serializer)
11064template <
typename Deserializer>
11096 if (deserializer.get_buffer_offset() < input.size()) {
11105template <
typename Serializer>
11107 Serializer& serializer)
11114template <
typename Deserializer>
11144 if (deserializer.get_buffer_offset() < input.size()) {
11153template <
typename Serializer>
11155 Serializer& serializer)
11161template <
typename Deserializer>
11193 if (deserializer.get_buffer_offset() < input.size()) {
11202template <
typename Serializer>
11205 serializer.increase_container_depth();
11208 serializer.decrease_container_depth();
11212template <
typename Deserializer>
11215 deserializer.increase_container_depth();
11219 deserializer.decrease_container_depth();
11244 if (deserializer.get_buffer_offset() < input.size()) {
11253template <
typename Serializer>
11256 serializer.increase_container_depth();
11258 serializer.decrease_container_depth();
11262template <
typename Deserializer>
11265 deserializer.increase_container_depth();
11268 deserializer.decrease_container_depth();
11290 if (deserializer.get_buffer_offset() < input.size()) {
11299template <
typename Serializer>
11301 Serializer& serializer)
11305template <
typename Deserializer>
11330 if (deserializer.get_buffer_offset() < input.size()) {
11339template <
typename Serializer>
11341 Serializer& serializer)
11345template <
typename Deserializer>
11370 if (deserializer.get_buffer_offset() < input.size()) {
11379template <
typename Serializer>
11381 Serializer& serializer)
11385template <
typename Deserializer>
11410 if (deserializer.get_buffer_offset() < input.size()) {
11419template <
typename Serializer>
11421 Serializer& serializer)
11425template <
typename Deserializer>
11450 if (deserializer.get_buffer_offset() < input.size()) {
11459template <
typename Serializer>
11461 Serializer& serializer)
11465template <
typename Deserializer>
11490 if (deserializer.get_buffer_offset() < input.size()) {
11499template <
typename Serializer>
11501 Serializer& serializer)
11505template <
typename Deserializer>
11539 if (deserializer.get_buffer_offset() < input.size()) {
11548template <
typename Serializer>
11551 serializer.increase_container_depth();
11555 serializer.decrease_container_depth();
11559template <
typename Deserializer>
11562 deserializer.increase_container_depth();
11567 deserializer.decrease_container_depth();
11592 if (deserializer.get_buffer_offset() < input.size()) {
11601template <
typename Serializer>
11604 serializer.increase_container_depth();
11606 serializer.decrease_container_depth();
11610template <
typename Deserializer>
11613 deserializer.increase_container_depth();
11616 deserializer.decrease_container_depth();
11641 if (deserializer.get_buffer_offset() < input.size()) {
11650template <
typename Serializer>
11652 Serializer& serializer)
11658template <
typename Deserializer>
11687 if (deserializer.get_buffer_offset() < input.size()) {
11696template <
typename Serializer>
11698 Serializer& serializer)
11704template <
typename Deserializer>
11706 Deserializer& deserializer)
11734 if (deserializer.get_buffer_offset() < input.size()) {
11743template <
typename Serializer>
11746 serializer.increase_container_depth();
11748 serializer.decrease_container_depth();
11752template <
typename Deserializer>
11755 deserializer.increase_container_depth();
11758 deserializer.decrease_container_depth();
11783 if (deserializer.get_buffer_offset() < input.size()) {
11792template <
typename Serializer>
11794 Serializer& serializer)
11800template <
typename Deserializer>
11829 if (deserializer.get_buffer_offset() < input.size()) {
11838template <
typename Serializer>
11840 Serializer& serializer)
11846template <
typename Deserializer>
11848 Deserializer& deserializer)
11862 if (!(lhs.
op == rhs.
op)) {
11882 if (deserializer.get_buffer_offset() < input.size()) {
11891template <
typename Serializer>
11900template <
typename Deserializer>
11937 if (deserializer.get_buffer_offset() < input.size()) {
11946template <
typename Serializer>
11948 Serializer& serializer)
11956template <
typename Deserializer>
11970 if (!(lhs.
id == rhs.
id)) {
11996 if (deserializer.get_buffer_offset() < input.size()) {
12005template <
typename Serializer>
12007 Serializer& serializer)
12016template <
typename Deserializer>
12031 if (!(lhs.
id == rhs.
id)) {
12057 if (deserializer.get_buffer_offset() < input.size()) {
12066template <
typename Serializer>
12076template <
typename Deserializer>
12108 if (deserializer.get_buffer_offset() < input.size()) {
12117template <
typename Serializer>
12120 serializer.increase_container_depth();
12122 serializer.decrease_container_depth();
12126template <
typename Deserializer>
12129 deserializer.increase_container_depth();
12132 deserializer.decrease_container_depth();
12157 if (deserializer.get_buffer_offset() < input.size()) {
12166template <
typename Serializer>
12168 Serializer& serializer)
12174template <
typename Deserializer>
12206 if (deserializer.get_buffer_offset() < input.size()) {
12215template <
typename Serializer>
12217 Serializer& serializer)
12224template <
typename Deserializer>
12226 Deserializer& deserializer)
12258 if (deserializer.get_buffer_offset() < input.size()) {
12267template <
typename Serializer>
12270 serializer.increase_container_depth();
12273 serializer.decrease_container_depth();
12277template <
typename Deserializer>
12280 deserializer.increase_container_depth();
12285 deserializer.decrease_container_depth();
12310 if (deserializer.get_buffer_offset() < input.size()) {
12319template <
typename Serializer>
12321 Serializer& serializer)
12323 serializer.increase_container_depth();
12325 serializer.decrease_container_depth();
12329template <
typename Deserializer>
12332 deserializer.increase_container_depth();
12335 deserializer.decrease_container_depth();
12360 if (deserializer.get_buffer_offset() < input.size()) {
12369template <
typename Serializer>
12372 serializer.increase_container_depth();
12374 serializer.decrease_container_depth();
12378template <
typename Deserializer>
12381 deserializer.increase_container_depth();
12384 deserializer.decrease_container_depth();
12409 if (deserializer.get_buffer_offset() < input.size()) {
12418template <
typename Serializer>
12421 serializer.increase_container_depth();
12423 serializer.decrease_container_depth();
12427template <
typename Deserializer>
12430 deserializer.increase_container_depth();
12433 deserializer.decrease_container_depth();
12458 if (deserializer.get_buffer_offset() < input.size()) {
12467template <
typename Serializer>
12469 Serializer& serializer)
12475template <
typename Deserializer>
12477 Deserializer& deserializer)
12505 if (deserializer.get_buffer_offset() < input.size()) {
12514template <
typename Serializer>
12516 Serializer& serializer)
12522template <
typename Deserializer>
12524 Deserializer& deserializer)
12552 if (deserializer.get_buffer_offset() < input.size()) {
12561template <
typename Serializer>
12563 Serializer& serializer)
12569template <
typename Deserializer>
12571 Deserializer& deserializer)
12599 if (deserializer.get_buffer_offset() < input.size()) {
12608template <
typename Serializer>
12611 serializer.increase_container_depth();
12613 serializer.decrease_container_depth();
12617template <
typename Deserializer>
12620 deserializer.increase_container_depth();
12623 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
void msgpack_pack(auto &packer) const
friend bool operator==(const BigIntAdd &, const BigIntAdd &)
void msgpack_unpack(msgpack::object const &o)
std::vector< uint8_t > bincodeSerialize() const
static BigIntAdd bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const BigIntDiv &, const BigIntDiv &)
static BigIntDiv bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
static BigIntFromLeBytes bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const BigIntFromLeBytes &, const BigIntFromLeBytes &)
std::vector< Acir::FunctionInput > inputs
void msgpack_pack(auto &packer) const
std::vector< uint8_t > modulus
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
static BigIntMul bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const BigIntMul &, const BigIntMul &)
friend bool operator==(const BigIntSub &, const BigIntSub &)
std::vector< uint8_t > bincodeSerialize() const
static BigIntSub 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)
static BigIntToLeBytes bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
std::vector< Acir::Witness > outputs
friend bool operator==(const BigIntToLeBytes &, const BigIntToLeBytes &)
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
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
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
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
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 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
std::variant< AES128Encrypt, AND, XOR, RANGE, Blake2s, Blake3, EcdsaSecp256k1, EcdsaSecp256r1, MultiScalarMul, EmbeddedCurveAdd, Keccakf1600, RecursiveAggregation, BigIntAdd, BigIntSub, BigIntMul, BigIntDiv, BigIntFromLeBytes, BigIntToLeBytes, Poseidon2Permutation, Sha256Compression > value
void msgpack_pack(auto &packer) const
friend bool operator==(const BlackBoxFuncCall &, const BlackBoxFuncCall &)
void msgpack_unpack(msgpack::object const &o)
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
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const BigIntAdd &, const BigIntAdd &)
static BigIntAdd bincodeDeserialize(std::vector< uint8_t >)
Acir::MemoryAddress output
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
static BigIntDiv bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
Acir::MemoryAddress output
friend bool operator==(const BigIntDiv &, const BigIntDiv &)
std::vector< uint8_t > bincodeSerialize() const
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
static BigIntFromLeBytes bincodeDeserialize(std::vector< uint8_t >)
Acir::MemoryAddress output
friend bool operator==(const BigIntFromLeBytes &, const BigIntFromLeBytes &)
void msgpack_unpack(msgpack::object const &o)
Acir::MemoryAddress output
void msgpack_unpack(msgpack::object const &o)
friend bool operator==(const BigIntMul &, const BigIntMul &)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_pack(auto &packer) const
static BigIntMul bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const BigIntSub &, const BigIntSub &)
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
Acir::MemoryAddress output
static BigIntSub bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
Acir::MemoryAddress input
void msgpack_pack(auto &packer) const
void msgpack_unpack(msgpack::object const &o)
static BigIntToLeBytes bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const BigIntToLeBytes &, const BigIntToLeBytes &)
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 &)
static BlackBoxOp bincodeDeserialize(std::vector< uint8_t >)
std::variant< AES128Encrypt, Blake2s, Blake3, Keccakf1600, EcdsaSecp256k1, EcdsaSecp256r1, MultiScalarMul, EmbeddedCurveAdd, BigIntAdd, BigIntSub, BigIntMul, BigIntDiv, BigIntFromLeBytes, BigIntToLeBytes, Poseidon2Permutation, Sha256Compression, ToRadix > value
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
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 &)
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 > 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)
Acir::MemoryAddress condition
void msgpack_pack(auto &packer) const
static JumpIfNot bincodeDeserialize(std::vector< uint8_t >)
void msgpack_unpack(msgpack::object const &o)
friend bool operator==(const JumpIfNot &, const JumpIfNot &)
std::vector< uint8_t > bincodeSerialize() const
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 >)
friend bool operator==(const BrilligOpcode &, const BrilligOpcode &)
void msgpack_pack(auto &packer) const
std::vector< uint8_t > bincodeSerialize() const
std::variant< BinaryFieldOp, BinaryIntOp, Not, Cast, JumpIfNot, JumpIf, Jump, CalldataCopy, Call, Const, IndirectConst, Return, ForeignCall, Mov, ConditionalMov, Load, Store, BlackBox, Trap, Stop > value
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 &)
Acir::ExpressionWidth expression_width
void msgpack_unpack(msgpack::object const &o)
uint32_t current_witness_index
std::vector< Acir::Witness > private_parameters
Acir::PublicInputs public_parameters
std::vector< std::tuple< Acir::OpcodeLocation, Acir::AssertionPayload > > assert_messages
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
static Constant bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const Constant &, const Constant &)
void msgpack_pack(auto &packer) const
static Witness bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
friend bool operator==(const Witness &, const Witness &)
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
std::variant< Constant, Witness > value
void msgpack_pack(auto &packer) const
static ConstantOrWitnessEnum bincodeDeserialize(std::vector< uint8_t >)
friend bool operator==(const ConstantOrWitnessEnum &, const ConstantOrWitnessEnum &)
std::vector< std::tuple< std::string, Acir::Witness, Acir::Witness > > mul_terms
static Expression bincodeDeserialize(std::vector< uint8_t >)
std::vector< uint8_t > bincodeSerialize() const
void msgpack_unpack(msgpack::object const &o)
void msgpack_pack(auto &packer) const
std::vector< std::tuple< std::string, Acir::Witness > > linear_combinations
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
std::optional< Acir::Expression > predicate
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)