From fff4be9880aae746c1f29baeb011232ce00703d2 Mon Sep 17 00:00:00 2001 From: Josh Humphries Date: Sun, 1 Apr 2018 11:12:37 -0400 Subject: [PATCH] protoparse is more lenient with aggregate values: semicolons can be used instead of commas --- desc/protoparse/proto.y | 11 + desc/protoparse/proto.y.go | 956 +++++++++++++++++++------------------ 2 files changed, 505 insertions(+), 462 deletions(-) diff --git a/desc/protoparse/proto.y b/desc/protoparse/proto.y index a705932e..0c4de800 100644 --- a/desc/protoparse/proto.y +++ b/desc/protoparse/proto.y @@ -314,6 +314,9 @@ aggField : aggFieldEntry | aggFieldEntry ',' { $$ = $1 } + | aggFieldEntry ';' { + $$ = $1 + } aggFieldEntry : aggName ':' scalarConstant { a := &aggregateEntryNode{name: $1, val: $3} @@ -374,6 +377,9 @@ constantList : constant { | constantList ',' constant { $$ = append($1, $3) } + | constantList ';' constant { + $$ = append($1, $3) + } | '<' aggFields '>' { s := &aggregateLiteralNode{elements: $2} s.setRange($1, $3) @@ -384,6 +390,11 @@ constantList : constant { s.setRange($3, $5) $$ = append($1, s) } + | constantList ';' '<' aggFields '>' { + s := &aggregateLiteralNode{elements: $4} + s.setRange($3, $5) + $$ = append($1, s) + } typeIdent : ident | _TYPENAME diff --git a/desc/protoparse/proto.y.go b/desc/protoparse/proto.y.go index 249e42e7..0333f47b 100644 --- a/desc/protoparse/proto.y.go +++ b/desc/protoparse/proto.y.go @@ -193,7 +193,7 @@ const protoEofCode = 1 const protoErrCode = 2 const protoInitialStackSize = 16 -//line proto.y:851 +//line proto.y:862 //line yacctab:1 var protoExca = [...]int{ @@ -204,254 +204,264 @@ var protoExca = [...]int{ const protoPrivate = 57344 -const protoLast = 1946 +const protoLast = 2031 var protoAct = [...]int{ - 118, 8, 154, 8, 8, 361, 250, 79, 268, 153, - 111, 251, 257, 110, 179, 98, 97, 100, 101, 126, - 165, 147, 8, 27, 74, 28, 136, 117, 112, 96, - 178, 142, 252, 286, 286, 241, 352, 286, 295, 78, - 286, 364, 353, 76, 77, 339, 81, 286, 337, 73, - 286, 286, 286, 298, 286, 335, 210, 354, 328, 317, - 316, 297, 287, 342, 212, 307, 304, 301, 284, 266, - 264, 211, 355, 277, 105, 109, 167, 333, 343, 262, - 308, 305, 302, 285, 267, 265, 235, 202, 197, 104, - 182, 137, 315, 148, 229, 88, 228, 199, 196, 16, - 309, 356, 230, 357, 212, 306, 303, 214, 92, 16, - 91, 90, 89, 103, 367, 358, 140, 349, 16, 144, - 143, 170, 348, 213, 347, 341, 332, 331, 168, 312, - 157, 152, 95, 151, 233, 234, 137, 16, 150, 74, - 94, 191, 93, 171, 173, 175, 86, 148, 363, 78, - 83, 365, 177, 77, 76, 344, 195, 363, 181, 314, - 288, 140, 187, 248, 73, 183, 200, 247, 192, 144, - 143, 151, 198, 190, 246, 318, 150, 193, 245, 157, - 244, 243, 209, 188, 87, 23, 254, 201, 115, 11, - 5, 11, 11, 351, 22, 162, 163, 203, 204, 205, - 206, 207, 208, 185, 180, 329, 231, 232, 164, 240, - 11, 263, 22, 238, 236, 258, 4, 14, 283, 74, - 15, 16, 242, 103, 255, 157, 282, 253, 113, 10, - 281, 10, 10, 24, 261, 280, 114, 9, 279, 9, - 9, 25, 26, 195, 278, 162, 159, 160, 159, 275, - 10, 18, 17, 19, 20, 270, 180, 258, 9, 161, - 13, 249, 85, 103, 84, 157, 157, 273, 82, 290, - 149, 146, 293, 74, 294, 74, 261, 3, 195, 12, - 21, 141, 292, 138, 299, 135, 116, 291, 121, 296, - 184, 256, 310, 74, 74, 120, 119, 259, 311, 155, - 157, 157, 195, 272, 102, 156, 215, 166, 360, 322, - 74, 7, 324, 74, 103, 326, 74, 323, 313, 6, - 325, 2, 1, 327, 103, 157, 0, 0, 319, 0, - 334, 0, 0, 0, 170, 0, 170, 195, 170, 0, - 0, 330, 345, 0, 0, 0, 157, 0, 0, 0, - 350, 74, 0, 270, 0, 0, 0, 0, 362, 0, - 157, 362, 359, 74, 0, 0, 366, 99, 105, 108, - 30, 0, 0, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, - 68, 69, 70, 71, 72, 0, 0, 0, 0, 104, - 0, 0, 0, 0, 0, 0, 0, 274, 106, 107, - 0, 0, 0, 271, 99, 105, 108, 30, 0, 0, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, - 71, 72, 0, 0, 0, 0, 104, 0, 0, 0, - 0, 0, 0, 0, 239, 106, 107, 0, 0, 237, - 99, 105, 108, 30, 0, 0, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 0, 0, - 0, 0, 104, 0, 0, 0, 0, 0, 0, 0, - 320, 106, 107, 99, 105, 108, 30, 0, 0, 31, + 118, 8, 269, 8, 8, 367, 251, 79, 126, 111, + 153, 252, 258, 110, 179, 98, 97, 100, 101, 154, + 165, 147, 8, 27, 74, 142, 28, 117, 78, 112, + 96, 253, 287, 300, 136, 287, 242, 358, 287, 178, + 370, 299, 287, 359, 76, 77, 344, 81, 73, 298, + 342, 287, 287, 287, 287, 287, 211, 360, 347, 340, + 332, 319, 318, 288, 213, 309, 306, 303, 285, 296, + 267, 212, 361, 348, 265, 278, 109, 337, 167, 182, + 310, 307, 304, 286, 88, 268, 236, 317, 105, 266, + 203, 137, 230, 148, 198, 104, 229, 197, 263, 362, + 231, 363, 311, 200, 213, 196, 4, 14, 308, 305, + 15, 16, 215, 92, 103, 91, 90, 140, 16, 144, + 170, 143, 16, 89, 373, 364, 16, 355, 354, 353, + 168, 157, 171, 173, 175, 346, 137, 349, 78, 74, + 336, 18, 17, 19, 20, 16, 335, 148, 234, 235, + 13, 314, 151, 177, 77, 76, 152, 150, 95, 181, + 191, 369, 140, 73, 371, 369, 201, 190, 192, 144, + 187, 143, 199, 195, 183, 94, 93, 86, 193, 151, + 157, 83, 316, 255, 150, 289, 249, 202, 248, 247, + 246, 245, 244, 210, 188, 87, 23, 320, 204, 205, + 206, 207, 208, 209, 214, 14, 232, 233, 15, 16, + 24, 241, 243, 5, 239, 237, 259, 22, 25, 26, + 74, 256, 185, 180, 262, 103, 357, 157, 254, 333, + 115, 11, 284, 11, 11, 22, 162, 163, 283, 18, + 17, 19, 20, 282, 281, 271, 280, 279, 13, 164, + 162, 276, 11, 159, 180, 250, 113, 10, 259, 10, + 10, 195, 264, 85, 84, 103, 262, 157, 157, 274, + 291, 82, 293, 294, 74, 295, 74, 3, 10, 297, + 21, 149, 146, 12, 114, 9, 301, 9, 9, 292, + 141, 159, 160, 312, 74, 74, 195, 138, 135, 313, + 116, 121, 157, 157, 161, 184, 9, 257, 120, 119, + 260, 326, 74, 155, 328, 74, 103, 330, 74, 327, + 315, 195, 329, 273, 102, 331, 103, 103, 157, 156, + 321, 323, 216, 338, 166, 339, 366, 170, 7, 170, + 350, 170, 6, 2, 334, 1, 271, 0, 0, 157, + 0, 157, 0, 0, 0, 356, 74, 0, 195, 195, + 0, 0, 0, 0, 368, 157, 157, 368, 365, 74, + 0, 0, 372, 99, 105, 108, 30, 0, 0, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 0, 0, 0, 0, 104, 0, 0, 0, 0, - 0, 0, 0, 30, 106, 107, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 346, - 0, 0, 0, 30, 0, 158, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, - 0, 0, 0, 30, 0, 158, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 300, - 0, 0, 0, 30, 0, 158, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 276, - 0, 0, 0, 30, 0, 158, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 0, 0, - 0, 0, 0, 194, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 30, 0, 158, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 216, 217, - 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 0, 0, 0, 30, 29, 158, 31, 32, 33, 34, + 0, 0, 0, 275, 106, 107, 0, 0, 0, 272, + 99, 105, 108, 30, 0, 0, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 0, 0, + 0, 0, 104, 0, 0, 0, 0, 0, 0, 0, + 240, 106, 107, 0, 0, 238, 99, 105, 108, 30, + 0, 0, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, + 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, + 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, + 69, 70, 71, 72, 0, 0, 0, 0, 104, 0, + 0, 0, 0, 0, 0, 0, 324, 106, 107, 99, + 105, 108, 30, 0, 0, 31, 32, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 0, 0, 0, + 0, 104, 0, 0, 0, 0, 0, 0, 0, 322, + 106, 107, 99, 105, 108, 30, 0, 0, 31, 32, + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, + 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, + 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, + 0, 0, 0, 0, 104, 0, 0, 0, 0, 0, + 0, 0, 30, 106, 107, 31, 32, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 352, 0, + 0, 0, 30, 0, 158, 31, 32, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 351, 0, + 0, 0, 30, 0, 158, 31, 32, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 325, 0, + 0, 0, 30, 0, 158, 31, 32, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 302, 0, + 0, 0, 30, 0, 158, 31, 32, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 277, 0, + 0, 0, 30, 0, 158, 31, 32, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 0, 0, 0, + 0, 0, 194, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 30, 0, 158, 31, 32, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 0, + 0, 0, 30, 29, 158, 31, 32, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 75, 30, 29, 80, 31, 32, 33, + 0, 0, 75, 30, 29, 80, 31, 32, 33, 34, + 35, 131, 37, 38, 39, 40, 125, 124, 123, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, 59, 132, 133, 130, 63, 64, + 134, 127, 128, 129, 69, 70, 71, 72, 0, 0, + 122, 0, 0, 345, 30, 29, 80, 31, 32, 33, 34, 35, 131, 37, 38, 39, 40, 125, 124, 123, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 132, 133, 130, 63, 64, 134, 127, 128, 129, 69, 70, 71, 72, 0, - 0, 122, 0, 0, 340, 30, 29, 80, 31, 32, + 0, 122, 0, 0, 343, 30, 29, 80, 31, 32, 33, 34, 35, 131, 37, 38, 39, 40, 125, 124, 123, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 132, 133, 130, 63, 64, 134, 127, 128, 129, 69, 70, 71, 72, - 0, 0, 122, 0, 0, 338, 30, 29, 80, 31, - 32, 33, 34, 35, 131, 37, 38, 39, 40, 125, - 124, 123, 44, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, 58, 59, 132, 133, - 130, 63, 64, 134, 127, 128, 129, 69, 70, 71, - 72, 0, 0, 122, 0, 0, 336, 30, 29, 80, - 31, 32, 33, 34, 35, 131, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, - 71, 72, 0, 0, 260, 0, 0, 289, 30, 29, - 80, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 125, 124, 123, 44, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 0, 0, 145, 0, 0, 189, 30, - 29, 80, 31, 32, 33, 34, 35, 131, 37, 38, - 39, 40, 125, 124, 123, 44, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 132, 133, 130, 63, 64, 134, 127, 128, 129, - 69, 70, 71, 72, 0, 0, 122, 30, 0, 169, - 31, 32, 33, 34, 35, 131, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, + 0, 0, 122, 0, 0, 341, 30, 29, 80, 31, + 32, 33, 34, 35, 131, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 0, 0, 261, 0, 0, 290, 30, 29, 80, + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 125, 124, 123, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, - 71, 72, 0, 0, 139, 0, 0, 186, 30, 29, + 71, 72, 0, 0, 145, 0, 0, 189, 30, 29, 80, 31, 32, 33, 34, 35, 131, 37, 38, 39, 40, 125, 124, 123, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 132, 133, 130, 63, 64, 134, 127, 128, 129, 69, - 70, 71, 72, 0, 0, 122, 30, 29, 80, 31, + 70, 71, 72, 0, 0, 122, 30, 0, 169, 31, 32, 33, 34, 35, 131, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 0, 0, 260, 30, 29, 80, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 40, 125, 124, 123, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 30, - 0, 145, 31, 32, 33, 34, 35, 131, 37, 38, - 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 0, 0, 139, 30, 29, 80, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, - 269, 72, 30, 29, 80, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 30, 29, 80, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, 58, 176, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, - 71, 72, 30, 29, 80, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 57, 58, 174, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 30, 29, 80, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, 58, 172, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, - 71, 72, 30, 29, 0, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 30, 0, 0, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, - 71, 72, 14, 0, 0, 15, 16, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 18, 17, 19, 20, - 0, 0, 0, 0, 0, 13, + 72, 0, 0, 139, 0, 0, 186, 30, 29, 80, + 31, 32, 33, 34, 35, 131, 37, 38, 39, 40, + 125, 124, 123, 44, 45, 46, 47, 48, 49, 50, + 51, 52, 53, 54, 55, 56, 57, 58, 59, 132, + 133, 130, 63, 64, 134, 127, 128, 129, 69, 70, + 71, 72, 0, 0, 122, 30, 29, 80, 31, 32, + 33, 34, 35, 131, 37, 38, 39, 40, 41, 42, + 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, + 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, + 0, 0, 261, 30, 29, 80, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 125, 124, 123, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 30, 0, + 145, 31, 32, 33, 34, 35, 131, 37, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, + 70, 71, 72, 0, 0, 139, 30, 29, 80, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 270, + 72, 30, 29, 80, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 30, 29, 80, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 176, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 30, 29, 80, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, 58, 174, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 30, 29, 80, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 172, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 30, 29, 0, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 30, 0, 0, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, } var protoPact = [...]int{ - 206, -1000, 1891, 1891, 132, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, 229, 1805, 976, 1850, 1850, 1625, - 1850, 1891, -1000, 264, 96, 260, 258, 92, -1000, -1000, + 96, -1000, 194, 194, 143, -1000, -1000, -1000, -1000, -1000, + -1000, -1000, -1000, -1000, 206, 1934, 1105, 1979, 1979, 1754, + 1979, 194, -1000, 267, 127, 260, 259, 123, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, 131, -1000, 1625, 56, 55, 54, -1000, - -1000, 52, 88, -1000, 86, 78, -1000, 559, 7, 1391, - 1532, 1487, 122, -1000, -1000, -1000, 77, -1000, -1000, -1000, - -1000, -1000, -1000, -1000, 916, -1000, 241, 190, -1000, 67, - 1292, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - -1000, -1000, -1000, 1760, 1715, 1670, 1850, 1850, 1850, 1625, - 251, 976, 1850, 26, 199, 1340, -1000, -1000, -1000, -1000, - 130, 1241, -1000, -1000, -1000, -1000, 84, -1000, -1000, -1000, - -1000, 1850, -1000, 856, -1000, 36, 33, -1000, 1805, -1000, - -1000, -1000, -1000, -1000, -1000, -1000, 67, -1000, 20, -1000, - -1000, 1850, 1850, 1850, 1850, 1850, 1850, 129, 2, -1000, - 81, 51, 943, 42, 40, -1000, -1000, -1000, 69, -1000, - -1000, -1000, -1000, 19, -1000, -1000, -1000, 430, -1000, 916, - -35, -1000, 1625, 128, 127, 125, 121, 114, 110, 256, - -1000, 976, 251, 181, 1439, 17, -1000, -1000, -1000, -1000, + -1000, -1000, -1000, 142, -1000, 1754, 67, 60, 59, -1000, + -1000, 57, 122, -1000, 121, 104, -1000, 628, 8, 1520, + 1661, 1616, 130, -1000, -1000, -1000, 102, -1000, -1000, -1000, + -1000, -1000, -1000, -1000, 1045, -1000, 286, 231, -1000, 69, + 1421, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, + -1000, -1000, -1000, 1889, 1844, 1799, 1979, 1979, 1979, 1754, + 249, 1105, 1979, 15, 218, 1469, -1000, -1000, -1000, -1000, + 141, 1370, -1000, -1000, -1000, -1000, 103, -1000, -1000, -1000, + -1000, 1979, -1000, 985, -1000, 43, 39, -1000, 1934, -1000, + -1000, -1000, -1000, -1000, -1000, -1000, 69, -1000, 23, -1000, + -1000, 1979, 1979, 1979, 1979, 1979, 1979, 140, 2, -1000, + 162, 56, 1072, 42, 38, -1000, -1000, -1000, 83, -1000, + -1000, -1000, -1000, 19, -1000, -1000, -1000, -1000, 436, -1000, + 1045, -34, -1000, 1754, 139, 138, 137, 136, 135, 133, + 250, -1000, 1105, 249, 178, 1568, 36, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, - 207, 16, 15, 243, 240, 1580, -1000, 363, -1000, 916, - 796, -1000, 5, 239, 233, 230, 225, 221, 213, 14, - -8, -1000, 107, -1000, -1000, -1000, 1190, -1000, -1000, -1000, - -1000, 1850, 1625, -1000, -1000, 976, -1000, 976, -30, 1625, - -1000, -1000, -9, -1000, 916, 736, -1000, -1000, 13, 50, - 12, 49, 11, 44, -1000, 976, 976, 75, 559, -1000, - -1000, 106, 29, -10, -11, 124, -1000, -1000, 496, 676, - -1000, -1000, 976, 1391, -1000, 976, 1391, -1000, 976, 1391, - -12, -1000, -1000, -1000, 200, 1850, 73, 72, 10, -1000, - 916, -1000, -15, 1139, -22, 1088, -25, 1037, 71, 9, - 102, -1000, -1000, 1580, 616, 70, -1000, 68, -1000, 63, - -1000, -1000, -1000, 976, 188, -32, -1000, -1000, -1000, -1000, - -28, 3, 47, 61, -1000, 976, -1000, 103, -1000, -29, - 94, -1000, -1000, -1000, 60, -1000, -1000, -1000, + -1000, 258, 20, 16, 248, 245, 1709, -1000, 369, -1000, + 1045, 925, -1000, 7, 242, 241, 239, 238, 233, 227, + 14, -7, -1000, 132, -1000, -1000, -1000, 1319, -1000, -1000, + -1000, -1000, 1979, 1754, -1000, -1000, 1105, -1000, 1105, 1, + 1754, -1000, -1000, -21, -1000, 1045, 865, -1000, -1000, 13, + 53, 12, 52, 11, 46, -1000, 1105, 1105, 97, 628, + -1000, -1000, 129, 24, -8, -9, 146, -1000, -1000, 565, + 502, 805, -1000, -1000, 1105, 1520, -1000, 1105, 1520, -1000, + 1105, 1520, -10, -1000, -1000, -1000, 224, 1979, 92, 86, + 10, -1000, 1045, -1000, 1045, -1000, -11, 1268, -20, 1217, + -24, 1166, 81, 4, 84, -1000, -1000, 1709, 745, 685, + 75, -1000, 74, -1000, 73, -1000, -1000, -1000, 1105, 221, + -31, -1000, -1000, -1000, -1000, -1000, -27, 3, 45, 71, + -1000, 1105, -1000, 111, -1000, -30, 107, -1000, -1000, -1000, + 70, -1000, -1000, -1000, } var protoPgo = [...]int{ - 0, 322, 321, 190, 277, 319, 311, 0, 11, 6, - 5, 308, 32, 20, 307, 29, 16, 15, 25, 7, - 19, 306, 305, 18, 17, 304, 303, 9, 2, 299, - 28, 297, 296, 27, 295, 236, 10, 13, 12, 291, - 290, 288, 14, 30, 286, 228, 26, 285, 283, 188, - 31, 281, 279, 21, 271, 270, 8, + 0, 345, 343, 213, 277, 342, 338, 0, 11, 6, + 5, 336, 31, 20, 334, 30, 16, 15, 26, 7, + 8, 332, 329, 18, 17, 324, 323, 10, 19, 313, + 29, 310, 309, 27, 308, 284, 9, 13, 12, 307, + 305, 301, 14, 39, 300, 256, 34, 298, 297, 230, + 25, 290, 283, 21, 282, 281, 2, } var protoR1 = [...]int{ @@ -460,22 +470,22 @@ var protoR1 = [...]int{ 19, 19, 7, 12, 12, 12, 13, 13, 14, 14, 15, 15, 16, 16, 16, 16, 16, 24, 24, 23, 25, 25, 25, 25, 25, 17, 27, 27, 27, 28, - 28, 29, 29, 29, 29, 29, 29, 29, 22, 22, - 26, 26, 26, 26, 20, 20, 30, 30, 30, 30, - 30, 30, 30, 30, 9, 9, 8, 33, 33, 33, - 32, 39, 39, 39, 38, 38, 38, 31, 31, 34, - 34, 21, 21, 21, 21, 21, 21, 21, 21, 21, - 21, 21, 21, 44, 44, 43, 43, 42, 42, 42, - 41, 41, 40, 40, 45, 47, 47, 47, 46, 46, - 46, 48, 48, 48, 48, 35, 37, 37, 37, 36, - 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, - 49, 51, 51, 51, 50, 50, 50, 52, 54, 54, - 54, 53, 53, 53, 55, 55, 56, 56, 11, 11, - 11, 10, 10, 18, 18, 18, 18, 18, 18, 18, + 28, 28, 29, 29, 29, 29, 29, 29, 29, 22, + 22, 26, 26, 26, 26, 26, 26, 20, 20, 30, + 30, 30, 30, 30, 30, 30, 30, 9, 9, 8, + 33, 33, 33, 32, 39, 39, 39, 38, 38, 38, + 31, 31, 34, 34, 21, 21, 21, 21, 21, 21, + 21, 21, 21, 21, 21, 21, 44, 44, 43, 43, + 42, 42, 42, 41, 41, 40, 40, 45, 47, 47, + 47, 46, 46, 46, 48, 48, 48, 48, 35, 37, + 37, 37, 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 49, 51, 51, 51, 50, 50, 50, + 52, 54, 54, 54, 53, 53, 53, 55, 55, 56, + 56, 11, 11, 11, 10, 10, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, - 18, 18, 18, 18, 18, 18, + 18, 18, 18, 18, 18, 18, 18, 18, 18, } var protoR2 = [...]int{ @@ -484,22 +494,22 @@ var protoR2 = [...]int{ 1, 1, 5, 1, 3, 4, 1, 2, 1, 4, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 2, 2, 2, 2, 3, 1, 2, 0, 1, - 2, 3, 4, 5, 3, 2, 5, 4, 1, 3, - 1, 3, 3, 5, 1, 1, 6, 6, 6, 5, - 9, 9, 9, 8, 3, 1, 3, 8, 8, 8, - 5, 2, 1, 0, 1, 1, 1, 5, 8, 10, - 13, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 3, 6, 3, 1, 1, 3, 3, - 3, 3, 3, 1, 5, 2, 1, 0, 1, 1, - 1, 4, 7, 4, 7, 5, 2, 1, 0, 1, + 2, 2, 3, 4, 5, 3, 2, 5, 4, 1, + 3, 1, 3, 3, 3, 5, 5, 1, 1, 6, + 6, 6, 5, 9, 9, 9, 8, 3, 1, 3, + 8, 8, 8, 5, 2, 1, 0, 1, 1, 1, + 5, 8, 10, 13, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 3, 6, 3, 1, + 1, 3, 3, 3, 3, 3, 1, 5, 2, 1, + 0, 1, 1, 1, 4, 7, 4, 7, 5, 2, + 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 5, 2, 1, 0, 1, 1, 1, + 5, 2, 1, 0, 1, 1, 1, 10, 12, 2, + 1, 2, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 5, 2, 1, 0, 1, 1, 1, 5, 2, 1, - 0, 1, 1, 1, 10, 12, 2, 1, 2, 1, - 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, } var protoChk = [...]int{ @@ -522,64 +532,66 @@ var protoChk = [...]int{ 6, 18, 5, 6, 18, -13, -14, 9, 61, 57, -36, -20, 38, -20, 38, -20, 38, -18, -43, -42, 5, -18, 64, -43, -40, 4, 57, -46, 53, 57, - -50, 57, -53, -18, 57, -28, 62, 55, -17, 64, - -19, -13, 67, -18, -18, -18, -18, -18, -18, 53, - 54, 69, 62, 42, 56, -21, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 54, 54, - 62, -24, -23, 65, 66, 67, -16, 69, -17, 64, - -27, 70, -20, 53, 53, 53, 53, 53, 53, 5, - -9, -8, -12, -42, 5, 43, -39, -38, -7, -31, - 54, -20, 62, 4, 54, 69, 54, 69, -56, 50, - -20, 70, -26, -15, 64, -27, 63, 68, 5, 5, - 5, 5, 5, 5, 54, 69, 62, 70, 53, 57, - -38, -18, -20, -9, -9, 68, -20, 70, 62, -27, - 63, 54, 69, 56, 54, 69, 56, 54, 69, 56, - -9, -8, 54, -15, 53, 63, 70, 70, 51, -15, - 64, 63, -9, -37, -9, -37, -9, -37, 70, 5, - -18, 54, 54, 67, -27, 70, 57, 70, 57, 70, - 57, 54, 54, 69, 53, -56, 63, 54, 54, 54, - -9, 5, 68, 70, 54, 69, 54, 56, 54, -9, - -11, -10, -7, 54, 70, 57, -10, 54, + -50, 57, -53, -18, 57, -28, 62, 54, 55, -17, + 64, -19, -13, 67, -18, -18, -18, -18, -18, -18, + 53, 54, 69, 62, 42, 56, -21, 25, 26, 27, + 28, 29, 30, 31, 32, 33, 34, 35, 36, 54, + 54, 62, -24, -23, 65, 66, 67, -16, 69, -17, + 64, -27, 70, -20, 53, 53, 53, 53, 53, 53, + 5, -9, -8, -12, -42, 5, 43, -39, -38, -7, + -31, 54, -20, 62, 4, 54, 69, 54, 69, -56, + 50, -20, 70, -26, -15, 64, -27, 63, 68, 5, + 5, 5, 5, 5, 5, 54, 69, 62, 70, 53, + 57, -38, -18, -20, -9, -9, 68, -20, 70, 62, + 54, -27, 63, 54, 69, 56, 54, 69, 56, 54, + 69, 56, -9, -8, 54, -15, 53, 63, 70, 70, + 51, -15, 64, -15, 64, 63, -9, -37, -9, -37, + -9, -37, 70, 5, -18, 54, 54, 67, -27, -27, + 70, 57, 70, 57, 70, 57, 54, 54, 69, 53, + -56, 63, 63, 54, 54, 54, -9, 5, 68, 70, + 54, 69, 54, 56, 54, -9, -11, -10, -7, 54, + 70, 57, -10, 54, } var protoDef = [...]int{ 4, -2, 1, 2, 0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 0, 0, 0, 0, 0, 0, 0, 3, 5, 0, 0, 0, 0, 0, 20, 21, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, - 203, 204, 205, 0, 23, 0, 0, 0, 0, 64, - 65, 0, 0, 16, 0, 0, 19, 0, 0, 128, - 117, 143, 150, 15, 17, 18, 0, 30, 31, 32, + 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, + 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, + 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, + 206, 207, 208, 0, 23, 0, 0, 0, 0, 67, + 68, 0, 0, 16, 0, 0, 19, 0, 0, 131, + 120, 146, 153, 15, 17, 18, 0, 30, 31, 32, 33, 34, 35, 36, 48, 37, 0, 0, 40, 24, - 0, 127, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 0, 0, 0, 0, 0, 0, 0, - 195, 169, 0, 194, 198, 0, 116, 118, 119, 120, - 0, 0, 142, 144, 145, 146, 0, 149, 151, 152, - 153, 0, 22, 0, 46, 49, 0, 58, 0, 38, - 42, 43, 39, 41, 44, 25, 26, 28, 0, 125, - 126, 0, 0, 0, 0, 0, 0, 0, 0, 106, - 107, 0, 0, 0, 0, 113, 114, 115, 0, 140, - 141, 147, 148, 0, 45, 47, 50, 0, 55, 48, - 0, 27, 0, 0, 0, 0, 0, 0, 0, 0, - 103, 0, 0, 0, 83, 0, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 102, 110, 111, - 0, 0, 0, 0, 0, 0, 51, 0, 54, 48, - 0, 59, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 75, 0, 105, 108, 109, 0, 82, 84, 85, - 86, 0, 0, 112, 121, 0, 123, 0, 0, 204, - 157, 52, 0, 60, 48, 0, 57, 29, 0, 0, - 0, 0, 0, 0, 69, 0, 0, 0, 0, 80, - 81, 0, 0, 0, 0, 0, 156, 53, 0, 0, - 56, 66, 0, 128, 67, 0, 128, 68, 0, 128, - 0, 74, 104, 76, 0, 0, 0, 0, 0, 61, - 48, 62, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 122, 124, 0, 0, 0, 77, 0, 78, 0, - 79, 73, 87, 0, 0, 0, 63, 70, 71, 72, - 0, 0, 0, 0, 89, 0, 154, 160, 88, 0, - 0, 159, 161, 162, 0, 155, 158, 90, + 0, 130, 132, 133, 134, 135, 136, 137, 138, 139, + 140, 141, 142, 0, 0, 0, 0, 0, 0, 0, + 198, 172, 0, 197, 201, 0, 119, 121, 122, 123, + 0, 0, 145, 147, 148, 149, 0, 152, 154, 155, + 156, 0, 22, 0, 46, 49, 0, 59, 0, 38, + 42, 43, 39, 41, 44, 25, 26, 28, 0, 128, + 129, 0, 0, 0, 0, 0, 0, 0, 0, 109, + 110, 0, 0, 0, 0, 116, 117, 118, 0, 143, + 144, 150, 151, 0, 45, 47, 50, 51, 0, 56, + 48, 0, 27, 0, 0, 0, 0, 0, 0, 0, + 0, 106, 0, 0, 0, 86, 0, 94, 95, 96, + 97, 98, 99, 100, 101, 102, 103, 104, 105, 113, + 114, 0, 0, 0, 0, 0, 0, 52, 0, 55, + 48, 0, 60, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 78, 0, 108, 111, 112, 0, 85, 87, + 88, 89, 0, 0, 115, 124, 0, 126, 0, 0, + 207, 160, 53, 0, 61, 48, 0, 58, 29, 0, + 0, 0, 0, 0, 0, 72, 0, 0, 0, 0, + 83, 84, 0, 0, 0, 0, 0, 159, 54, 0, + 0, 0, 57, 69, 0, 131, 70, 0, 131, 71, + 0, 131, 0, 77, 107, 79, 0, 0, 0, 0, + 0, 62, 48, 63, 48, 64, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 125, 127, 0, 0, 0, + 0, 80, 0, 81, 0, 82, 76, 90, 0, 0, + 0, 65, 66, 73, 74, 75, 0, 0, 0, 0, + 92, 0, 157, 163, 91, 0, 0, 162, 164, 165, + 0, 158, 161, 93, } var protoTok1 = [...]int{ @@ -1245,16 +1257,22 @@ protodefault: protoVAL.agg = protoDollar[1].agg } case 51: + protoDollar = protoS[protopt-2 : protopt+1] + //line proto.y:317 + { + protoVAL.agg = protoDollar[1].agg + } + case 52: protoDollar = protoS[protopt-3 : protopt+1] - //line proto.y:318 + //line proto.y:321 { a := &aggregateEntryNode{name: protoDollar[1].aggName, val: protoDollar[3].v} a.setRange(protoDollar[1].aggName, protoDollar[3].v) protoVAL.agg = []*aggregateEntryNode{a} } - case 52: + case 53: protoDollar = protoS[protopt-4 : protopt+1] - //line proto.y:323 + //line proto.y:326 { s := &sliceLiteralNode{} s.setRange(protoDollar[3].b, protoDollar[4].b) @@ -1262,9 +1280,9 @@ protodefault: a.setRange(protoDollar[1].aggName, protoDollar[4].b) protoVAL.agg = []*aggregateEntryNode{a} } - case 53: + case 54: protoDollar = protoS[protopt-5 : protopt+1] - //line proto.y:330 + //line proto.y:333 { s := &sliceLiteralNode{elements: protoDollar[4].sl} s.setRange(protoDollar[3].b, protoDollar[5].b) @@ -1272,25 +1290,25 @@ protodefault: a.setRange(protoDollar[1].aggName, protoDollar[5].b) protoVAL.agg = []*aggregateEntryNode{a} } - case 54: + case 55: protoDollar = protoS[protopt-3 : protopt+1] - //line proto.y:337 + //line proto.y:340 { a := &aggregateEntryNode{name: protoDollar[1].aggName, val: protoDollar[3].v} a.setRange(protoDollar[1].aggName, protoDollar[3].v) protoVAL.agg = []*aggregateEntryNode{a} } - case 55: + case 56: protoDollar = protoS[protopt-2 : protopt+1] - //line proto.y:342 + //line proto.y:345 { a := &aggregateEntryNode{name: protoDollar[1].aggName, val: protoDollar[2].v} a.setRange(protoDollar[1].aggName, protoDollar[2].v) protoVAL.agg = []*aggregateEntryNode{a} } - case 56: + case 57: protoDollar = protoS[protopt-5 : protopt+1] - //line proto.y:347 + //line proto.y:350 { s := &aggregateLiteralNode{elements: protoDollar[4].agg} s.setRange(protoDollar[3].b, protoDollar[5].b) @@ -1298,9 +1316,9 @@ protodefault: a.setRange(protoDollar[1].aggName, protoDollar[5].b) protoVAL.agg = []*aggregateEntryNode{a} } - case 57: + case 58: protoDollar = protoS[protopt-4 : protopt+1] - //line proto.y:354 + //line proto.y:357 { s := &aggregateLiteralNode{elements: protoDollar[3].agg} s.setRange(protoDollar[2].b, protoDollar[4].b) @@ -1308,127 +1326,141 @@ protodefault: a.setRange(protoDollar[1].aggName, protoDollar[4].b) protoVAL.agg = []*aggregateEntryNode{a} } - case 58: + case 59: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:362 + //line proto.y:365 { protoVAL.aggName = &aggregateNameNode{name: protoDollar[1].id} protoVAL.aggName.setRange(protoDollar[1].id, protoDollar[1].id) } - case 59: + case 60: protoDollar = protoS[protopt-3 : protopt+1] - //line proto.y:366 + //line proto.y:369 { protoVAL.aggName = &aggregateNameNode{name: protoDollar[2].id, isExtension: true} protoVAL.aggName.setRange(protoDollar[1].b, protoDollar[3].b) } - case 60: + case 61: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:371 + //line proto.y:374 { protoVAL.sl = []valueNode{protoDollar[1].v} } - case 61: + case 62: protoDollar = protoS[protopt-3 : protopt+1] - //line proto.y:374 + //line proto.y:377 { protoVAL.sl = append(protoDollar[1].sl, protoDollar[3].v) } - case 62: + case 63: protoDollar = protoS[protopt-3 : protopt+1] - //line proto.y:377 + //line proto.y:380 + { + protoVAL.sl = append(protoDollar[1].sl, protoDollar[3].v) + } + case 64: + protoDollar = protoS[protopt-3 : protopt+1] + //line proto.y:383 { s := &aggregateLiteralNode{elements: protoDollar[2].agg} s.setRange(protoDollar[1].b, protoDollar[3].b) protoVAL.sl = []valueNode{s} } - case 63: + case 65: protoDollar = protoS[protopt-5 : protopt+1] - //line proto.y:382 + //line proto.y:388 { s := &aggregateLiteralNode{elements: protoDollar[4].agg} s.setRange(protoDollar[3].b, protoDollar[5].b) protoVAL.sl = append(protoDollar[1].sl, s) } case 66: + protoDollar = protoS[protopt-5 : protopt+1] + //line proto.y:393 + { + s := &aggregateLiteralNode{elements: protoDollar[4].agg} + s.setRange(protoDollar[3].b, protoDollar[5].b) + protoVAL.sl = append(protoDollar[1].sl, s) + } + case 69: protoDollar = protoS[protopt-6 : protopt+1] - //line proto.y:391 + //line proto.y:402 { checkTag(protolex, protoDollar[5].ui.start(), protoDollar[5].ui.val) lbl := &labelNode{basicNode: protoDollar[1].id.basicNode, required: true} protoVAL.fld = &fieldNode{label: lbl, fldType: protoDollar[2].id, name: protoDollar[3].id, tag: protoDollar[5].ui} protoVAL.fld.setRange(protoDollar[1].id, protoDollar[6].b) } - case 67: + case 70: protoDollar = protoS[protopt-6 : protopt+1] - //line proto.y:397 + //line proto.y:408 { checkTag(protolex, protoDollar[5].ui.start(), protoDollar[5].ui.val) lbl := &labelNode{basicNode: protoDollar[1].id.basicNode} protoVAL.fld = &fieldNode{label: lbl, fldType: protoDollar[2].id, name: protoDollar[3].id, tag: protoDollar[5].ui} protoVAL.fld.setRange(protoDollar[1].id, protoDollar[6].b) } - case 68: + case 71: protoDollar = protoS[protopt-6 : protopt+1] - //line proto.y:403 + //line proto.y:414 { checkTag(protolex, protoDollar[5].ui.start(), protoDollar[5].ui.val) lbl := &labelNode{basicNode: protoDollar[1].id.basicNode, repeated: true} protoVAL.fld = &fieldNode{label: lbl, fldType: protoDollar[2].id, name: protoDollar[3].id, tag: protoDollar[5].ui} protoVAL.fld.setRange(protoDollar[1].id, protoDollar[6].b) } - case 69: + case 72: protoDollar = protoS[protopt-5 : protopt+1] - //line proto.y:409 + //line proto.y:420 { checkTag(protolex, protoDollar[4].ui.start(), protoDollar[4].ui.val) protoVAL.fld = &fieldNode{fldType: protoDollar[1].id, name: protoDollar[2].id, tag: protoDollar[4].ui} protoVAL.fld.setRange(protoDollar[1].id, protoDollar[5].b) } - case 70: + case 73: protoDollar = protoS[protopt-9 : protopt+1] - //line proto.y:414 + //line proto.y:425 { checkTag(protolex, protoDollar[5].ui.start(), protoDollar[5].ui.val) lbl := &labelNode{basicNode: protoDollar[1].id.basicNode, required: true} protoVAL.fld = &fieldNode{label: lbl, fldType: protoDollar[2].id, name: protoDollar[3].id, tag: protoDollar[5].ui, options: protoDollar[7].opts} protoVAL.fld.setRange(protoDollar[1].id, protoDollar[9].b) } - case 71: + case 74: protoDollar = protoS[protopt-9 : protopt+1] - //line proto.y:420 + //line proto.y:431 { checkTag(protolex, protoDollar[5].ui.start(), protoDollar[5].ui.val) lbl := &labelNode{basicNode: protoDollar[1].id.basicNode} protoVAL.fld = &fieldNode{label: lbl, fldType: protoDollar[2].id, name: protoDollar[3].id, tag: protoDollar[5].ui, options: protoDollar[7].opts} protoVAL.fld.setRange(protoDollar[1].id, protoDollar[9].b) } - case 72: + case 75: protoDollar = protoS[protopt-9 : protopt+1] - //line proto.y:426 + //line proto.y:437 { checkTag(protolex, protoDollar[5].ui.start(), protoDollar[5].ui.val) lbl := &labelNode{basicNode: protoDollar[1].id.basicNode, repeated: true} protoVAL.fld = &fieldNode{label: lbl, fldType: protoDollar[2].id, name: protoDollar[3].id, tag: protoDollar[5].ui, options: protoDollar[7].opts} protoVAL.fld.setRange(protoDollar[1].id, protoDollar[9].b) } - case 73: + case 76: protoDollar = protoS[protopt-8 : protopt+1] - //line proto.y:432 + //line proto.y:443 { checkTag(protolex, protoDollar[4].ui.start(), protoDollar[4].ui.val) protoVAL.fld = &fieldNode{fldType: protoDollar[1].id, name: protoDollar[2].id, tag: protoDollar[4].ui, options: protoDollar[6].opts} protoVAL.fld.setRange(protoDollar[1].id, protoDollar[8].b) } - case 74: + case 77: protoDollar = protoS[protopt-3 : protopt+1] - //line proto.y:438 + //line proto.y:449 { protoVAL.opts = append(protoDollar[1].opts, protoDollar[3].opts...) } - case 76: + case 79: protoDollar = protoS[protopt-3 : protopt+1] - //line proto.y:443 + //line proto.y:454 { n := &optionNameNode{parts: protoDollar[1].optNm} n.setRange(protoDollar[1].optNm[0], protoDollar[1].optNm[len(protoDollar[1].optNm)-1]) @@ -1436,9 +1468,9 @@ protodefault: o.setRange(protoDollar[1].optNm[0], protoDollar[3].v) protoVAL.opts = []*optionNode{o} } - case 77: + case 80: protoDollar = protoS[protopt-8 : protopt+1] - //line proto.y:451 + //line proto.y:462 { checkTag(protolex, protoDollar[5].ui.start(), protoDollar[5].ui.val) if !unicode.IsUpper(rune(protoDollar[3].id.val[0])) { @@ -1448,9 +1480,9 @@ protodefault: protoVAL.grp = &groupNode{groupKeyword: protoDollar[2].id, label: lbl, name: protoDollar[3].id, tag: protoDollar[5].ui, decls: protoDollar[7].msgDecls} protoVAL.grp.setRange(protoDollar[1].id, protoDollar[8].b) } - case 78: + case 81: protoDollar = protoS[protopt-8 : protopt+1] - //line proto.y:460 + //line proto.y:471 { checkTag(protolex, protoDollar[5].ui.start(), protoDollar[5].ui.val) if !unicode.IsUpper(rune(protoDollar[3].id.val[0])) { @@ -1460,9 +1492,9 @@ protodefault: protoVAL.grp = &groupNode{groupKeyword: protoDollar[2].id, label: lbl, name: protoDollar[3].id, tag: protoDollar[5].ui, decls: protoDollar[7].msgDecls} protoVAL.grp.setRange(protoDollar[1].id, protoDollar[8].b) } - case 79: + case 82: protoDollar = protoS[protopt-8 : protopt+1] - //line proto.y:469 + //line proto.y:480 { checkTag(protolex, protoDollar[5].ui.start(), protoDollar[5].ui.val) if !unicode.IsUpper(rune(protoDollar[3].id.val[0])) { @@ -1472,9 +1504,9 @@ protodefault: protoVAL.grp = &groupNode{groupKeyword: protoDollar[2].id, label: lbl, name: protoDollar[3].id, tag: protoDollar[5].ui, decls: protoDollar[7].msgDecls} protoVAL.grp.setRange(protoDollar[1].id, protoDollar[8].b) } - case 80: + case 83: protoDollar = protoS[protopt-5 : protopt+1] - //line proto.y:479 + //line proto.y:490 { c := 0 for _, el := range protoDollar[4].ooDecls { @@ -1488,91 +1520,91 @@ protodefault: protoVAL.oo = &oneOfNode{name: protoDollar[2].id, decls: protoDollar[4].ooDecls} protoVAL.oo.setRange(protoDollar[1].id, protoDollar[5].b) } - case 81: + case 84: protoDollar = protoS[protopt-2 : protopt+1] - //line proto.y:493 + //line proto.y:504 { protoVAL.ooDecls = append(protoDollar[1].ooDecls, protoDollar[2].ooDecls...) } - case 83: + case 86: protoDollar = protoS[protopt-0 : protopt+1] - //line proto.y:497 + //line proto.y:508 { protoVAL.ooDecls = nil } - case 84: + case 87: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:501 + //line proto.y:512 { protoVAL.ooDecls = []*oneOfElement{{option: protoDollar[1].opts[0]}} } - case 85: + case 88: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:504 + //line proto.y:515 { protoVAL.ooDecls = []*oneOfElement{{field: protoDollar[1].fld}} } - case 86: + case 89: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:507 + //line proto.y:518 { protoVAL.ooDecls = []*oneOfElement{{empty: protoDollar[1].b}} } - case 87: + case 90: protoDollar = protoS[protopt-5 : protopt+1] - //line proto.y:511 + //line proto.y:522 { checkTag(protolex, protoDollar[4].ui.start(), protoDollar[4].ui.val) protoVAL.fld = &fieldNode{fldType: protoDollar[1].id, name: protoDollar[2].id, tag: protoDollar[4].ui} protoVAL.fld.setRange(protoDollar[1].id, protoDollar[5].b) } - case 88: + case 91: protoDollar = protoS[protopt-8 : protopt+1] - //line proto.y:516 + //line proto.y:527 { checkTag(protolex, protoDollar[4].ui.start(), protoDollar[4].ui.val) protoVAL.fld = &fieldNode{fldType: protoDollar[1].id, name: protoDollar[2].id, tag: protoDollar[4].ui, options: protoDollar[6].opts} protoVAL.fld.setRange(protoDollar[1].id, protoDollar[8].b) } - case 89: + case 92: protoDollar = protoS[protopt-10 : protopt+1] - //line proto.y:522 + //line proto.y:533 { checkTag(protolex, protoDollar[9].ui.start(), protoDollar[9].ui.val) protoVAL.mapFld = &mapFieldNode{mapKeyword: protoDollar[1].id, keyType: protoDollar[3].id, valueType: protoDollar[5].id, name: protoDollar[7].id, tag: protoDollar[9].ui} protoVAL.mapFld.setRange(protoDollar[1].id, protoDollar[10].b) } - case 90: + case 93: protoDollar = protoS[protopt-13 : protopt+1] - //line proto.y:527 + //line proto.y:538 { checkTag(protolex, protoDollar[9].ui.start(), protoDollar[9].ui.val) protoVAL.mapFld = &mapFieldNode{mapKeyword: protoDollar[1].id, keyType: protoDollar[3].id, valueType: protoDollar[5].id, name: protoDollar[7].id, tag: protoDollar[9].ui, options: protoDollar[11].opts} protoVAL.mapFld.setRange(protoDollar[1].id, protoDollar[13].b) } - case 103: + case 106: protoDollar = protoS[protopt-3 : protopt+1] - //line proto.y:546 + //line proto.y:557 { protoVAL.ext = &extensionRangeNode{ranges: protoDollar[2].rngs} protoVAL.ext.setRange(protoDollar[1].id, protoDollar[3].b) } - case 104: + case 107: protoDollar = protoS[protopt-6 : protopt+1] - //line proto.y:550 + //line proto.y:561 { protoVAL.ext = &extensionRangeNode{ranges: protoDollar[2].rngs, options: protoDollar[4].opts} protoVAL.ext.setRange(protoDollar[1].id, protoDollar[6].b) } - case 105: + case 108: protoDollar = protoS[protopt-3 : protopt+1] - //line proto.y:555 + //line proto.y:566 { protoVAL.rngs = append(protoDollar[1].rngs, protoDollar[3].rngs...) } - case 107: + case 110: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:560 + //line proto.y:571 { if protoDollar[1].ui.val > internal.MaxTag { lexError(protolex, protoDollar[1].ui.start(), fmt.Sprintf("range includes out-of-range tag: %d (should be between 0 and %d)", protoDollar[1].ui.val, internal.MaxTag)) @@ -1581,9 +1613,9 @@ protodefault: r.setRange(protoDollar[1].ui, protoDollar[1].ui) protoVAL.rngs = []*rangeNode{r} } - case 108: + case 111: protoDollar = protoS[protopt-3 : protopt+1] - //line proto.y:568 + //line proto.y:579 { if protoDollar[1].ui.val > internal.MaxTag { lexError(protolex, protoDollar[1].ui.start(), fmt.Sprintf("range start is out-of-range tag: %d (should be between 0 and %d)", protoDollar[1].ui.val, internal.MaxTag)) @@ -1598,9 +1630,9 @@ protodefault: r.setRange(protoDollar[1].ui, protoDollar[3].ui) protoVAL.rngs = []*rangeNode{r} } - case 109: + case 112: protoDollar = protoS[protopt-3 : protopt+1] - //line proto.y:582 + //line proto.y:593 { if protoDollar[1].ui.val > internal.MaxTag { lexError(protolex, protoDollar[1].ui.start(), fmt.Sprintf("range start is out-of-range tag: %d (should be between 0 and %d)", protoDollar[1].ui.val, internal.MaxTag)) @@ -1610,16 +1642,16 @@ protodefault: r.setRange(protoDollar[1].ui, protoDollar[3].id) protoVAL.rngs = []*rangeNode{r} } - case 110: + case 113: protoDollar = protoS[protopt-3 : protopt+1] - //line proto.y:592 + //line proto.y:603 { protoVAL.resvd = &reservedNode{ranges: protoDollar[2].rngs} protoVAL.resvd.setRange(protoDollar[1].id, protoDollar[3].b) } - case 111: + case 114: protoDollar = protoS[protopt-3 : protopt+1] - //line proto.y:596 + //line proto.y:607 { rsvd := map[string]struct{}{} for _, n := range protoDollar[2].names { @@ -1632,21 +1664,21 @@ protodefault: protoVAL.resvd = &reservedNode{names: protoDollar[2].names} protoVAL.resvd.setRange(protoDollar[1].id, protoDollar[3].b) } - case 112: + case 115: protoDollar = protoS[protopt-3 : protopt+1] - //line proto.y:609 + //line proto.y:620 { protoVAL.names = append(protoDollar[1].names, protoDollar[3].str) } - case 113: + case 116: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:612 + //line proto.y:623 { protoVAL.names = []*stringLiteralNode{protoDollar[1].str} } - case 114: + case 117: protoDollar = protoS[protopt-5 : protopt+1] - //line proto.y:616 + //line proto.y:627 { c := 0 for _, el := range protoDollar[4].enDecls { @@ -1660,156 +1692,156 @@ protodefault: protoVAL.en = &enumNode{name: protoDollar[2].id, decls: protoDollar[4].enDecls} protoVAL.en.setRange(protoDollar[1].id, protoDollar[5].b) } - case 115: + case 118: protoDollar = protoS[protopt-2 : protopt+1] - //line proto.y:630 + //line proto.y:641 { protoVAL.enDecls = append(protoDollar[1].enDecls, protoDollar[2].enDecls...) } - case 117: + case 120: protoDollar = protoS[protopt-0 : protopt+1] - //line proto.y:634 + //line proto.y:645 { protoVAL.enDecls = nil } - case 118: + case 121: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:638 + //line proto.y:649 { protoVAL.enDecls = []*enumElement{{option: protoDollar[1].opts[0]}} } - case 119: + case 122: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:641 + //line proto.y:652 { protoVAL.enDecls = []*enumElement{{value: protoDollar[1].env}} } - case 120: + case 123: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:644 + //line proto.y:655 { protoVAL.enDecls = []*enumElement{{empty: protoDollar[1].b}} } - case 121: + case 124: protoDollar = protoS[protopt-4 : protopt+1] - //line proto.y:648 + //line proto.y:659 { checkUint64InInt32Range(protolex, protoDollar[3].ui.start(), protoDollar[3].ui.val) protoVAL.env = &enumValueNode{name: protoDollar[1].id, number: protoDollar[3].ui} protoVAL.env.setRange(protoDollar[1].id, protoDollar[4].b) } - case 122: + case 125: protoDollar = protoS[protopt-7 : protopt+1] - //line proto.y:653 + //line proto.y:664 { checkUint64InInt32Range(protolex, protoDollar[3].ui.start(), protoDollar[3].ui.val) protoVAL.env = &enumValueNode{name: protoDollar[1].id, number: protoDollar[3].ui, options: protoDollar[5].opts} protoVAL.env.setRange(protoDollar[1].id, protoDollar[7].b) } - case 123: + case 126: protoDollar = protoS[protopt-4 : protopt+1] - //line proto.y:658 + //line proto.y:669 { checkInt64InInt32Range(protolex, protoDollar[3].i.start(), protoDollar[3].i.val) protoVAL.env = &enumValueNode{name: protoDollar[1].id, numberN: protoDollar[3].i} protoVAL.env.setRange(protoDollar[1].id, protoDollar[4].b) } - case 124: + case 127: protoDollar = protoS[protopt-7 : protopt+1] - //line proto.y:663 + //line proto.y:674 { checkInt64InInt32Range(protolex, protoDollar[3].i.start(), protoDollar[3].i.val) protoVAL.env = &enumValueNode{name: protoDollar[1].id, numberN: protoDollar[3].i, options: protoDollar[5].opts} protoVAL.env.setRange(protoDollar[1].id, protoDollar[7].b) } - case 125: + case 128: protoDollar = protoS[protopt-5 : protopt+1] - //line proto.y:669 + //line proto.y:680 { protoVAL.msg = &messageNode{name: protoDollar[2].id, decls: protoDollar[4].msgDecls} protoVAL.msg.setRange(protoDollar[1].id, protoDollar[5].b) } - case 126: + case 129: protoDollar = protoS[protopt-2 : protopt+1] - //line proto.y:674 + //line proto.y:685 { protoVAL.msgDecls = append(protoDollar[1].msgDecls, protoDollar[2].msgDecls...) } - case 128: + case 131: protoDollar = protoS[protopt-0 : protopt+1] - //line proto.y:678 + //line proto.y:689 { protoVAL.msgDecls = nil } - case 129: + case 132: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:682 + //line proto.y:693 { protoVAL.msgDecls = []*messageElement{{field: protoDollar[1].fld}} } - case 130: + case 133: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:685 + //line proto.y:696 { protoVAL.msgDecls = []*messageElement{{enum: protoDollar[1].en}} } - case 131: + case 134: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:688 + //line proto.y:699 { protoVAL.msgDecls = []*messageElement{{nested: protoDollar[1].msg}} } - case 132: + case 135: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:691 + //line proto.y:702 { protoVAL.msgDecls = []*messageElement{{extend: protoDollar[1].extend}} } - case 133: + case 136: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:694 + //line proto.y:705 { protoVAL.msgDecls = []*messageElement{{extensionRange: protoDollar[1].ext}} } - case 134: + case 137: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:697 + //line proto.y:708 { protoVAL.msgDecls = []*messageElement{{group: protoDollar[1].grp}} } - case 135: + case 138: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:700 + //line proto.y:711 { protoVAL.msgDecls = []*messageElement{{option: protoDollar[1].opts[0]}} } - case 136: + case 139: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:703 + //line proto.y:714 { protoVAL.msgDecls = []*messageElement{{oneOf: protoDollar[1].oo}} } - case 137: + case 140: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:706 + //line proto.y:717 { protoVAL.msgDecls = []*messageElement{{mapField: protoDollar[1].mapFld}} } - case 138: + case 141: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:709 + //line proto.y:720 { protoVAL.msgDecls = []*messageElement{{reserved: protoDollar[1].resvd}} } - case 139: + case 142: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:712 + //line proto.y:723 { protoVAL.msgDecls = []*messageElement{{empty: protoDollar[1].b}} } - case 140: + case 143: protoDollar = protoS[protopt-5 : protopt+1] - //line proto.y:716 + //line proto.y:727 { c := 0 for _, el := range protoDollar[4].extDecls { @@ -1823,122 +1855,122 @@ protodefault: protoVAL.extend = &extendNode{extendee: protoDollar[2].id, decls: protoDollar[4].extDecls} protoVAL.extend.setRange(protoDollar[1].id, protoDollar[5].b) } - case 141: + case 144: protoDollar = protoS[protopt-2 : protopt+1] - //line proto.y:730 + //line proto.y:741 { protoVAL.extDecls = append(protoDollar[1].extDecls, protoDollar[2].extDecls...) } - case 143: + case 146: protoDollar = protoS[protopt-0 : protopt+1] - //line proto.y:734 + //line proto.y:745 { protoVAL.extDecls = nil } - case 144: + case 147: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:738 + //line proto.y:749 { protoVAL.extDecls = []*extendElement{{field: protoDollar[1].fld}} } - case 145: + case 148: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:741 + //line proto.y:752 { protoVAL.extDecls = []*extendElement{{group: protoDollar[1].grp}} } - case 146: + case 149: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:744 + //line proto.y:755 { protoVAL.extDecls = []*extendElement{{empty: protoDollar[1].b}} } - case 147: + case 150: protoDollar = protoS[protopt-5 : protopt+1] - //line proto.y:748 + //line proto.y:759 { protoVAL.svc = &serviceNode{name: protoDollar[2].id, decls: protoDollar[4].svcDecls} protoVAL.svc.setRange(protoDollar[1].id, protoDollar[5].b) } - case 148: + case 151: protoDollar = protoS[protopt-2 : protopt+1] - //line proto.y:753 + //line proto.y:764 { protoVAL.svcDecls = append(protoDollar[1].svcDecls, protoDollar[2].svcDecls...) } - case 150: + case 153: protoDollar = protoS[protopt-0 : protopt+1] - //line proto.y:757 + //line proto.y:768 { protoVAL.svcDecls = nil } - case 151: + case 154: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:764 + //line proto.y:775 { protoVAL.svcDecls = []*serviceElement{{option: protoDollar[1].opts[0]}} } - case 152: + case 155: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:767 + //line proto.y:778 { protoVAL.svcDecls = []*serviceElement{{rpc: protoDollar[1].mtd}} } - case 153: + case 156: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:770 + //line proto.y:781 { protoVAL.svcDecls = []*serviceElement{{empty: protoDollar[1].b}} } - case 154: + case 157: protoDollar = protoS[protopt-10 : protopt+1] - //line proto.y:774 + //line proto.y:785 { protoVAL.mtd = &methodNode{name: protoDollar[2].id, input: protoDollar[4].rpcType, output: protoDollar[8].rpcType} protoVAL.mtd.setRange(protoDollar[1].id, protoDollar[10].b) } - case 155: + case 158: protoDollar = protoS[protopt-12 : protopt+1] - //line proto.y:778 + //line proto.y:789 { protoVAL.mtd = &methodNode{name: protoDollar[2].id, input: protoDollar[4].rpcType, output: protoDollar[8].rpcType, options: protoDollar[11].opts} protoVAL.mtd.setRange(protoDollar[1].id, protoDollar[12].b) } - case 156: + case 159: protoDollar = protoS[protopt-2 : protopt+1] - //line proto.y:783 + //line proto.y:794 { protoVAL.rpcType = &rpcTypeNode{msgType: protoDollar[2].id, streamKeyword: protoDollar[1].id} protoVAL.rpcType.setRange(protoDollar[1].id, protoDollar[2].id) } - case 157: + case 160: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:787 + //line proto.y:798 { protoVAL.rpcType = &rpcTypeNode{msgType: protoDollar[1].id} protoVAL.rpcType.setRange(protoDollar[1].id, protoDollar[1].id) } - case 158: + case 161: protoDollar = protoS[protopt-2 : protopt+1] - //line proto.y:792 + //line proto.y:803 { protoVAL.opts = append(protoDollar[1].opts, protoDollar[2].opts...) } - case 160: + case 163: protoDollar = protoS[protopt-0 : protopt+1] - //line proto.y:796 + //line proto.y:807 { protoVAL.opts = nil } - case 161: + case 164: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:800 + //line proto.y:811 { protoVAL.opts = protoDollar[1].opts } - case 162: + case 165: protoDollar = protoS[protopt-1 : protopt+1] - //line proto.y:803 + //line proto.y:814 { protoVAL.opts = nil }