Commit ba5c0d67 authored by Kenton Varda's avatar Kenton Varda

Merge branch 'master' of github.com:kentonv/capnproto

parents 9fa79341 b2d752be
......@@ -41,12 +41,20 @@
namespace capnp {
namespace benchmark {
// Use a 128-bit Xorshift algorithm.
static inline uint32_t nextFastRand() {
static constexpr uint32_t A = 1664525;
static constexpr uint32_t C = 1013904223;
static uint32_t state = C;
state = A * state + C;
return state;
// These values are arbitrary. Any seed other than all zeroes is OK.
static uint32_t x = 0x1d2acd47;
static uint32_t y = 0x58ca3e14;
static uint32_t z = 0xf563f232;
static uint32_t w = 0x0bc76199;
uint32_t tmp = x ^ (x << 11);
x = y;
y = z;
z = w;
w = w ^ (w >> 19) ^ tmp ^ (tmp >> 8);
return w;
}
static inline uint32_t fastRand(uint32_t range) {
......
......@@ -243,7 +243,7 @@ public:
"If a file specified for compilation starts with <prefix>, remove "
"the prefix for the purpose of deciding the names of output files. "
"For example, the following command:\n"
" capnp --src-prefix=foo/bar -oc++:corge foo/bar/baz/qux.capnp\n"
" capnp compile --src-prefix=foo/bar -oc++:corge foo/bar/baz/qux.capnp\n"
"would generate the files corge/baz/qux.capnp.{h,c++}.")
.expectOneOrMoreArgs("<source>", KJ_BIND_METHOD(*this, addSource))
.callAfterParsing(KJ_BIND_METHOD(*this, generateOutput));
......
......@@ -96,6 +96,7 @@ struct ValueExpression {
negativeInt @2 :UInt64;
float @3 :Float64;
string @4 :Text;
binary @10 :Data;
name @5 :DeclName;
list @6 :List(ValueExpression);
struct @7 :List(FieldAssignment);
......
......@@ -5,24 +5,22 @@
namespace capnp {
namespace schemas {
static const ::capnp::_::AlignedData<62> b_e75816b56529d464 = {
static const ::capnp::_::AlignedData<60> b_e75816b56529d464 = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
100, 212, 41, 101, 181, 22, 88, 231,
29, 0, 0, 0, 1, 0, 1, 0,
14, 0, 0, 0, 1, 0, 1, 0,
198, 195, 187, 220, 104, 225, 107, 197,
1, 0, 7, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 74, 1, 0, 0,
37, 0, 0, 0, 7, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
33, 0, 0, 0, 175, 0, 0, 0,
17, 0, 0, 0, 210, 0, 0, 0,
29, 0, 0, 0, 7, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 76, 111, 99,
97, 116, 101, 100, 84, 101, 120, 116,
25, 0, 0, 0, 175, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 76, 111,
99, 97, 116, 101, 100, 84, 101, 120,
116, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0, 1, 0,
12, 0, 0, 0, 3, 0, 4, 0,
0, 0, 0, 0, 0, 0, 0, 0,
......@@ -72,27 +70,25 @@ static const ::capnp::_::AlignedData<62> b_e75816b56529d464 = {
static const uint16_t m_e75816b56529d464[] = {2, 1, 0};
static const uint16_t i_e75816b56529d464[] = {0, 1, 2};
const ::capnp::_::RawSchema s_e75816b56529d464 = {
0xe75816b56529d464, b_e75816b56529d464.words, 62, nullptr, m_e75816b56529d464,
0xe75816b56529d464, b_e75816b56529d464.words, 60, nullptr, m_e75816b56529d464,
0, 3, i_e75816b56529d464, nullptr, nullptr
};
static const ::capnp::_::AlignedData<62> b_991c7a3693d62cf2 = {
static const ::capnp::_::AlignedData<60> b_991c7a3693d62cf2 = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
242, 44, 214, 147, 54, 122, 28, 153,
29, 0, 0, 0, 1, 0, 2, 0,
14, 0, 0, 0, 1, 0, 2, 0,
198, 195, 187, 220, 104, 225, 107, 197,
0, 0, 7, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 98, 1, 0, 0,
37, 0, 0, 0, 7, 0, 0, 0,
17, 0, 0, 0, 234, 0, 0, 0,
29, 0, 0, 0, 7, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
33, 0, 0, 0, 175, 0, 0, 0,
25, 0, 0, 0, 175, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 76, 111, 99,
97, 116, 101, 100, 73, 110, 116, 101,
103, 101, 114, 0, 0, 0, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 76, 111,
99, 97, 116, 101, 100, 73, 110, 116,
101, 103, 101, 114, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0, 1, 0,
12, 0, 0, 0, 3, 0, 4, 0,
0, 0, 0, 0, 0, 0, 0, 0,
......@@ -142,27 +138,25 @@ static const ::capnp::_::AlignedData<62> b_991c7a3693d62cf2 = {
static const uint16_t m_991c7a3693d62cf2[] = {2, 1, 0};
static const uint16_t i_991c7a3693d62cf2[] = {0, 1, 2};
const ::capnp::_::RawSchema s_991c7a3693d62cf2 = {
0x991c7a3693d62cf2, b_991c7a3693d62cf2.words, 62, nullptr, m_991c7a3693d62cf2,
0x991c7a3693d62cf2, b_991c7a3693d62cf2.words, 60, nullptr, m_991c7a3693d62cf2,
0, 3, i_991c7a3693d62cf2, nullptr, nullptr
};
static const ::capnp::_::AlignedData<62> b_90f2a60678fd2367 = {
static const ::capnp::_::AlignedData<60> b_90f2a60678fd2367 = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
103, 35, 253, 120, 6, 166, 242, 144,
29, 0, 0, 0, 1, 0, 2, 0,
14, 0, 0, 0, 1, 0, 2, 0,
198, 195, 187, 220, 104, 225, 107, 197,
0, 0, 7, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 82, 1, 0, 0,
37, 0, 0, 0, 7, 0, 0, 0,
17, 0, 0, 0, 218, 0, 0, 0,
29, 0, 0, 0, 7, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
33, 0, 0, 0, 175, 0, 0, 0,
25, 0, 0, 0, 175, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 76, 111, 99,
97, 116, 101, 100, 70, 108, 111, 97,
116, 0, 0, 0, 0, 0, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 76, 111,
99, 97, 116, 101, 100, 70, 108, 111,
97, 116, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0, 1, 0,
12, 0, 0, 0, 3, 0, 4, 0,
0, 0, 0, 0, 0, 0, 0, 0,
......@@ -212,26 +206,24 @@ static const ::capnp::_::AlignedData<62> b_90f2a60678fd2367 = {
static const uint16_t m_90f2a60678fd2367[] = {2, 1, 0};
static const uint16_t i_90f2a60678fd2367[] = {0, 1, 2};
const ::capnp::_::RawSchema s_90f2a60678fd2367 = {
0x90f2a60678fd2367, b_90f2a60678fd2367.words, 62, nullptr, m_90f2a60678fd2367,
0x90f2a60678fd2367, b_90f2a60678fd2367.words, 60, nullptr, m_90f2a60678fd2367,
0, 3, i_90f2a60678fd2367, nullptr, nullptr
};
static const ::capnp::_::AlignedData<73> b_ce5c2afd239fe34e = {
static const ::capnp::_::AlignedData<71> b_ce5c2afd239fe34e = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
78, 227, 159, 35, 253, 42, 92, 206,
29, 0, 0, 0, 1, 0, 2, 0,
14, 0, 0, 0, 1, 0, 2, 0,
198, 195, 187, 220, 104, 225, 107, 197,
2, 0, 7, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 50, 1, 0, 0,
33, 0, 0, 0, 7, 0, 0, 0,
17, 0, 0, 0, 186, 0, 0, 0,
25, 0, 0, 0, 7, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
29, 0, 0, 0, 231, 0, 0, 0,
21, 0, 0, 0, 231, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 68, 101, 99,
108, 78, 97, 109, 101, 0, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 68, 101,
99, 108, 78, 97, 109, 101, 0, 0,
0, 0, 0, 0, 1, 0, 1, 0,
16, 0, 0, 0, 3, 0, 4, 0,
0, 0, 0, 0, 0, 0, 0, 0,
......@@ -297,27 +289,25 @@ static const ::capnp::_::RawSchema* const d_ce5c2afd239fe34e[] = {
static const uint16_t m_ce5c2afd239fe34e[] = {0, 3, 1, 2};
static const uint16_t i_ce5c2afd239fe34e[] = {0, 1, 2, 3};
const ::capnp::_::RawSchema s_ce5c2afd239fe34e = {
0xce5c2afd239fe34e, b_ce5c2afd239fe34e.words, 73, d_ce5c2afd239fe34e, m_ce5c2afd239fe34e,
0xce5c2afd239fe34e, b_ce5c2afd239fe34e.words, 71, d_ce5c2afd239fe34e, m_ce5c2afd239fe34e,
2, 4, i_ce5c2afd239fe34e, nullptr, nullptr
};
static const ::capnp::_::AlignedData<63> b_c42df56830922111 = {
static const ::capnp::_::AlignedData<61> b_c42df56830922111 = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
17, 33, 146, 48, 104, 245, 45, 196,
38, 0, 0, 0, 1, 0, 2, 0,
23, 0, 0, 0, 1, 0, 2, 0,
78, 227, 159, 35, 253, 42, 92, 206,
2, 0, 7, 0, 1, 0, 3, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 90, 1, 0, 0,
17, 0, 0, 0, 226, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
29, 0, 0, 0, 175, 0, 0, 0,
21, 0, 0, 0, 175, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 68, 101, 99,
108, 78, 97, 109, 101, 46, 98, 97,
115, 101, 0, 0, 0, 0, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 68, 101,
99, 108, 78, 97, 109, 101, 46, 98,
97, 115, 101, 0, 0, 0, 0, 0,
12, 0, 0, 0, 3, 0, 4, 0,
0, 0, 255, 255, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0, 0, 0,
......@@ -372,27 +362,25 @@ static const ::capnp::_::RawSchema* const d_c42df56830922111[] = {
static const uint16_t m_c42df56830922111[] = {0, 2, 1};
static const uint16_t i_c42df56830922111[] = {0, 1, 2};
const ::capnp::_::RawSchema s_c42df56830922111 = {
0xc42df56830922111, b_c42df56830922111.words, 63, d_c42df56830922111, m_c42df56830922111,
0xc42df56830922111, b_c42df56830922111.words, 61, d_c42df56830922111, m_c42df56830922111,
2, 3, i_c42df56830922111, nullptr, nullptr
};
static const ::capnp::_::AlignedData<79> b_8751968764a2e298 = {
static const ::capnp::_::AlignedData<77> b_8751968764a2e298 = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
152, 226, 162, 100, 135, 150, 81, 135,
29, 0, 0, 0, 1, 0, 1, 0,
14, 0, 0, 0, 1, 0, 1, 0,
198, 195, 187, 220, 104, 225, 107, 197,
2, 0, 7, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 98, 1, 0, 0,
37, 0, 0, 0, 7, 0, 0, 0,
17, 0, 0, 0, 234, 0, 0, 0,
29, 0, 0, 0, 7, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
33, 0, 0, 0, 231, 0, 0, 0,
25, 0, 0, 0, 231, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 84, 121, 112,
101, 69, 120, 112, 114, 101, 115, 115,
105, 111, 110, 0, 0, 0, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 84, 121,
112, 101, 69, 120, 112, 114, 101, 115,
115, 105, 111, 110, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0, 1, 0,
16, 0, 0, 0, 3, 0, 4, 0,
0, 0, 0, 0, 0, 0, 0, 0,
......@@ -463,103 +451,108 @@ static const ::capnp::_::RawSchema* const d_8751968764a2e298[] = {
static const uint16_t m_8751968764a2e298[] = {3, 0, 1, 2};
static const uint16_t i_8751968764a2e298[] = {0, 1, 2, 3};
const ::capnp::_::RawSchema s_8751968764a2e298 = {
0x8751968764a2e298, b_8751968764a2e298.words, 79, d_8751968764a2e298, m_8751968764a2e298,
0x8751968764a2e298, b_8751968764a2e298.words, 77, d_8751968764a2e298, m_8751968764a2e298,
2, 4, i_8751968764a2e298, nullptr, nullptr
};
static const ::capnp::_::AlignedData<172> b_9ca8b2acb16fc545 = {
static const ::capnp::_::AlignedData<184> b_9ca8b2acb16fc545 = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
69, 197, 111, 177, 172, 178, 168, 156,
29, 0, 0, 0, 1, 0, 3, 0,
14, 0, 0, 0, 1, 0, 3, 0,
198, 195, 187, 220, 104, 225, 107, 197,
1, 0, 7, 0, 0, 0, 8, 0,
1, 0, 7, 0, 0, 0, 9, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 106, 1, 0, 0,
37, 0, 0, 0, 23, 0, 0, 0,
17, 0, 0, 0, 242, 0, 0, 0,
29, 0, 0, 0, 23, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
49, 0, 0, 0, 55, 2, 0, 0,
41, 0, 0, 0, 111, 2, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 86, 97, 108,
117, 101, 69, 120, 112, 114, 101, 115,
115, 105, 111, 110, 0, 0, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 86, 97,
108, 117, 101, 69, 120, 112, 114, 101,
115, 115, 105, 111, 110, 0, 0, 0,
4, 0, 0, 0, 1, 0, 1, 0,
14, 186, 127, 178, 248, 124, 181, 182,
1, 0, 0, 0, 130, 0, 0, 0,
70, 105, 101, 108, 100, 65, 115, 115,
105, 103, 110, 109, 101, 110, 116, 0,
40, 0, 0, 0, 3, 0, 4, 0,
44, 0, 0, 0, 3, 0, 4, 0,
0, 0, 255, 255, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
9, 1, 0, 0, 66, 0, 0, 0,
37, 1, 0, 0, 66, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
4, 1, 0, 0, 2, 0, 1, 0,
12, 1, 0, 0, 2, 0, 1, 0,
32, 1, 0, 0, 2, 0, 1, 0,
40, 1, 0, 0, 2, 0, 1, 0,
1, 0, 254, 255, 1, 0, 0, 0,
0, 0, 1, 0, 1, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
9, 1, 0, 0, 98, 0, 0, 0,
37, 1, 0, 0, 98, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
8, 1, 0, 0, 2, 0, 1, 0,
16, 1, 0, 0, 2, 0, 1, 0,
36, 1, 0, 0, 2, 0, 1, 0,
44, 1, 0, 0, 2, 0, 1, 0,
2, 0, 253, 255, 1, 0, 0, 0,
0, 0, 1, 0, 2, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
13, 1, 0, 0, 98, 0, 0, 0,
41, 1, 0, 0, 98, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
12, 1, 0, 0, 2, 0, 1, 0,
20, 1, 0, 0, 2, 0, 1, 0,
40, 1, 0, 0, 2, 0, 1, 0,
48, 1, 0, 0, 2, 0, 1, 0,
3, 0, 252, 255, 1, 0, 0, 0,
0, 0, 1, 0, 3, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 1, 0, 0, 50, 0, 0, 0,
45, 1, 0, 0, 50, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
12, 1, 0, 0, 2, 0, 1, 0,
20, 1, 0, 0, 2, 0, 1, 0,
40, 1, 0, 0, 2, 0, 1, 0,
48, 1, 0, 0, 2, 0, 1, 0,
4, 0, 251, 255, 0, 0, 0, 0,
0, 0, 1, 0, 4, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 1, 0, 0, 58, 0, 0, 0,
45, 1, 0, 0, 58, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
12, 1, 0, 0, 2, 0, 1, 0,
20, 1, 0, 0, 2, 0, 1, 0,
5, 0, 250, 255, 0, 0, 0, 0,
40, 1, 0, 0, 2, 0, 1, 0,
48, 1, 0, 0, 2, 0, 1, 0,
6, 0, 250, 255, 0, 0, 0, 0,
0, 0, 1, 0, 5, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 1, 0, 0, 42, 0, 0, 0,
45, 1, 0, 0, 42, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
12, 1, 0, 0, 2, 0, 1, 0,
20, 1, 0, 0, 2, 0, 1, 0,
6, 0, 249, 255, 0, 0, 0, 0,
40, 1, 0, 0, 2, 0, 1, 0,
48, 1, 0, 0, 2, 0, 1, 0,
7, 0, 249, 255, 0, 0, 0, 0,
0, 0, 1, 0, 6, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 1, 0, 0, 42, 0, 0, 0,
45, 1, 0, 0, 42, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
12, 1, 0, 0, 2, 0, 1, 0,
32, 1, 0, 0, 2, 0, 1, 0,
7, 0, 248, 255, 0, 0, 0, 0,
40, 1, 0, 0, 2, 0, 1, 0,
60, 1, 0, 0, 2, 0, 1, 0,
8, 0, 248, 255, 0, 0, 0, 0,
0, 0, 1, 0, 7, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
29, 1, 0, 0, 58, 0, 0, 0,
57, 1, 0, 0, 58, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
24, 1, 0, 0, 2, 0, 1, 0,
44, 1, 0, 0, 2, 0, 1, 0,
8, 0, 0, 0, 1, 0, 0, 0,
52, 1, 0, 0, 2, 0, 1, 0,
72, 1, 0, 0, 2, 0, 1, 0,
9, 0, 0, 0, 1, 0, 0, 0,
0, 0, 1, 0, 8, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
41, 1, 0, 0, 82, 0, 0, 0,
69, 1, 0, 0, 82, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
40, 1, 0, 0, 2, 0, 1, 0,
48, 1, 0, 0, 2, 0, 1, 0,
9, 0, 0, 0, 4, 0, 0, 0,
68, 1, 0, 0, 2, 0, 1, 0,
76, 1, 0, 0, 2, 0, 1, 0,
10, 0, 0, 0, 4, 0, 0, 0,
0, 0, 1, 0, 9, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
45, 1, 0, 0, 66, 0, 0, 0,
73, 1, 0, 0, 66, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
40, 1, 0, 0, 2, 0, 1, 0,
48, 1, 0, 0, 2, 0, 1, 0,
68, 1, 0, 0, 2, 0, 1, 0,
76, 1, 0, 0, 2, 0, 1, 0,
5, 0, 247, 255, 0, 0, 0, 0,
0, 0, 1, 0, 10, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
73, 1, 0, 0, 58, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
68, 1, 0, 0, 2, 0, 1, 0,
76, 1, 0, 0, 2, 0, 1, 0,
117, 110, 107, 110, 111, 119, 110, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
......@@ -637,6 +630,13 @@ static const ::capnp::_::AlignedData<172> b_9ca8b2acb16fc545 = {
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
8, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
98, 105, 110, 97, 114, 121, 0, 0,
13, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
13, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, }
};
......@@ -645,32 +645,30 @@ static const ::capnp::_::RawSchema* const d_9ca8b2acb16fc545[] = {
&s_b6b57cf8b27fba0e,
&s_ce5c2afd239fe34e,
};
static const uint16_t m_9ca8b2acb16fc545[] = {9, 3, 6, 5, 2, 1, 8, 4, 7, 0};
static const uint16_t i_9ca8b2acb16fc545[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
static const uint16_t m_9ca8b2acb16fc545[] = {10, 9, 3, 6, 5, 2, 1, 8, 4, 7, 0};
static const uint16_t i_9ca8b2acb16fc545[] = {0, 1, 2, 3, 4, 5, 6, 7, 10, 8, 9};
const ::capnp::_::RawSchema s_9ca8b2acb16fc545 = {
0x9ca8b2acb16fc545, b_9ca8b2acb16fc545.words, 172, d_9ca8b2acb16fc545, m_9ca8b2acb16fc545,
3, 10, i_9ca8b2acb16fc545, nullptr, nullptr
0x9ca8b2acb16fc545, b_9ca8b2acb16fc545.words, 184, d_9ca8b2acb16fc545, m_9ca8b2acb16fc545,
3, 11, i_9ca8b2acb16fc545, nullptr, nullptr
};
static const ::capnp::_::AlignedData<50> b_b6b57cf8b27fba0e = {
static const ::capnp::_::AlignedData<48> b_b6b57cf8b27fba0e = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
14, 186, 127, 178, 248, 124, 181, 182,
45, 0, 0, 0, 1, 0, 0, 0,
30, 0, 0, 0, 1, 0, 0, 0,
69, 197, 111, 177, 172, 178, 168, 156,
2, 0, 7, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 234, 1, 0, 0,
45, 0, 0, 0, 7, 0, 0, 0,
17, 0, 0, 0, 114, 1, 0, 0,
37, 0, 0, 0, 7, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
41, 0, 0, 0, 119, 0, 0, 0,
33, 0, 0, 0, 119, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 86, 97, 108,
117, 101, 69, 120, 112, 114, 101, 115,
115, 105, 111, 110, 46, 70, 105, 101,
108, 100, 65, 115, 115, 105, 103, 110,
109, 101, 110, 116, 0, 0, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 86, 97,
108, 117, 101, 69, 120, 112, 114, 101,
115, 115, 105, 111, 110, 46, 70, 105,
101, 108, 100, 65, 115, 115, 105, 103,
110, 109, 101, 110, 116, 0, 0, 0,
0, 0, 0, 0, 1, 0, 1, 0,
8, 0, 0, 0, 3, 0, 4, 0,
0, 0, 0, 0, 0, 0, 0, 0,
......@@ -710,27 +708,25 @@ static const ::capnp::_::RawSchema* const d_b6b57cf8b27fba0e[] = {
static const uint16_t m_b6b57cf8b27fba0e[] = {0, 1};
static const uint16_t i_b6b57cf8b27fba0e[] = {0, 1};
const ::capnp::_::RawSchema s_b6b57cf8b27fba0e = {
0xb6b57cf8b27fba0e, b_b6b57cf8b27fba0e.words, 50, d_b6b57cf8b27fba0e, m_b6b57cf8b27fba0e,
0xb6b57cf8b27fba0e, b_b6b57cf8b27fba0e.words, 48, d_b6b57cf8b27fba0e, m_b6b57cf8b27fba0e,
2, 2, i_b6b57cf8b27fba0e, nullptr, nullptr
};
static const ::capnp::_::AlignedData<553> b_96efe787c17e83bb = {
static const ::capnp::_::AlignedData<551> b_96efe787c17e83bb = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
187, 131, 126, 193, 135, 231, 239, 150,
29, 0, 0, 0, 1, 0, 2, 0,
14, 0, 0, 0, 1, 0, 2, 0,
198, 195, 187, 220, 104, 225, 107, 197,
7, 0, 7, 0, 0, 0, 31, 0,
1, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 74, 1, 0, 0,
37, 0, 0, 0, 55, 0, 0, 0,
17, 0, 0, 0, 210, 0, 0, 0,
29, 0, 0, 0, 55, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
81, 0, 0, 0, 87, 8, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 68, 101, 99,
108, 97, 114, 97, 116, 105, 111, 110,
73, 0, 0, 0, 87, 8, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 68, 101,
99, 108, 97, 114, 97, 116, 105, 111,
110, 0, 0, 0, 0, 0, 0, 0,
12, 0, 0, 0, 1, 0, 1, 0,
144, 98, 130, 115, 212, 137, 4, 208,
17, 0, 0, 0, 178, 0, 0, 0,
......@@ -1284,29 +1280,27 @@ static const ::capnp::_::RawSchema* const d_96efe787c17e83bb[] = {
static const uint16_t m_96efe787c17e83bb[] = {18, 3, 37, 22, 34, 31, 32, 24, 25, 26, 23, 35, 36, 33, 28, 29, 30, 27, 21, 9, 6, 5, 10, 11, 13, 7, 15, 1, 16, 17, 20, 19, 0, 2, 4, 12, 14, 8};
static const uint16_t i_96efe787c17e83bb[] = {7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 0, 1, 2, 3, 4, 5, 6};
const ::capnp::_::RawSchema s_96efe787c17e83bb = {
0x96efe787c17e83bb, b_96efe787c17e83bb.words, 553, d_96efe787c17e83bb, m_96efe787c17e83bb,
0x96efe787c17e83bb, b_96efe787c17e83bb.words, 551, d_96efe787c17e83bb, m_96efe787c17e83bb,
11, 38, i_96efe787c17e83bb, nullptr, nullptr
};
static const ::capnp::_::AlignedData<43> b_d00489d473826290 = {
static const ::capnp::_::AlignedData<41> b_d00489d473826290 = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
144, 98, 130, 115, 212, 137, 4, 208,
41, 0, 0, 0, 1, 0, 1, 0,
26, 0, 0, 0, 1, 0, 1, 0,
187, 131, 126, 193, 135, 231, 239, 150,
2, 0, 7, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 250, 1, 0, 0,
45, 0, 0, 0, 7, 0, 0, 0,
17, 0, 0, 0, 130, 1, 0, 0,
37, 0, 0, 0, 7, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
41, 0, 0, 0, 119, 0, 0, 0,
33, 0, 0, 0, 119, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 68, 101, 99,
108, 97, 114, 97, 116, 105, 111, 110,
46, 65, 110, 110, 111, 116, 97, 116,
105, 111, 110, 65, 112, 112, 108, 105,
99, 97, 116, 105, 111, 110, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 68, 101,
99, 108, 97, 114, 97, 116, 105, 111,
110, 46, 65, 110, 110, 111, 116, 97,
116, 105, 111, 110, 65, 112, 112, 108,
105, 99, 97, 116, 105, 111, 110, 0,
0, 0, 0, 0, 1, 0, 1, 0,
8, 0, 0, 0, 3, 0, 4, 0,
0, 0, 0, 0, 0, 0, 0, 0,
......@@ -1339,30 +1333,28 @@ static const ::capnp::_::RawSchema* const d_d00489d473826290[] = {
static const uint16_t m_d00489d473826290[] = {0, 1};
static const uint16_t i_d00489d473826290[] = {0, 1};
const ::capnp::_::RawSchema s_d00489d473826290 = {
0xd00489d473826290, b_d00489d473826290.words, 43, d_d00489d473826290, m_d00489d473826290,
0xd00489d473826290, b_d00489d473826290.words, 41, d_d00489d473826290, m_d00489d473826290,
2, 2, i_d00489d473826290, nullptr, nullptr
};
static const ::capnp::_::AlignedData<50> b_fb5aeed95cdf6af9 = {
static const ::capnp::_::AlignedData<48> b_fb5aeed95cdf6af9 = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
249, 106, 223, 92, 217, 238, 90, 251,
63, 0, 0, 0, 1, 0, 1, 0,
48, 0, 0, 0, 1, 0, 1, 0,
144, 98, 130, 115, 212, 137, 4, 208,
2, 0, 7, 0, 1, 0, 2, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 42, 2, 0, 0,
17, 0, 0, 0, 178, 1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
41, 0, 0, 0, 119, 0, 0, 0,
33, 0, 0, 0, 119, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 68, 101, 99,
108, 97, 114, 97, 116, 105, 111, 110,
46, 65, 110, 110, 111, 116, 97, 116,
105, 111, 110, 65, 112, 112, 108, 105,
99, 97, 116, 105, 111, 110, 46, 118,
97, 108, 117, 101, 0, 0, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 68, 101,
99, 108, 97, 114, 97, 116, 105, 111,
110, 46, 65, 110, 110, 111, 116, 97,
116, 105, 111, 110, 65, 112, 112, 108,
105, 99, 97, 116, 105, 111, 110, 46,
118, 97, 108, 117, 101, 0, 0, 0,
8, 0, 0, 0, 3, 0, 4, 0,
0, 0, 255, 255, 0, 0, 0, 0,
0, 0, 1, 0, 1, 0, 0, 0,
......@@ -1401,28 +1393,26 @@ static const ::capnp::_::RawSchema* const d_fb5aeed95cdf6af9[] = {
static const uint16_t m_fb5aeed95cdf6af9[] = {1, 0};
static const uint16_t i_fb5aeed95cdf6af9[] = {0, 1};
const ::capnp::_::RawSchema s_fb5aeed95cdf6af9 = {
0xfb5aeed95cdf6af9, b_fb5aeed95cdf6af9.words, 50, d_fb5aeed95cdf6af9, m_fb5aeed95cdf6af9,
0xfb5aeed95cdf6af9, b_fb5aeed95cdf6af9.words, 48, d_fb5aeed95cdf6af9, m_fb5aeed95cdf6af9,
2, 2, i_fb5aeed95cdf6af9, nullptr, nullptr
};
static const ::capnp::_::AlignedData<81> b_b3f66e7a79d81bcd = {
static const ::capnp::_::AlignedData<79> b_b3f66e7a79d81bcd = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
205, 27, 216, 121, 122, 110, 246, 179,
41, 0, 0, 0, 1, 0, 2, 0,
26, 0, 0, 0, 1, 0, 2, 0,
187, 131, 126, 193, 135, 231, 239, 150,
1, 0, 7, 0, 0, 0, 2, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 154, 1, 0, 0,
41, 0, 0, 0, 7, 0, 0, 0,
17, 0, 0, 0, 34, 1, 0, 0,
33, 0, 0, 0, 7, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
37, 0, 0, 0, 231, 0, 0, 0,
29, 0, 0, 0, 231, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 68, 101, 99,
108, 97, 114, 97, 116, 105, 111, 110,
46, 80, 97, 114, 97, 109, 76, 105,
115, 116, 0, 0, 0, 0, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 68, 101,
99, 108, 97, 114, 97, 116, 105, 111,
110, 46, 80, 97, 114, 97, 109, 76,
105, 115, 116, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0, 1, 0,
16, 0, 0, 0, 3, 0, 4, 0,
0, 0, 255, 255, 0, 0, 0, 0,
......@@ -1494,27 +1484,25 @@ static const ::capnp::_::RawSchema* const d_b3f66e7a79d81bcd[] = {
static const uint16_t m_b3f66e7a79d81bcd[] = {3, 0, 2, 1};
static const uint16_t i_b3f66e7a79d81bcd[] = {0, 1, 2, 3};
const ::capnp::_::RawSchema s_b3f66e7a79d81bcd = {
0xb3f66e7a79d81bcd, b_b3f66e7a79d81bcd.words, 81, d_b3f66e7a79d81bcd, m_b3f66e7a79d81bcd,
0xb3f66e7a79d81bcd, b_b3f66e7a79d81bcd.words, 79, d_b3f66e7a79d81bcd, m_b3f66e7a79d81bcd,
2, 4, i_b3f66e7a79d81bcd, nullptr, nullptr
};
static const ::capnp::_::AlignedData<103> b_fffe08a9a697d2a5 = {
static const ::capnp::_::AlignedData<101> b_fffe08a9a697d2a5 = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
165, 210, 151, 166, 169, 8, 254, 255,
41, 0, 0, 0, 1, 0, 2, 0,
26, 0, 0, 0, 1, 0, 2, 0,
187, 131, 126, 193, 135, 231, 239, 150,
4, 0, 7, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 122, 1, 0, 0,
37, 0, 0, 0, 7, 0, 0, 0,
17, 0, 0, 0, 2, 1, 0, 0,
29, 0, 0, 0, 7, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
33, 0, 0, 0, 87, 1, 0, 0,
25, 0, 0, 0, 87, 1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 68, 101, 99,
108, 97, 114, 97, 116, 105, 111, 110,
46, 80, 97, 114, 97, 109, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 68, 101,
99, 108, 97, 114, 97, 116, 105, 111,
110, 46, 80, 97, 114, 97, 109, 0,
0, 0, 0, 0, 1, 0, 1, 0,
24, 0, 0, 0, 3, 0, 4, 0,
0, 0, 0, 0, 0, 0, 0, 0,
......@@ -1611,29 +1599,27 @@ static const ::capnp::_::RawSchema* const d_fffe08a9a697d2a5[] = {
static const uint16_t m_fffe08a9a697d2a5[] = {2, 3, 5, 0, 4, 1};
static const uint16_t i_fffe08a9a697d2a5[] = {0, 1, 2, 3, 4, 5};
const ::capnp::_::RawSchema s_fffe08a9a697d2a5 = {
0xfffe08a9a697d2a5, b_fffe08a9a697d2a5.words, 103, d_fffe08a9a697d2a5, m_fffe08a9a697d2a5,
0xfffe08a9a697d2a5, b_fffe08a9a697d2a5.words, 101, d_fffe08a9a697d2a5, m_fffe08a9a697d2a5,
4, 6, i_fffe08a9a697d2a5, nullptr, nullptr
};
static const ::capnp::_::AlignedData<48> b_e5104515fd88ea47 = {
static const ::capnp::_::AlignedData<46> b_e5104515fd88ea47 = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
71, 234, 136, 253, 21, 69, 16, 229,
47, 0, 0, 0, 1, 0, 2, 0,
32, 0, 0, 0, 1, 0, 2, 0,
165, 210, 151, 166, 169, 8, 254, 255,
4, 0, 7, 0, 1, 0, 2, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 226, 1, 0, 0,
17, 0, 0, 0, 106, 1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
37, 0, 0, 0, 119, 0, 0, 0,
29, 0, 0, 0, 119, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 68, 101, 99,
108, 97, 114, 97, 116, 105, 111, 110,
46, 80, 97, 114, 97, 109, 46, 100,
101, 102, 97, 117, 108, 116, 86, 97,
108, 117, 101, 0, 0, 0, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 68, 101,
99, 108, 97, 114, 97, 116, 105, 111,
110, 46, 80, 97, 114, 97, 109, 46,
100, 101, 102, 97, 117, 108, 116, 86,
97, 108, 117, 101, 0, 0, 0, 0,
8, 0, 0, 0, 3, 0, 4, 0,
0, 0, 255, 255, 0, 0, 0, 0,
0, 0, 1, 0, 3, 0, 0, 0,
......@@ -1671,27 +1657,25 @@ static const ::capnp::_::RawSchema* const d_e5104515fd88ea47[] = {
static const uint16_t m_e5104515fd88ea47[] = {0, 1};
static const uint16_t i_e5104515fd88ea47[] = {0, 1};
const ::capnp::_::RawSchema s_e5104515fd88ea47 = {
0xe5104515fd88ea47, b_e5104515fd88ea47.words, 48, d_e5104515fd88ea47, m_e5104515fd88ea47,
0xe5104515fd88ea47, b_e5104515fd88ea47.words, 46, d_e5104515fd88ea47, m_e5104515fd88ea47,
2, 2, i_e5104515fd88ea47, nullptr, nullptr
};
static const ::capnp::_::AlignedData<61> b_89f0c973c103ae96 = {
static const ::capnp::_::AlignedData<59> b_89f0c973c103ae96 = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
150, 174, 3, 193, 115, 201, 240, 137,
41, 0, 0, 0, 1, 0, 2, 0,
26, 0, 0, 0, 1, 0, 2, 0,
187, 131, 126, 193, 135, 231, 239, 150,
7, 0, 7, 0, 1, 0, 3, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 98, 1, 0, 0,
17, 0, 0, 0, 234, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
29, 0, 0, 0, 175, 0, 0, 0,
21, 0, 0, 0, 175, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 68, 101, 99,
108, 97, 114, 97, 116, 105, 111, 110,
46, 105, 100, 0, 0, 0, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 68, 101,
99, 108, 97, 114, 97, 116, 105, 111,
110, 46, 105, 100, 0, 0, 0, 0,
12, 0, 0, 0, 3, 0, 4, 0,
0, 0, 255, 255, 0, 0, 0, 0,
0, 0, 1, 0, 1, 0, 0, 0,
......@@ -1744,27 +1728,25 @@ static const ::capnp::_::RawSchema* const d_89f0c973c103ae96[] = {
static const uint16_t m_89f0c973c103ae96[] = {2, 1, 0};
static const uint16_t i_89f0c973c103ae96[] = {0, 1, 2};
const ::capnp::_::RawSchema s_89f0c973c103ae96 = {
0x89f0c973c103ae96, b_89f0c973c103ae96.words, 61, d_89f0c973c103ae96, m_89f0c973c103ae96,
0x89f0c973c103ae96, b_89f0c973c103ae96.words, 59, d_89f0c973c103ae96, m_89f0c973c103ae96,
2, 3, i_89f0c973c103ae96, nullptr, nullptr
};
static const ::capnp::_::AlignedData<32> b_e93164a80bfe2ccf = {
static const ::capnp::_::AlignedData<30> b_e93164a80bfe2ccf = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
207, 44, 254, 11, 168, 100, 49, 233,
41, 0, 0, 0, 1, 0, 2, 0,
26, 0, 0, 0, 1, 0, 2, 0,
187, 131, 126, 193, 135, 231, 239, 150,
7, 0, 7, 0, 1, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 122, 1, 0, 0,
17, 0, 0, 0, 2, 1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
29, 0, 0, 0, 63, 0, 0, 0,
21, 0, 0, 0, 63, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 68, 101, 99,
108, 97, 114, 97, 116, 105, 111, 110,
46, 117, 115, 105, 110, 103, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 68, 101,
99, 108, 97, 114, 97, 116, 105, 111,
110, 46, 117, 115, 105, 110, 103, 0,
4, 0, 0, 0, 3, 0, 4, 0,
0, 0, 0, 0, 5, 0, 0, 0,
0, 0, 1, 0, 10, 0, 0, 0,
......@@ -1788,27 +1770,25 @@ static const ::capnp::_::RawSchema* const d_e93164a80bfe2ccf[] = {
static const uint16_t m_e93164a80bfe2ccf[] = {0};
static const uint16_t i_e93164a80bfe2ccf[] = {0};
const ::capnp::_::RawSchema s_e93164a80bfe2ccf = {
0xe93164a80bfe2ccf, b_e93164a80bfe2ccf.words, 32, d_e93164a80bfe2ccf, m_e93164a80bfe2ccf,
0xe93164a80bfe2ccf, b_e93164a80bfe2ccf.words, 30, d_e93164a80bfe2ccf, m_e93164a80bfe2ccf,
2, 1, i_e93164a80bfe2ccf, nullptr, nullptr
};
static const ::capnp::_::AlignedData<46> b_b348322a8dcf0d0c = {
static const ::capnp::_::AlignedData<44> b_b348322a8dcf0d0c = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
12, 13, 207, 141, 42, 50, 72, 179,
41, 0, 0, 0, 1, 0, 2, 0,
26, 0, 0, 0, 1, 0, 2, 0,
187, 131, 126, 193, 135, 231, 239, 150,
7, 0, 7, 0, 1, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 122, 1, 0, 0,
17, 0, 0, 0, 2, 1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
29, 0, 0, 0, 119, 0, 0, 0,
21, 0, 0, 0, 119, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 68, 101, 99,
108, 97, 114, 97, 116, 105, 111, 110,
46, 99, 111, 110, 115, 116, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 68, 101,
99, 108, 97, 114, 97, 116, 105, 111,
110, 46, 99, 111, 110, 115, 116, 0,
8, 0, 0, 0, 3, 0, 4, 0,
0, 0, 0, 0, 5, 0, 0, 0,
0, 0, 1, 0, 11, 0, 0, 0,
......@@ -1847,27 +1827,25 @@ static const ::capnp::_::RawSchema* const d_b348322a8dcf0d0c[] = {
static const uint16_t m_b348322a8dcf0d0c[] = {0, 1};
static const uint16_t i_b348322a8dcf0d0c[] = {0, 1};
const ::capnp::_::RawSchema s_b348322a8dcf0d0c = {
0xb348322a8dcf0d0c, b_b348322a8dcf0d0c.words, 46, d_b348322a8dcf0d0c, m_b348322a8dcf0d0c,
0xb348322a8dcf0d0c, b_b348322a8dcf0d0c.words, 44, d_b348322a8dcf0d0c, m_b348322a8dcf0d0c,
3, 2, i_b348322a8dcf0d0c, nullptr, nullptr
};
static const ::capnp::_::AlignedData<41> b_8f2622208fb358c8 = {
static const ::capnp::_::AlignedData<39> b_8f2622208fb358c8 = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
200, 88, 179, 143, 32, 34, 38, 143,
41, 0, 0, 0, 1, 0, 2, 0,
26, 0, 0, 0, 1, 0, 2, 0,
187, 131, 126, 193, 135, 231, 239, 150,
7, 0, 7, 0, 1, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 122, 1, 0, 0,
17, 0, 0, 0, 2, 1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
29, 0, 0, 0, 119, 0, 0, 0,
21, 0, 0, 0, 119, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 68, 101, 99,
108, 97, 114, 97, 116, 105, 111, 110,
46, 102, 105, 101, 108, 100, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 68, 101,
99, 108, 97, 114, 97, 116, 105, 111,
110, 46, 102, 105, 101, 108, 100, 0,
8, 0, 0, 0, 3, 0, 4, 0,
0, 0, 0, 0, 5, 0, 0, 0,
0, 0, 1, 0, 16, 0, 0, 0,
......@@ -1901,29 +1879,27 @@ static const ::capnp::_::RawSchema* const d_8f2622208fb358c8[] = {
static const uint16_t m_8f2622208fb358c8[] = {1, 0};
static const uint16_t i_8f2622208fb358c8[] = {0, 1};
const ::capnp::_::RawSchema s_8f2622208fb358c8 = {
0x8f2622208fb358c8, b_8f2622208fb358c8.words, 41, d_8f2622208fb358c8, m_8f2622208fb358c8,
0x8f2622208fb358c8, b_8f2622208fb358c8.words, 39, d_8f2622208fb358c8, m_8f2622208fb358c8,
3, 2, i_8f2622208fb358c8, nullptr, nullptr
};
static const ::capnp::_::AlignedData<48> b_d0d1a21de617951f = {
static const ::capnp::_::AlignedData<46> b_d0d1a21de617951f = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
31, 149, 23, 230, 29, 162, 209, 208,
47, 0, 0, 0, 1, 0, 2, 0,
32, 0, 0, 0, 1, 0, 2, 0,
200, 88, 179, 143, 32, 34, 38, 143,
7, 0, 7, 0, 1, 0, 2, 0,
6, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 226, 1, 0, 0,
17, 0, 0, 0, 106, 1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
37, 0, 0, 0, 119, 0, 0, 0,
29, 0, 0, 0, 119, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 68, 101, 99,
108, 97, 114, 97, 116, 105, 111, 110,
46, 102, 105, 101, 108, 100, 46, 100,
101, 102, 97, 117, 108, 116, 86, 97,
108, 117, 101, 0, 0, 0, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 68, 101,
99, 108, 97, 114, 97, 116, 105, 111,
110, 46, 102, 105, 101, 108, 100, 46,
100, 101, 102, 97, 117, 108, 116, 86,
97, 108, 117, 101, 0, 0, 0, 0,
8, 0, 0, 0, 3, 0, 4, 0,
0, 0, 255, 255, 0, 0, 0, 0,
0, 0, 1, 0, 17, 0, 0, 0,
......@@ -1961,28 +1937,26 @@ static const ::capnp::_::RawSchema* const d_d0d1a21de617951f[] = {
static const uint16_t m_d0d1a21de617951f[] = {0, 1};
static const uint16_t i_d0d1a21de617951f[] = {0, 1};
const ::capnp::_::RawSchema s_d0d1a21de617951f = {
0xd0d1a21de617951f, b_d0d1a21de617951f.words, 48, d_d0d1a21de617951f, m_d0d1a21de617951f,
0xd0d1a21de617951f, b_d0d1a21de617951f.words, 46, d_d0d1a21de617951f, m_d0d1a21de617951f,
2, 2, i_d0d1a21de617951f, nullptr, nullptr
};
static const ::capnp::_::AlignedData<36> b_992a90eaf30235d3 = {
static const ::capnp::_::AlignedData<34> b_992a90eaf30235d3 = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
211, 53, 2, 243, 234, 144, 42, 153,
41, 0, 0, 0, 1, 0, 2, 0,
26, 0, 0, 0, 1, 0, 2, 0,
187, 131, 126, 193, 135, 231, 239, 150,
7, 0, 7, 0, 1, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 154, 1, 0, 0,
17, 0, 0, 0, 34, 1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
33, 0, 0, 0, 63, 0, 0, 0,
25, 0, 0, 0, 63, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 68, 101, 99,
108, 97, 114, 97, 116, 105, 111, 110,
46, 105, 110, 116, 101, 114, 102, 97,
99, 101, 0, 0, 0, 0, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 68, 101,
99, 108, 97, 114, 97, 116, 105, 111,
110, 46, 105, 110, 116, 101, 114, 102,
97, 99, 101, 0, 0, 0, 0, 0,
4, 0, 0, 0, 3, 0, 4, 0,
0, 0, 0, 0, 5, 0, 0, 0,
0, 0, 1, 0, 21, 0, 0, 0,
......@@ -2009,27 +1983,26 @@ static const ::capnp::_::RawSchema* const d_992a90eaf30235d3[] = {
static const uint16_t m_992a90eaf30235d3[] = {0};
static const uint16_t i_992a90eaf30235d3[] = {0};
const ::capnp::_::RawSchema s_992a90eaf30235d3 = {
0x992a90eaf30235d3, b_992a90eaf30235d3.words, 36, d_992a90eaf30235d3, m_992a90eaf30235d3,
0x992a90eaf30235d3, b_992a90eaf30235d3.words, 34, d_992a90eaf30235d3, m_992a90eaf30235d3,
2, 1, i_992a90eaf30235d3, nullptr, nullptr
};
static const ::capnp::_::AlignedData<40> b_eb971847d617c0b9 = {
static const ::capnp::_::AlignedData<39> b_eb971847d617c0b9 = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
185, 192, 23, 214, 71, 24, 151, 235,
41, 0, 0, 0, 1, 0, 2, 0,
26, 0, 0, 0, 1, 0, 2, 0,
187, 131, 126, 193, 135, 231, 239, 150,
7, 0, 7, 0, 1, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 130, 1, 0, 0,
17, 0, 0, 0, 10, 1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
29, 0, 0, 0, 119, 0, 0, 0,
25, 0, 0, 0, 119, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 68, 101,
99, 108, 97, 114, 97, 116, 105, 111,
110, 46, 109, 101, 116, 104, 111, 100,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 68, 101, 99,
108, 97, 114, 97, 116, 105, 111, 110,
46, 109, 101, 116, 104, 111, 100, 0,
8, 0, 0, 0, 3, 0, 4, 0,
0, 0, 0, 0, 5, 0, 0, 0,
0, 0, 1, 0, 22, 0, 0, 0,
......@@ -2062,28 +2035,27 @@ static const ::capnp::_::RawSchema* const d_eb971847d617c0b9[] = {
static const uint16_t m_eb971847d617c0b9[] = {0, 1};
static const uint16_t i_eb971847d617c0b9[] = {0, 1};
const ::capnp::_::RawSchema s_eb971847d617c0b9 = {
0xeb971847d617c0b9, b_eb971847d617c0b9.words, 40, d_eb971847d617c0b9, m_eb971847d617c0b9,
0xeb971847d617c0b9, b_eb971847d617c0b9.words, 39, d_eb971847d617c0b9, m_eb971847d617c0b9,
3, 2, i_eb971847d617c0b9, nullptr, nullptr
};
static const ::capnp::_::AlignedData<48> b_c6238c7d62d65173 = {
static const ::capnp::_::AlignedData<47> b_c6238c7d62d65173 = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
115, 81, 214, 98, 125, 140, 35, 198,
48, 0, 0, 0, 1, 0, 2, 0,
33, 0, 0, 0, 1, 0, 2, 0,
185, 192, 23, 214, 71, 24, 151, 235,
7, 0, 7, 0, 1, 0, 2, 0,
6, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 194, 1, 0, 0,
17, 0, 0, 0, 74, 1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
33, 0, 0, 0, 119, 0, 0, 0,
29, 0, 0, 0, 119, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 68, 101,
99, 108, 97, 114, 97, 116, 105, 111,
110, 46, 109, 101, 116, 104, 111, 100,
46, 114, 101, 115, 117, 108, 116, 115,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 68, 101, 99,
108, 97, 114, 97, 116, 105, 111, 110,
46, 109, 101, 116, 104, 111, 100, 46,
114, 101, 115, 117, 108, 116, 115, 0,
8, 0, 0, 0, 3, 0, 4, 0,
0, 0, 255, 255, 0, 0, 0, 0,
0, 0, 1, 0, 23, 0, 0, 0,
......@@ -2122,28 +2094,26 @@ static const ::capnp::_::RawSchema* const d_c6238c7d62d65173[] = {
static const uint16_t m_c6238c7d62d65173[] = {1, 0};
static const uint16_t i_c6238c7d62d65173[] = {0, 1};
const ::capnp::_::RawSchema s_c6238c7d62d65173 = {
0xc6238c7d62d65173, b_c6238c7d62d65173.words, 48, d_c6238c7d62d65173, m_c6238c7d62d65173,
0xc6238c7d62d65173, b_c6238c7d62d65173.words, 47, d_c6238c7d62d65173, m_c6238c7d62d65173,
2, 2, i_c6238c7d62d65173, nullptr, nullptr
};
static const ::capnp::_::AlignedData<216> b_9cb9e86e3198037f = {
static const ::capnp::_::AlignedData<214> b_9cb9e86e3198037f = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
127, 3, 152, 49, 110, 232, 185, 156,
41, 0, 0, 0, 1, 0, 2, 0,
26, 0, 0, 0, 1, 0, 2, 0,
187, 131, 126, 193, 135, 231, 239, 150,
7, 0, 7, 0, 1, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 162, 1, 0, 0,
17, 0, 0, 0, 42, 1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
33, 0, 0, 0, 223, 2, 0, 0,
25, 0, 0, 0, 223, 2, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 68, 101, 99,
108, 97, 114, 97, 116, 105, 111, 110,
46, 97, 110, 110, 111, 116, 97, 116,
105, 111, 110, 0, 0, 0, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 68, 101,
99, 108, 97, 114, 97, 116, 105, 111,
110, 46, 97, 110, 110, 111, 116, 97,
116, 105, 111, 110, 0, 0, 0, 0,
52, 0, 0, 0, 3, 0, 4, 0,
0, 0, 0, 0, 5, 0, 0, 0,
0, 0, 1, 0, 25, 0, 0, 0,
......@@ -2350,26 +2320,25 @@ static const ::capnp::_::RawSchema* const d_9cb9e86e3198037f[] = {
static const uint16_t m_9cb9e86e3198037f[] = {12, 2, 3, 4, 6, 1, 8, 9, 10, 11, 5, 7, 0};
static const uint16_t i_9cb9e86e3198037f[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};
const ::capnp::_::RawSchema s_9cb9e86e3198037f = {
0x9cb9e86e3198037f, b_9cb9e86e3198037f.words, 216, d_9cb9e86e3198037f, m_9cb9e86e3198037f,
0x9cb9e86e3198037f, b_9cb9e86e3198037f.words, 214, d_9cb9e86e3198037f, m_9cb9e86e3198037f,
2, 13, i_9cb9e86e3198037f, nullptr, nullptr
};
static const ::capnp::_::AlignedData<32> b_84e4f3f5a807605c = {
static const ::capnp::_::AlignedData<31> b_84e4f3f5a807605c = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
92, 96, 7, 168, 245, 243, 228, 132,
29, 0, 0, 0, 1, 0, 0, 0,
14, 0, 0, 0, 1, 0, 0, 0,
198, 195, 187, 220, 104, 225, 107, 197,
1, 0, 6, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 66, 1, 0, 0,
33, 0, 0, 0, 7, 0, 0, 0,
17, 0, 0, 0, 202, 0, 0, 0,
29, 0, 0, 0, 7, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
25, 0, 0, 0, 63, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
29, 0, 0, 0, 63, 0, 0, 0,
103, 114, 97, 109, 109, 97, 114, 46,
99, 97, 112, 110, 112, 58, 80, 97,
114, 115, 101, 100, 70, 105, 108, 101,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 103,
114, 97, 109, 109, 97, 114, 46, 99,
97, 112, 110, 112, 58, 80, 97, 114,
115, 101, 100, 70, 105, 108, 101, 0,
0, 0, 0, 0, 1, 0, 1, 0,
4, 0, 0, 0, 3, 0, 4, 0,
0, 0, 0, 0, 0, 0, 0, 0,
......@@ -2393,7 +2362,7 @@ static const ::capnp::_::RawSchema* const d_84e4f3f5a807605c[] = {
static const uint16_t m_84e4f3f5a807605c[] = {0};
static const uint16_t i_84e4f3f5a807605c[] = {0};
const ::capnp::_::RawSchema s_84e4f3f5a807605c = {
0x84e4f3f5a807605c, b_84e4f3f5a807605c.words, 32, d_84e4f3f5a807605c, m_84e4f3f5a807605c,
0x84e4f3f5a807605c, b_84e4f3f5a807605c.words, 31, d_84e4f3f5a807605c, m_84e4f3f5a807605c,
1, 1, i_84e4f3f5a807605c, nullptr, nullptr
};
} // namespace schemas
......
......@@ -83,6 +83,7 @@ struct ValueExpression {
NAME,
LIST,
STRUCT,
BINARY,
};
struct FieldAssignment;
};
......@@ -1003,6 +1004,10 @@ public:
inline ::uint32_t getEndByte() const;
inline bool isBinary() const;
inline bool hasBinary() const;
inline ::capnp::Data::Reader getBinary() const;
private:
::capnp::_::StructReader _reader;
template <typename T, ::capnp::Kind k>
......@@ -1088,6 +1093,14 @@ public:
inline ::uint32_t getEndByte();
inline void setEndByte( ::uint32_t value);
inline bool isBinary();
inline bool hasBinary();
inline ::capnp::Data::Builder getBinary();
inline void setBinary( ::capnp::Data::Reader value);
inline ::capnp::Data::Builder initBinary(unsigned int size);
inline void adoptBinary(::capnp::Orphan< ::capnp::Data>&& value);
inline ::capnp::Orphan< ::capnp::Data> disownBinary();
private:
::capnp::_::StructBuilder _builder;
template <typename T, ::capnp::Kind k>
......@@ -3763,6 +3776,58 @@ inline void ValueExpression::Builder::setEndByte( ::uint32_t value) {
4 * ::capnp::ELEMENTS, value);
}
inline bool ValueExpression::Reader::isBinary() const {
return which() == ValueExpression::BINARY;
}
inline bool ValueExpression::Builder::isBinary() {
return which() == ValueExpression::BINARY;
}
inline bool ValueExpression::Reader::hasBinary() const {
if (which() != ValueExpression::BINARY) return false;
return !_reader.getPointerField(0 * ::capnp::POINTERS).isNull();
}
inline bool ValueExpression::Builder::hasBinary() {
if (which() != ValueExpression::BINARY) return false;
return !_builder.getPointerField(0 * ::capnp::POINTERS).isNull();
}
inline ::capnp::Data::Reader ValueExpression::Reader::getBinary() const {
KJ_IREQUIRE(which() == ValueExpression::BINARY,
"Must check which() before get()ing a union member.");
return ::capnp::_::PointerHelpers< ::capnp::Data>::get(
_reader.getPointerField(0 * ::capnp::POINTERS));
}
inline ::capnp::Data::Builder ValueExpression::Builder::getBinary() {
KJ_IREQUIRE(which() == ValueExpression::BINARY,
"Must check which() before get()ing a union member.");
return ::capnp::_::PointerHelpers< ::capnp::Data>::get(
_builder.getPointerField(0 * ::capnp::POINTERS));
}
inline void ValueExpression::Builder::setBinary( ::capnp::Data::Reader value) {
_builder.setDataField<ValueExpression::Which>(
0 * ::capnp::ELEMENTS, ValueExpression::BINARY);
::capnp::_::PointerHelpers< ::capnp::Data>::set(
_builder.getPointerField(0 * ::capnp::POINTERS), value);
}
inline ::capnp::Data::Builder ValueExpression::Builder::initBinary(unsigned int size) {
_builder.setDataField<ValueExpression::Which>(
0 * ::capnp::ELEMENTS, ValueExpression::BINARY);
return ::capnp::_::PointerHelpers< ::capnp::Data>::init(
_builder.getPointerField(0 * ::capnp::POINTERS), size);
}
inline void ValueExpression::Builder::adoptBinary(
::capnp::Orphan< ::capnp::Data>&& value) {
_builder.setDataField<ValueExpression::Which>(
0 * ::capnp::ELEMENTS, ValueExpression::BINARY);
::capnp::_::PointerHelpers< ::capnp::Data>::adopt(
_builder.getPointerField(0 * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::capnp::Data> ValueExpression::Builder::disownBinary() {
KJ_IREQUIRE(which() == ValueExpression::BINARY,
"Must check which() before get()ing a union member.");
return ::capnp::_::PointerHelpers< ::capnp::Data>::disown(
_builder.getPointerField(0 * ::capnp::POINTERS));
}
inline bool ValueExpression::FieldAssignment::Reader::hasFieldName() const {
return !_reader.getPointerField(0 * ::capnp::POINTERS).isNull();
}
......
......@@ -173,6 +173,13 @@ Lexer::Lexer(Orphanage orphanageParam, ErrorReporter& errorReporterParam)
initTok(t, loc).setStringLiteral(text);
return t;
}),
p::transformWithLocation(p::doubleQuotedHexBinary,
[this](Location loc, kj::Array<char> data) -> Orphan<Token> {
auto t = orphanage.newOrphan<Token>();
kj::ArrayPtr<byte> dataPtr(reinterpret_cast<byte*>(data.begin()), reinterpret_cast<byte*>(data.end()));
initTok(t, loc).setBinaryLiteral(dataPtr);
return t;
}),
p::transformWithLocation(p::integer,
[this](Location loc, uint64_t i) -> Orphan<Token> {
auto t = orphanage.newOrphan<Token>();
......
......@@ -29,6 +29,7 @@ struct Token {
union {
identifier @0 :Text;
stringLiteral @1 :Text;
binaryLiteral @9 :Data;
integerLiteral @2 :UInt64;
floatLiteral @3 :Float64;
operator @4 :Text;
......
......@@ -5,88 +5,93 @@
namespace capnp {
namespace schemas {
static const ::capnp::_::AlignedData<165> b_91cc55cd57de5419 = {
static const ::capnp::_::AlignedData<178> b_91cc55cd57de5419 = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
25, 84, 222, 87, 205, 85, 204, 145,
27, 0, 0, 0, 1, 0, 3, 0,
12, 0, 0, 0, 1, 0, 3, 0,
238, 195, 31, 98, 210, 86, 57, 167,
1, 0, 7, 0, 0, 0, 7, 0,
1, 0, 7, 0, 0, 0, 8, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 10, 1, 0, 0,
33, 0, 0, 0, 7, 0, 0, 0,
17, 0, 0, 0, 146, 0, 0, 0,
25, 0, 0, 0, 7, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
29, 0, 0, 0, 255, 1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 108,
101, 120, 101, 114, 46, 99, 97, 112,
110, 112, 58, 84, 111, 107, 101, 110,
21, 0, 0, 0, 55, 2, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
108, 101, 120, 101, 114, 46, 99, 97,
112, 110, 112, 58, 84, 111, 107, 101,
110, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0, 1, 0,
36, 0, 0, 0, 3, 0, 4, 0,
40, 0, 0, 0, 3, 0, 4, 0,
0, 0, 255, 255, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
237, 0, 0, 0, 90, 0, 0, 0,
9, 1, 0, 0, 90, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
236, 0, 0, 0, 2, 0, 1, 0,
244, 0, 0, 0, 2, 0, 1, 0,
8, 1, 0, 0, 2, 0, 1, 0,
16, 1, 0, 0, 2, 0, 1, 0,
1, 0, 254, 255, 0, 0, 0, 0,
0, 0, 1, 0, 1, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
241, 0, 0, 0, 114, 0, 0, 0,
13, 1, 0, 0, 114, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
240, 0, 0, 0, 2, 0, 1, 0,
248, 0, 0, 0, 2, 0, 1, 0,
2, 0, 253, 255, 1, 0, 0, 0,
12, 1, 0, 0, 2, 0, 1, 0,
20, 1, 0, 0, 2, 0, 1, 0,
3, 0, 253, 255, 1, 0, 0, 0,
0, 0, 1, 0, 2, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
245, 0, 0, 0, 122, 0, 0, 0,
17, 1, 0, 0, 122, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
244, 0, 0, 0, 2, 0, 1, 0,
252, 0, 0, 0, 2, 0, 1, 0,
3, 0, 252, 255, 1, 0, 0, 0,
16, 1, 0, 0, 2, 0, 1, 0,
24, 1, 0, 0, 2, 0, 1, 0,
4, 0, 252, 255, 1, 0, 0, 0,
0, 0, 1, 0, 3, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
249, 0, 0, 0, 106, 0, 0, 0,
21, 1, 0, 0, 106, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
248, 0, 0, 0, 2, 0, 1, 0,
0, 1, 0, 0, 2, 0, 1, 0,
4, 0, 251, 255, 0, 0, 0, 0,
20, 1, 0, 0, 2, 0, 1, 0,
28, 1, 0, 0, 2, 0, 1, 0,
5, 0, 251, 255, 0, 0, 0, 0,
0, 0, 1, 0, 4, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
253, 0, 0, 0, 74, 0, 0, 0,
25, 1, 0, 0, 74, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
252, 0, 0, 0, 2, 0, 1, 0,
4, 1, 0, 0, 2, 0, 1, 0,
5, 0, 250, 255, 0, 0, 0, 0,
24, 1, 0, 0, 2, 0, 1, 0,
32, 1, 0, 0, 2, 0, 1, 0,
6, 0, 250, 255, 0, 0, 0, 0,
0, 0, 1, 0, 5, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
1, 1, 0, 0, 146, 0, 0, 0,
29, 1, 0, 0, 146, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
4, 1, 0, 0, 2, 0, 1, 0,
36, 1, 0, 0, 2, 0, 1, 0,
6, 0, 249, 255, 0, 0, 0, 0,
32, 1, 0, 0, 2, 0, 1, 0,
64, 1, 0, 0, 2, 0, 1, 0,
7, 0, 249, 255, 0, 0, 0, 0,
0, 0, 1, 0, 6, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
33, 1, 0, 0, 114, 0, 0, 0,
61, 1, 0, 0, 114, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
32, 1, 0, 0, 2, 0, 1, 0,
64, 1, 0, 0, 2, 0, 1, 0,
7, 0, 0, 0, 1, 0, 0, 0,
60, 1, 0, 0, 2, 0, 1, 0,
92, 1, 0, 0, 2, 0, 1, 0,
8, 0, 0, 0, 1, 0, 0, 0,
0, 0, 1, 0, 7, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
61, 1, 0, 0, 82, 0, 0, 0,
89, 1, 0, 0, 82, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
60, 1, 0, 0, 2, 0, 1, 0,
68, 1, 0, 0, 2, 0, 1, 0,
8, 0, 0, 0, 4, 0, 0, 0,
88, 1, 0, 0, 2, 0, 1, 0,
96, 1, 0, 0, 2, 0, 1, 0,
9, 0, 0, 0, 4, 0, 0, 0,
0, 0, 1, 0, 8, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
65, 1, 0, 0, 66, 0, 0, 0,
93, 1, 0, 0, 66, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
60, 1, 0, 0, 2, 0, 1, 0,
68, 1, 0, 0, 2, 0, 1, 0,
88, 1, 0, 0, 2, 0, 1, 0,
96, 1, 0, 0, 2, 0, 1, 0,
2, 0, 248, 255, 0, 0, 0, 0,
0, 0, 1, 0, 9, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
93, 1, 0, 0, 114, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
92, 1, 0, 0, 2, 0, 1, 0,
100, 1, 0, 0, 2, 0, 1, 0,
105, 100, 101, 110, 116, 105, 102, 105,
101, 114, 0, 0, 0, 0, 0, 0,
12, 0, 0, 0, 0, 0, 0, 0,
......@@ -169,35 +174,41 @@ static const ::capnp::_::AlignedData<165> b_91cc55cd57de5419 = {
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
8, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
98, 105, 110, 97, 114, 121, 76, 105,
116, 101, 114, 97, 108, 0, 0, 0,
13, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
13, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, }
};
static const ::capnp::_::RawSchema* const d_91cc55cd57de5419[] = {
&s_91cc55cd57de5419,
};
static const uint16_t m_91cc55cd57de5419[] = {6, 8, 3, 0, 2, 4, 5, 7, 1};
static const uint16_t i_91cc55cd57de5419[] = {0, 1, 2, 3, 4, 5, 6, 7, 8};
static const uint16_t m_91cc55cd57de5419[] = {9, 6, 8, 3, 0, 2, 4, 5, 7, 1};
static const uint16_t i_91cc55cd57de5419[] = {0, 1, 2, 3, 4, 5, 6, 9, 7, 8};
const ::capnp::_::RawSchema s_91cc55cd57de5419 = {
0x91cc55cd57de5419, b_91cc55cd57de5419.words, 165, d_91cc55cd57de5419, m_91cc55cd57de5419,
1, 9, i_91cc55cd57de5419, nullptr, nullptr
0x91cc55cd57de5419, b_91cc55cd57de5419.words, 178, d_91cc55cd57de5419, m_91cc55cd57de5419,
1, 10, i_91cc55cd57de5419, nullptr, nullptr
};
static const ::capnp::_::AlignedData<110> b_c6725e678d60fa37 = {
static const ::capnp::_::AlignedData<108> b_c6725e678d60fa37 = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
55, 250, 96, 141, 103, 94, 114, 198,
27, 0, 0, 0, 1, 0, 2, 0,
12, 0, 0, 0, 1, 0, 2, 0,
238, 195, 31, 98, 210, 86, 57, 167,
3, 0, 7, 0, 0, 0, 2, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 42, 1, 0, 0,
33, 0, 0, 0, 7, 0, 0, 0,
17, 0, 0, 0, 178, 0, 0, 0,
25, 0, 0, 0, 7, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
29, 0, 0, 0, 87, 1, 0, 0,
21, 0, 0, 0, 87, 1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 108,
101, 120, 101, 114, 46, 99, 97, 112,
110, 112, 58, 83, 116, 97, 116, 101,
109, 101, 110, 116, 0, 0, 0, 0,
108, 101, 120, 101, 114, 46, 99, 97,
112, 110, 112, 58, 83, 116, 97, 116,
101, 109, 101, 110, 116, 0, 0, 0,
0, 0, 0, 0, 1, 0, 1, 0,
24, 0, 0, 0, 3, 0, 4, 0,
0, 0, 0, 0, 0, 0, 0, 0,
......@@ -300,26 +311,24 @@ static const ::capnp::_::RawSchema* const d_c6725e678d60fa37[] = {
static const uint16_t m_c6725e678d60fa37[] = {2, 3, 5, 1, 4, 0};
static const uint16_t i_c6725e678d60fa37[] = {1, 2, 0, 3, 4, 5};
const ::capnp::_::RawSchema s_c6725e678d60fa37 = {
0xc6725e678d60fa37, b_c6725e678d60fa37.words, 110, d_c6725e678d60fa37, m_c6725e678d60fa37,
0xc6725e678d60fa37, b_c6725e678d60fa37.words, 108, d_c6725e678d60fa37, m_c6725e678d60fa37,
2, 6, i_c6725e678d60fa37, nullptr, nullptr
};
static const ::capnp::_::AlignedData<35> b_9e69a92512b19d18 = {
static const ::capnp::_::AlignedData<33> b_9e69a92512b19d18 = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
24, 157, 177, 18, 37, 169, 105, 158,
27, 0, 0, 0, 1, 0, 0, 0,
12, 0, 0, 0, 1, 0, 0, 0,
238, 195, 31, 98, 210, 86, 57, 167,
1, 0, 6, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 58, 1, 0, 0,
33, 0, 0, 0, 7, 0, 0, 0,
17, 0, 0, 0, 194, 0, 0, 0,
25, 0, 0, 0, 7, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
29, 0, 0, 0, 63, 0, 0, 0,
21, 0, 0, 0, 63, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 108,
101, 120, 101, 114, 46, 99, 97, 112,
110, 112, 58, 76, 101, 120, 101, 100,
84, 111, 107, 101, 110, 115, 0, 0,
108, 101, 120, 101, 114, 46, 99, 97,
112, 110, 112, 58, 76, 101, 120, 101,
100, 84, 111, 107, 101, 110, 115, 0,
0, 0, 0, 0, 1, 0, 1, 0,
4, 0, 0, 0, 3, 0, 4, 0,
0, 0, 0, 0, 0, 0, 0, 0,
......@@ -346,27 +355,25 @@ static const ::capnp::_::RawSchema* const d_9e69a92512b19d18[] = {
static const uint16_t m_9e69a92512b19d18[] = {0};
static const uint16_t i_9e69a92512b19d18[] = {0};
const ::capnp::_::RawSchema s_9e69a92512b19d18 = {
0x9e69a92512b19d18, b_9e69a92512b19d18.words, 35, d_9e69a92512b19d18, m_9e69a92512b19d18,
0x9e69a92512b19d18, b_9e69a92512b19d18.words, 33, d_9e69a92512b19d18, m_9e69a92512b19d18,
1, 1, i_9e69a92512b19d18, nullptr, nullptr
};
static const ::capnp::_::AlignedData<37> b_a11f97b9d6c73dd4 = {
static const ::capnp::_::AlignedData<35> b_a11f97b9d6c73dd4 = {
{ 0, 0, 0, 0, 5, 0, 5, 0,
212, 61, 199, 214, 185, 151, 31, 161,
27, 0, 0, 0, 1, 0, 0, 0,
12, 0, 0, 0, 1, 0, 0, 0,
238, 195, 31, 98, 210, 86, 57, 167,
1, 0, 6, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
17, 0, 0, 0, 90, 1, 0, 0,
37, 0, 0, 0, 7, 0, 0, 0,
17, 0, 0, 0, 226, 0, 0, 0,
29, 0, 0, 0, 7, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
33, 0, 0, 0, 63, 0, 0, 0,
25, 0, 0, 0, 63, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
99, 97, 112, 110, 112, 47, 99, 111,
109, 112, 105, 108, 101, 114, 47, 108,
101, 120, 101, 114, 46, 99, 97, 112,
110, 112, 58, 76, 101, 120, 101, 100,
83, 116, 97, 116, 101, 109, 101, 110,
116, 115, 0, 0, 0, 0, 0, 0,
108, 101, 120, 101, 114, 46, 99, 97,
112, 110, 112, 58, 76, 101, 120, 101,
100, 83, 116, 97, 116, 101, 109, 101,
110, 116, 115, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0, 1, 0,
4, 0, 0, 0, 3, 0, 4, 0,
0, 0, 0, 0, 0, 0, 0, 0,
......@@ -394,7 +401,7 @@ static const ::capnp::_::RawSchema* const d_a11f97b9d6c73dd4[] = {
static const uint16_t m_a11f97b9d6c73dd4[] = {0};
static const uint16_t i_a11f97b9d6c73dd4[] = {0};
const ::capnp::_::RawSchema s_a11f97b9d6c73dd4 = {
0xa11f97b9d6c73dd4, b_a11f97b9d6c73dd4.words, 37, d_a11f97b9d6c73dd4, m_a11f97b9d6c73dd4,
0xa11f97b9d6c73dd4, b_a11f97b9d6c73dd4.words, 35, d_a11f97b9d6c73dd4, m_a11f97b9d6c73dd4,
1, 1, i_a11f97b9d6c73dd4, nullptr, nullptr
};
} // namespace schemas
......
......@@ -28,6 +28,7 @@ struct Token {
OPERATOR,
PARENTHESIZED_LIST,
BRACKETED_LIST,
BINARY_LITERAL,
};
};
......@@ -138,6 +139,10 @@ public:
inline ::uint32_t getEndByte() const;
inline bool isBinaryLiteral() const;
inline bool hasBinaryLiteral() const;
inline ::capnp::Data::Reader getBinaryLiteral() const;
private:
::capnp::_::StructReader _reader;
template <typename T, ::capnp::Kind k>
......@@ -225,6 +230,14 @@ public:
inline ::uint32_t getEndByte();
inline void setEndByte( ::uint32_t value);
inline bool isBinaryLiteral();
inline bool hasBinaryLiteral();
inline ::capnp::Data::Builder getBinaryLiteral();
inline void setBinaryLiteral( ::capnp::Data::Reader value);
inline ::capnp::Data::Builder initBinaryLiteral(unsigned int size);
inline void adoptBinaryLiteral(::capnp::Orphan< ::capnp::Data>&& value);
inline ::capnp::Orphan< ::capnp::Data> disownBinaryLiteral();
private:
::capnp::_::StructBuilder _builder;
template <typename T, ::capnp::Kind k>
......@@ -884,6 +897,58 @@ inline void Token::Builder::setEndByte( ::uint32_t value) {
4 * ::capnp::ELEMENTS, value);
}
inline bool Token::Reader::isBinaryLiteral() const {
return which() == Token::BINARY_LITERAL;
}
inline bool Token::Builder::isBinaryLiteral() {
return which() == Token::BINARY_LITERAL;
}
inline bool Token::Reader::hasBinaryLiteral() const {
if (which() != Token::BINARY_LITERAL) return false;
return !_reader.getPointerField(0 * ::capnp::POINTERS).isNull();
}
inline bool Token::Builder::hasBinaryLiteral() {
if (which() != Token::BINARY_LITERAL) return false;
return !_builder.getPointerField(0 * ::capnp::POINTERS).isNull();
}
inline ::capnp::Data::Reader Token::Reader::getBinaryLiteral() const {
KJ_IREQUIRE(which() == Token::BINARY_LITERAL,
"Must check which() before get()ing a union member.");
return ::capnp::_::PointerHelpers< ::capnp::Data>::get(
_reader.getPointerField(0 * ::capnp::POINTERS));
}
inline ::capnp::Data::Builder Token::Builder::getBinaryLiteral() {
KJ_IREQUIRE(which() == Token::BINARY_LITERAL,
"Must check which() before get()ing a union member.");
return ::capnp::_::PointerHelpers< ::capnp::Data>::get(
_builder.getPointerField(0 * ::capnp::POINTERS));
}
inline void Token::Builder::setBinaryLiteral( ::capnp::Data::Reader value) {
_builder.setDataField<Token::Which>(
0 * ::capnp::ELEMENTS, Token::BINARY_LITERAL);
::capnp::_::PointerHelpers< ::capnp::Data>::set(
_builder.getPointerField(0 * ::capnp::POINTERS), value);
}
inline ::capnp::Data::Builder Token::Builder::initBinaryLiteral(unsigned int size) {
_builder.setDataField<Token::Which>(
0 * ::capnp::ELEMENTS, Token::BINARY_LITERAL);
return ::capnp::_::PointerHelpers< ::capnp::Data>::init(
_builder.getPointerField(0 * ::capnp::POINTERS), size);
}
inline void Token::Builder::adoptBinaryLiteral(
::capnp::Orphan< ::capnp::Data>&& value) {
_builder.setDataField<Token::Which>(
0 * ::capnp::ELEMENTS, Token::BINARY_LITERAL);
::capnp::_::PointerHelpers< ::capnp::Data>::adopt(
_builder.getPointerField(0 * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::capnp::Data> Token::Builder::disownBinaryLiteral() {
KJ_IREQUIRE(which() == Token::BINARY_LITERAL,
"Must check which() before get()ing a union member.");
return ::capnp::_::PointerHelpers< ::capnp::Data>::disown(
_builder.getPointerField(0 * ::capnp::POINTERS));
}
inline Statement::Which Statement::Reader::which() const {
return _reader.getDataField<Which>(0 * ::capnp::ELEMENTS);
}
......
......@@ -1859,6 +1859,13 @@ Orphan<DynamicValue> ValueTranslator::compileValueInner(
}
break;
case ValueExpression::BINARY:
if (!type.isData()) {
errorReporter.addErrorOn(src, kj::str("Type mismatch; expected ", makeTypeName(type), "."));
return nullptr;
}
return orphanage.newOrphanCopy(src.getBinary());
case ValueExpression::LIST: {
if (!type.isList()) {
errorReporter.addErrorOn(src, kj::str("Type mismatch; expected ", makeTypeName(type), "."));
......
......@@ -227,6 +227,7 @@ struct MatchTokenType {
constexpr auto identifier = TOKEN_TYPE_PARSER(Text::Reader, IDENTIFIER, getIdentifier);
constexpr auto stringLiteral = TOKEN_TYPE_PARSER(Text::Reader, STRING_LITERAL, getStringLiteral);
constexpr auto binaryLiteral = TOKEN_TYPE_PARSER(Data::Reader, BINARY_LITERAL, getBinaryLiteral);
constexpr auto integerLiteral = TOKEN_TYPE_PARSER(uint64_t, INTEGER_LITERAL, getIntegerLiteral);
constexpr auto floatLiteral = TOKEN_TYPE_PARSER(double, FLOAT_LITERAL, getFloatLiteral);
constexpr auto operatorToken = TOKEN_TYPE_PARSER(Text::Reader, OPERATOR, getOperator);
......@@ -551,6 +552,14 @@ CapnpParser::CapnpParser(Orphanage orphanageParam, ErrorReporter& errorReporterP
value.copyLocationTo(builder);
return result;
}),
p::transform(binaryLiteral,
[this](Located<Data::Reader>&& value) -> Orphan<ValueExpression> {
auto result = orphanage.newOrphan<ValueExpression>();
auto builder = result.get();
builder.setBinary(value.value);
value.copyLocationTo(builder);
return result;
}),
p::transformWithLocation(parsers.declName,
[this](kj::parse::Span<List<Token>::Reader::Iterator> location,
Orphan<DeclName>&& value) -> Orphan<ValueExpression> {
......
......@@ -90,7 +90,7 @@ struct TestDefaults {
float32Field @10 : Float32 = 1234.5;
float64Field @11 : Float64 = -123e45;
textField @12 : Text = "foo";
dataField @13 : Data = "bar";
dataField @13 : Data = 0x"62 61 72"; # "bar"
structField @14 : TestAllTypes = (
voidField = void,
boolField = true,
......
......@@ -238,7 +238,7 @@ struct ParseInteger {
constexpr auto integer = sequence(
oneOf(
transform(sequence(exactChar<'0'>(), exactChar<'x'>(), many(hexDigit)), _::ParseInteger<16>()),
transform(sequence(exactChar<'0'>(), exactChar<'x'>(), oneOrMore(hexDigit)), _::ParseInteger<16>()),
transform(sequence(exactChar<'0'>(), many(octDigit)), _::ParseInteger<8>()),
transform(sequence(charRange('1', '9'), many(digit)), _::ParseInteger<10>())),
notLookingAt(alpha.orAny("_.")));
......@@ -326,6 +326,13 @@ constexpr auto singleQuotedString = charsToString(sequence(
exactChar<'\''>()));
// Parses a C-style single-quoted string.
constexpr auto doubleQuotedHexBinary = sequence(
exactChar<'0'>(), exactChar<'x'>(), exactChar<'\"'>(),
oneOrMore(transform(sequence(discardWhitespace, hexDigit, hexDigit), _::ParseHexEscape())),
discardWhitespace,
exactChar<'\"'>());
// Parses a double-quoted hex binary literal.
} // namespace parse
} // namespace kj
......
......@@ -123,6 +123,7 @@ bar @1 :Text = "blah";
baz @2 :List(Bool) = [ true, false, false, true ];
qux @3 :Person = (name = "Bob", email = "bob@example.com");
corge @4 :Void = void;
grault @5 :Data = 0x"a1 40 33";
{% endhighlight %}
### Unions
......@@ -360,6 +361,7 @@ tool](capnp-tool.html#evaluating_constants).
{% highlight capnp %}
const pi :Float32 = 3.14159;
const bob :Person = (name = "Bob", email = "bob@example.com");
const secret :Data = 0x"9f98739c2b53835e 6720a00907abd42f";
{% endhighlight %}
Additionally, you may refer to a constant inside another value (e.g. another constant, or a default
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment