From 359c11123145274555a507cba707987c2c5ed355 Mon Sep 17 00:00:00 2001 From: David Rose Date: Wed, 19 May 2004 17:26:38 +0000 Subject: [PATCH] prebuild-bison --- direct/src/dcparser/dcLexer.cxx.prebuilt | 351 ++++++------ direct/src/dcparser/dcParser.cxx.prebuilt | 620 ++++++++++++---------- direct/src/dcparser/dcParser.h.prebuilt | 60 ++- 3 files changed, 545 insertions(+), 486 deletions(-) diff --git a/direct/src/dcparser/dcLexer.cxx.prebuilt b/direct/src/dcparser/dcLexer.cxx.prebuilt index 551d07e6a0..a180c75a2f 100644 --- a/direct/src/dcparser/dcLexer.cxx.prebuilt +++ b/direct/src/dcparser/dcLexer.cxx.prebuilt @@ -300,28 +300,29 @@ static void yy_fatal_error YY_PROTO(( yyconst char msg[] )); *yy_cp = '\0'; \ yy_c_buf_p = yy_cp; -#define YY_NUM_RULES 42 -#define YY_END_OF_BUFFER 43 -static yyconst short int yy_accept[165] = +#define YY_NUM_RULES 44 +#define YY_END_OF_BUFFER 45 +static yyconst short int yy_accept[173] = { 0, - 0, 0, 43, 41, 2, 1, 38, 41, 41, 41, - 35, 35, 39, 40, 40, 40, 40, 40, 40, 40, - 40, 40, 40, 40, 40, 40, 1, 0, 35, 37, - 4, 3, 37, 36, 40, 40, 40, 40, 40, 30, - 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, - 0, 3, 36, 40, 40, 40, 40, 40, 40, 40, - 40, 40, 40, 28, 29, 40, 40, 40, 0, 37, - 40, 16, 40, 40, 40, 40, 40, 40, 40, 40, - 6, 25, 40, 40, 40, 40, 40, 40, 40, 40, - 40, 40, 40, 7, 8, 9, 40, 40, 40, 40, + 0, 0, 45, 43, 2, 1, 40, 43, 43, 43, + 37, 37, 41, 42, 42, 42, 42, 42, 42, 42, + 42, 42, 42, 42, 42, 42, 1, 0, 37, 39, + 4, 3, 39, 38, 42, 42, 42, 42, 42, 32, + 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, + 42, 42, 0, 3, 38, 42, 42, 42, 42, 42, + 42, 42, 42, 42, 42, 42, 42, 30, 31, 42, + 42, 42, 0, 39, 42, 18, 42, 42, 42, 42, + 42, 6, 42, 42, 42, 42, 8, 27, 42, 42, + 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, - 40, 40, 40, 10, 34, 17, 40, 32, 31, 5, - 40, 40, 40, 40, 40, 40, 15, 11, 12, 13, - 40, 40, 14, 40, 40, 40, 33, 40, 40, 40, - 40, 40, 40, 40, 40, 40, 26, 40, 40, 40, - 40, 27, 40, 40, 18, 40, 40, 40, 40, 19, - 20, 40, 40, 40, 21, 22, 23, 40, 40, 40, - 40, 40, 24, 0 + 9, 10, 11, 42, 42, 42, 42, 42, 42, 42, + 12, 36, 19, 42, 34, 33, 5, 42, 7, 42, + 42, 42, 42, 42, 17, 13, 14, 15, 42, 42, + 16, 42, 42, 42, 35, 42, 42, 42, 42, 42, + 42, 42, 42, 42, 28, 42, 42, 42, 42, 29, + 42, 42, 20, 42, 42, 42, 42, 21, 22, 42, + 42, 42, 23, 24, 25, 42, 42, 42, 42, 42, + 26, 0 } ; static yyconst int yy_ec[256] = @@ -365,112 +366,114 @@ static yyconst int yy_meta[43] = 7, 7 } ; -static yyconst short int yy_base[172] = +static yyconst short int yy_base[180] = { 0, - 0, 0, 207, 208, 208, 0, 208, 199, 0, 38, - 37, 198, 208, 0, 176, 16, 174, 25, 173, 170, - 168, 159, 187, 28, 160, 168, 0, 0, 188, 31, - 208, 0, 0, 0, 0, 159, 161, 160, 19, 0, - 162, 158, 152, 159, 156, 153, 155, 150, 148, 151, - 175, 0, 0, 155, 157, 157, 152, 151, 154, 153, - 47, 70, 137, 0, 0, 134, 143, 133, 163, 162, - 144, 154, 141, 141, 132, 126, 124, 145, 148, 145, - 136, 0, 131, 127, 123, 54, 114, 141, 128, 111, - 125, 112, 132, 125, 124, 0, 109, 112, 107, 114, + 0, 0, 215, 216, 216, 0, 216, 207, 0, 38, + 37, 206, 216, 0, 184, 16, 182, 25, 20, 22, + 178, 169, 197, 29, 170, 178, 0, 0, 198, 37, + 216, 0, 0, 0, 0, 169, 171, 170, 22, 0, + 172, 168, 167, 165, 160, 167, 164, 161, 163, 158, + 156, 159, 183, 0, 0, 163, 165, 165, 160, 159, + 162, 161, 151, 148, 49, 70, 143, 0, 0, 140, + 149, 139, 169, 168, 150, 160, 147, 147, 138, 132, + 130, 0, 131, 150, 153, 150, 141, 0, 136, 132, + 128, 56, 119, 146, 133, 116, 130, 117, 137, 114, - 125, 128, 125, 116, 0, 0, 115, 0, 0, 0, - 122, 99, 98, 97, 107, 105, 0, 108, 37, 0, - 93, 91, 0, 91, 90, 103, 0, 99, 87, 86, - 92, 84, 81, 96, 95, 73, 0, 79, 78, 81, - 90, 0, 67, 58, 0, 67, 56, 39, 32, 0, - 0, 31, 30, 55, 0, 0, 0, 47, 32, 30, - 40, 18, 0, 208, 86, 90, 47, 91, 98, 101, - 105 + 129, 128, 0, 113, 116, 111, 118, 129, 132, 129, + 120, 0, 0, 119, 0, 0, 0, 126, 0, 103, + 102, 101, 111, 109, 0, 112, 39, 0, 97, 95, + 0, 95, 94, 107, 0, 103, 91, 90, 96, 88, + 85, 100, 99, 77, 0, 83, 82, 85, 94, 0, + 72, 71, 0, 91, 90, 72, 58, 0, 0, 46, + 34, 59, 0, 0, 0, 53, 38, 35, 48, 25, + 0, 216, 86, 90, 58, 91, 98, 101, 105 } ; -static yyconst short int yy_def[172] = +static yyconst short int yy_def[180] = { 0, - 164, 1, 164, 164, 164, 165, 164, 166, 167, 164, - 166, 166, 164, 168, 168, 168, 168, 168, 168, 168, - 168, 168, 168, 168, 168, 168, 165, 167, 166, 167, - 164, 169, 30, 170, 168, 168, 168, 168, 168, 168, - 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, - 171, 169, 170, 168, 168, 168, 168, 168, 168, 168, - 168, 168, 168, 168, 168, 168, 168, 168, 171, 171, - 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, - 168, 62, 168, 168, 168, 168, 168, 168, 168, 168, - 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, + 172, 1, 172, 172, 172, 173, 172, 174, 175, 172, + 174, 174, 172, 176, 176, 176, 176, 176, 176, 176, + 176, 176, 176, 176, 176, 176, 173, 175, 174, 175, + 172, 177, 30, 178, 176, 176, 176, 176, 176, 176, + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, + 176, 176, 179, 177, 178, 176, 176, 176, 176, 176, + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, + 176, 176, 179, 179, 176, 176, 176, 176, 176, 176, + 176, 176, 176, 176, 176, 176, 176, 66, 176, 176, + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, - 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, - 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, - 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, - 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, - 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, - 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, - 168, 168, 168, 0, 164, 164, 164, 164, 164, 164, - 164 + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, + 176, 0, 172, 172, 172, 172, 172, 172, 172 } ; -static yyconst short int yy_nxt[251] = +static yyconst short int yy_nxt[259] = { 0, 4, 5, 6, 7, 4, 8, 9, 10, 11, 12, 12, 12, 12, 12, 12, 12, 13, 14, 14, 14, 15, 16, 17, 18, 14, 19, 14, 20, 14, 21, 14, 22, 23, 14, 24, 25, 14, 26, 14, 14, - 14, 14, 31, 33, 37, 32, 40, 41, 47, 51, - 38, 30, 48, 57, 58, 51, 78, 130, 79, 163, - 162, 80, 81, 101, 161, 102, 160, 159, 103, 104, - 158, 157, 156, 155, 131, 154, 153, 34, 82, 82, - 82, 82, 82, 82, 82, 82, 27, 152, 27, 27, - 27, 27, 27, 29, 29, 35, 35, 35, 52, 151, + 14, 14, 31, 33, 37, 32, 40, 41, 42, 49, + 38, 44, 45, 50, 43, 53, 59, 60, 84, 138, + 85, 53, 30, 86, 87, 108, 171, 109, 170, 169, + 110, 111, 168, 167, 166, 165, 139, 34, 88, 88, + 88, 88, 88, 88, 88, 88, 27, 164, 27, 27, + 27, 27, 27, 29, 29, 35, 35, 35, 54, 163, - 52, 52, 52, 52, 52, 53, 53, 70, 150, 70, - 149, 148, 147, 146, 145, 144, 143, 142, 141, 140, - 139, 138, 137, 136, 135, 134, 133, 132, 129, 128, - 127, 126, 125, 124, 123, 122, 121, 120, 119, 118, - 117, 116, 115, 114, 113, 112, 111, 110, 109, 108, - 107, 106, 105, 100, 99, 98, 97, 96, 95, 94, - 93, 92, 91, 90, 89, 88, 87, 164, 164, 86, - 85, 84, 83, 77, 76, 75, 74, 73, 72, 71, - 69, 68, 67, 66, 65, 64, 63, 62, 61, 60, - 59, 56, 55, 54, 33, 50, 49, 46, 45, 44, + 54, 54, 54, 54, 54, 55, 55, 74, 162, 74, + 161, 160, 159, 158, 157, 156, 155, 154, 153, 152, + 151, 150, 149, 148, 147, 146, 145, 144, 143, 142, + 141, 140, 137, 136, 135, 134, 133, 132, 131, 130, + 129, 128, 127, 126, 125, 124, 123, 122, 121, 120, + 119, 118, 117, 116, 115, 114, 113, 112, 107, 106, + 105, 104, 103, 102, 101, 100, 99, 98, 97, 96, + 95, 94, 93, 172, 172, 92, 91, 90, 89, 83, + 82, 81, 80, 79, 78, 77, 76, 75, 73, 72, + 71, 70, 69, 68, 67, 66, 65, 64, 63, 62, - 43, 42, 39, 36, 33, 28, 164, 3, 164, 164, - 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, - 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, - 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, - 164, 164, 164, 164, 164, 164, 164, 164, 164, 164 + 61, 58, 57, 56, 33, 52, 51, 48, 47, 46, + 39, 36, 33, 28, 172, 3, 172, 172, 172, 172, + 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, + 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, + 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, + 172, 172, 172, 172, 172, 172, 172, 172 } ; -static yyconst short int yy_chk[251] = +static yyconst short int yy_chk[259] = { 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, 10, 11, 16, 10, 18, 18, 24, 30, - 16, 167, 24, 39, 39, 30, 61, 119, 61, 162, - 161, 61, 61, 86, 160, 86, 159, 158, 86, 86, - 154, 153, 152, 149, 119, 148, 147, 11, 62, 62, - 62, 62, 62, 62, 62, 62, 165, 146, 165, 165, - 165, 165, 165, 166, 166, 168, 168, 168, 169, 144, + 1, 1, 10, 11, 16, 10, 18, 18, 19, 24, + 16, 20, 20, 24, 19, 30, 39, 39, 65, 127, + 65, 30, 175, 65, 65, 92, 170, 92, 169, 168, + 92, 92, 167, 166, 162, 161, 127, 11, 66, 66, + 66, 66, 66, 66, 66, 66, 173, 160, 173, 173, + 173, 173, 173, 174, 174, 176, 176, 176, 177, 157, - 169, 169, 169, 169, 169, 170, 170, 171, 143, 171, - 141, 140, 139, 138, 136, 135, 134, 133, 132, 131, - 130, 129, 128, 126, 125, 124, 122, 121, 118, 116, - 115, 114, 113, 112, 111, 107, 104, 103, 102, 101, - 100, 99, 98, 97, 95, 94, 93, 92, 91, 90, - 89, 88, 87, 85, 84, 83, 81, 80, 79, 78, - 77, 76, 75, 74, 73, 72, 71, 70, 69, 68, - 67, 66, 63, 60, 59, 58, 57, 56, 55, 54, + 177, 177, 177, 177, 177, 178, 178, 179, 156, 179, + 155, 154, 152, 151, 149, 148, 147, 146, 144, 143, + 142, 141, 140, 139, 138, 137, 136, 134, 133, 132, + 130, 129, 126, 124, 123, 122, 121, 120, 118, 114, + 111, 110, 109, 108, 107, 106, 105, 104, 102, 101, + 100, 99, 98, 97, 96, 95, 94, 93, 91, 90, + 89, 87, 86, 85, 84, 83, 81, 80, 79, 78, + 77, 76, 75, 74, 73, 72, 71, 70, 67, 64, + 63, 62, 61, 60, 59, 58, 57, 56, 53, 52, 51, 50, 49, 48, 47, 46, 45, 44, 43, 42, - 41, 38, 37, 36, 29, 26, 25, 23, 22, 21, - 20, 19, 17, 15, 12, 8, 3, 164, 164, 164, - 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, - 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, - 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, - 164, 164, 164, 164, 164, 164, 164, 164, 164, 164 + 41, 38, 37, 36, 29, 26, 25, 23, 22, 21, + 17, 15, 12, 8, 3, 172, 172, 172, 172, 172, + 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, + 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, + 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, + 172, 172, 172, 172, 172, 172, 172, 172 } ; static yy_state_type yy_last_accepting_state; @@ -773,7 +776,7 @@ inline void accept() { col_number += yyleng; } -#line 778 "lex.yy.c" +#line 781 "lex.yy.c" /* Macros after this point can all be overridden by user definitions in * section 1. @@ -930,7 +933,7 @@ YY_DECL -#line 935 "lex.yy.c" +#line 938 "lex.yy.c" if ( yy_init ) { @@ -981,13 +984,13 @@ yy_match: while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 165 ) + if ( yy_current_state >= 173 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; ++yy_cp; } - while ( yy_base[yy_current_state] != 208 ); + while ( yy_base[yy_current_state] != 216 ); yy_find_action: yy_act = yy_accept[yy_current_state]; @@ -1068,7 +1071,7 @@ YY_RULE_SETUP #line 336 "dcLexer.lxx" { accept(); - return KW_INT8; + return KW_FROM; } YY_BREAK case 7: @@ -1076,7 +1079,7 @@ YY_RULE_SETUP #line 341 "dcLexer.lxx" { accept(); - return KW_INT16; + return KW_IMPORT; } YY_BREAK case 8: @@ -1084,7 +1087,7 @@ YY_RULE_SETUP #line 346 "dcLexer.lxx" { accept(); - return KW_INT32; + return KW_INT8; } YY_BREAK case 9: @@ -1092,7 +1095,7 @@ YY_RULE_SETUP #line 351 "dcLexer.lxx" { accept(); - return KW_INT64; + return KW_INT16; } YY_BREAK case 10: @@ -1100,7 +1103,7 @@ YY_RULE_SETUP #line 356 "dcLexer.lxx" { accept(); - return KW_UINT8; + return KW_INT32; } YY_BREAK case 11: @@ -1108,7 +1111,7 @@ YY_RULE_SETUP #line 361 "dcLexer.lxx" { accept(); - return KW_UINT16; + return KW_INT64; } YY_BREAK case 12: @@ -1116,7 +1119,7 @@ YY_RULE_SETUP #line 366 "dcLexer.lxx" { accept(); - return KW_UINT32; + return KW_UINT8; } YY_BREAK case 13: @@ -1124,7 +1127,7 @@ YY_RULE_SETUP #line 371 "dcLexer.lxx" { accept(); - return KW_UINT64; + return KW_UINT16; } YY_BREAK case 14: @@ -1132,7 +1135,7 @@ YY_RULE_SETUP #line 376 "dcLexer.lxx" { accept(); - return KW_FLOAT64; + return KW_UINT32; } YY_BREAK case 15: @@ -1140,7 +1143,7 @@ YY_RULE_SETUP #line 381 "dcLexer.lxx" { accept(); - return KW_STRING; + return KW_UINT64; } YY_BREAK case 16: @@ -1148,7 +1151,7 @@ YY_RULE_SETUP #line 386 "dcLexer.lxx" { accept(); - return KW_BLOB; + return KW_FLOAT64; } YY_BREAK case 17: @@ -1156,7 +1159,7 @@ YY_RULE_SETUP #line 391 "dcLexer.lxx" { accept(); - return KW_BLOB32; + return KW_STRING; } YY_BREAK case 18: @@ -1164,7 +1167,7 @@ YY_RULE_SETUP #line 396 "dcLexer.lxx" { accept(); - return KW_INT8ARRAY; + return KW_BLOB; } YY_BREAK case 19: @@ -1172,7 +1175,7 @@ YY_RULE_SETUP #line 401 "dcLexer.lxx" { accept(); - return KW_INT16ARRAY; + return KW_BLOB32; } YY_BREAK case 20: @@ -1180,7 +1183,7 @@ YY_RULE_SETUP #line 406 "dcLexer.lxx" { accept(); - return KW_INT32ARRAY; + return KW_INT8ARRAY; } YY_BREAK case 21: @@ -1188,7 +1191,7 @@ YY_RULE_SETUP #line 411 "dcLexer.lxx" { accept(); - return KW_UINT8ARRAY; + return KW_INT16ARRAY; } YY_BREAK case 22: @@ -1196,7 +1199,7 @@ YY_RULE_SETUP #line 416 "dcLexer.lxx" { accept(); - return KW_UINT16ARRAY; + return KW_INT32ARRAY; } YY_BREAK case 23: @@ -1204,7 +1207,7 @@ YY_RULE_SETUP #line 421 "dcLexer.lxx" { accept(); - return KW_UINT32ARRAY; + return KW_UINT8ARRAY; } YY_BREAK case 24: @@ -1212,12 +1215,28 @@ YY_RULE_SETUP #line 426 "dcLexer.lxx" { accept(); - return KW_UINT32UINT8ARRAY; + return KW_UINT16ARRAY; } YY_BREAK case 25: YY_RULE_SETUP #line 431 "dcLexer.lxx" +{ + accept(); + return KW_UINT32ARRAY; +} + YY_BREAK +case 26: +YY_RULE_SETUP +#line 436 "dcLexer.lxx" +{ + accept(); + return KW_UINT32UINT8ARRAY; +} + YY_BREAK +case 27: +YY_RULE_SETUP +#line 441 "dcLexer.lxx" { // A molecular keyword. accept(); @@ -1226,28 +1245,12 @@ YY_RULE_SETUP return KW_MOL; } YY_BREAK -case 26: -YY_RULE_SETUP -#line 439 "dcLexer.lxx" -{ - accept(); - return KW_REQUIRED; -} - YY_BREAK -case 27: -YY_RULE_SETUP -#line 444 "dcLexer.lxx" -{ - accept(); - return KW_BROADCAST; -} - YY_BREAK case 28: YY_RULE_SETUP #line 449 "dcLexer.lxx" { accept(); - return KW_P2P; + return KW_REQUIRED; } YY_BREAK case 29: @@ -1255,7 +1258,7 @@ YY_RULE_SETUP #line 454 "dcLexer.lxx" { accept(); - return KW_RAM; + return KW_BROADCAST; } YY_BREAK case 30: @@ -1263,7 +1266,7 @@ YY_RULE_SETUP #line 459 "dcLexer.lxx" { accept(); - return KW_DB; + return KW_P2P; } YY_BREAK case 31: @@ -1271,7 +1274,7 @@ YY_RULE_SETUP #line 464 "dcLexer.lxx" { accept(); - return KW_CLSEND; + return KW_RAM; } YY_BREAK case 32: @@ -1279,7 +1282,7 @@ YY_RULE_SETUP #line 469 "dcLexer.lxx" { accept(); - return KW_CLRECV; + return KW_DB; } YY_BREAK case 33: @@ -1287,7 +1290,7 @@ YY_RULE_SETUP #line 474 "dcLexer.lxx" { accept(); - return KW_OWNSEND; + return KW_CLSEND; } YY_BREAK case 34: @@ -1295,12 +1298,28 @@ YY_RULE_SETUP #line 479 "dcLexer.lxx" { accept(); - return KW_AIRECV; + return KW_CLRECV; } YY_BREAK case 35: YY_RULE_SETUP #line 484 "dcLexer.lxx" +{ + accept(); + return KW_OWNSEND; +} + YY_BREAK +case 36: +YY_RULE_SETUP +#line 489 "dcLexer.lxx" +{ + accept(); + return KW_AIRECV; +} + YY_BREAK +case 37: +YY_RULE_SETUP +#line 494 "dcLexer.lxx" { // An integer number. accept(); @@ -1309,9 +1328,9 @@ YY_RULE_SETUP return INTEGER; } YY_BREAK -case 36: +case 38: YY_RULE_SETUP -#line 492 "dcLexer.lxx" +#line 502 "dcLexer.lxx" { // A hexadecimal integer number. accept(); @@ -1320,9 +1339,9 @@ YY_RULE_SETUP return INTEGER; } YY_BREAK -case 37: +case 39: YY_RULE_SETUP -#line 500 "dcLexer.lxx" +#line 510 "dcLexer.lxx" { // A floating-point number. accept(); @@ -1331,9 +1350,9 @@ YY_RULE_SETUP return REAL; } YY_BREAK -case 38: +case 40: YY_RULE_SETUP -#line 508 "dcLexer.lxx" +#line 518 "dcLexer.lxx" { // Quoted string. accept(); @@ -1341,9 +1360,9 @@ YY_RULE_SETUP return STRING; } YY_BREAK -case 39: +case 41: YY_RULE_SETUP -#line 515 "dcLexer.lxx" +#line 525 "dcLexer.lxx" { // Long hex string. accept(); @@ -1351,9 +1370,9 @@ YY_RULE_SETUP return HEX_STRING; } YY_BREAK -case 40: +case 42: YY_RULE_SETUP -#line 522 "dcLexer.lxx" +#line 532 "dcLexer.lxx" { // Identifier. accept(); @@ -1361,21 +1380,21 @@ YY_RULE_SETUP return IDENTIFIER; } YY_BREAK -case 41: +case 43: YY_RULE_SETUP -#line 530 "dcLexer.lxx" +#line 540 "dcLexer.lxx" { // Send any other printable character as itself. accept(); return dcyytext[0]; } YY_BREAK -case 42: +case 44: YY_RULE_SETUP -#line 536 "dcLexer.lxx" +#line 546 "dcLexer.lxx" ECHO; YY_BREAK -#line 1380 "lex.yy.c" +#line 1399 "lex.yy.c" case YY_STATE_EOF(INITIAL): yyterminate(); @@ -1667,7 +1686,7 @@ static yy_state_type yy_get_previous_state() while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 165 ) + if ( yy_current_state >= 173 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -1702,11 +1721,11 @@ yy_state_type yy_current_state; while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 165 ) + if ( yy_current_state >= 173 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - yy_is_jam = (yy_current_state == 164); + yy_is_jam = (yy_current_state == 172); return yy_is_jam ? 0 : yy_current_state; } @@ -2256,4 +2275,4 @@ int main() return 0; } #endif -#line 536 "dcLexer.lxx" +#line 546 "dcLexer.lxx" diff --git a/direct/src/dcparser/dcParser.cxx.prebuilt b/direct/src/dcparser/dcParser.cxx.prebuilt index 9808aa3258..2fc9986024 100644 --- a/direct/src/dcparser/dcParser.cxx.prebuilt +++ b/direct/src/dcparser/dcParser.cxx.prebuilt @@ -16,35 +16,37 @@ # define HEX_STRING 260 # define IDENTIFIER 261 # define KW_DCLASS 262 -# define KW_INT8 263 -# define KW_INT16 264 -# define KW_INT32 265 -# define KW_INT64 266 -# define KW_UINT8 267 -# define KW_UINT16 268 -# define KW_UINT32 269 -# define KW_UINT64 270 -# define KW_FLOAT64 271 -# define KW_STRING 272 -# define KW_BLOB 273 -# define KW_BLOB32 274 -# define KW_INT8ARRAY 275 -# define KW_INT16ARRAY 276 -# define KW_INT32ARRAY 277 -# define KW_UINT8ARRAY 278 -# define KW_UINT16ARRAY 279 -# define KW_UINT32ARRAY 280 -# define KW_UINT32UINT8ARRAY 281 -# define KW_MOL 282 -# define KW_REQUIRED 283 -# define KW_BROADCAST 284 -# define KW_P2P 285 -# define KW_RAM 286 -# define KW_DB 287 -# define KW_CLSEND 288 -# define KW_CLRECV 289 -# define KW_OWNSEND 290 -# define KW_AIRECV 291 +# define KW_FROM 263 +# define KW_IMPORT 264 +# define KW_INT8 265 +# define KW_INT16 266 +# define KW_INT32 267 +# define KW_INT64 268 +# define KW_UINT8 269 +# define KW_UINT16 270 +# define KW_UINT32 271 +# define KW_UINT64 272 +# define KW_FLOAT64 273 +# define KW_STRING 274 +# define KW_BLOB 275 +# define KW_BLOB32 276 +# define KW_INT8ARRAY 277 +# define KW_INT16ARRAY 278 +# define KW_INT32ARRAY 279 +# define KW_UINT8ARRAY 280 +# define KW_UINT16ARRAY 281 +# define KW_UINT32ARRAY 282 +# define KW_UINT32UINT8ARRAY 283 +# define KW_MOL 284 +# define KW_REQUIRED 285 +# define KW_BROADCAST 286 +# define KW_P2P 287 +# define KW_RAM 288 +# define KW_DB 289 +# define KW_CLSEND 290 +# define KW_CLRECV 291 +# define KW_OWNSEND 292 +# define KW_AIRECV 293 #line 6 "dcParser.yxx" @@ -90,12 +92,12 @@ dc_cleanup_parser() { -#define YYFINAL 103 +#define YYFINAL 116 #define YYFLAG -32768 -#define YYNTBASE 48 +#define YYNTBASE 50 /* YYTRANSLATE(YYLEX) -- Bison token number corresponding to YYLEX. */ -#define YYTRANSLATE(x) ((unsigned)(x) <= 291 ? yytranslate[x] : 73) +#define YYTRANSLATE(x) ((unsigned)(x) <= 293 ? yytranslate[x] : 79) /* YYTRANSLATE[YYLEX] -- Bison token number corresponding to YYLEX. */ static const char yytranslate[] = @@ -104,15 +106,15 @@ static const char yytranslate[] = 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 43, 44, 47, 2, 42, 2, 2, 45, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 41, 38, - 2, 46, 2, 2, 2, 2, 2, 2, 2, 2, + 46, 47, 43, 2, 44, 2, 2, 48, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 45, 40, + 2, 49, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 39, 2, 40, 2, 2, 2, 2, + 2, 2, 2, 41, 2, 42, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -129,45 +131,48 @@ static const char yytranslate[] = 6, 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 + 36, 37, 38, 39 }; #if YYDEBUG static const short yyprhs[] = { - 0, 0, 2, 5, 8, 9, 17, 19, 21, 24, - 26, 30, 32, 35, 38, 41, 42, 49, 51, 53, - 55, 57, 61, 62, 66, 68, 72, 75, 79, 83, - 87, 91, 97, 99, 102, 104, 106, 108, 112, 114, - 116, 118, 120, 124, 128, 132, 134, 136, 138, 140, - 142, 144, 146, 148, 150, 152, 154, 156, 158, 160, - 162, 164, 166, 168, 170, 172, 175, 178, 181, 184, - 187, 190, 193, 196, 199, 200, 205, 207, 211 + 0, 0, 2, 5, 8, 11, 12, 20, 22, 25, + 26, 32, 34, 36, 38, 42, 44, 47, 49, 53, + 55, 58, 61, 64, 65, 72, 74, 76, 78, 80, + 84, 85, 89, 91, 95, 98, 102, 106, 110, 114, + 120, 122, 125, 127, 129, 131, 135, 137, 139, 141, + 143, 147, 151, 155, 157, 159, 161, 163, 165, 167, + 169, 171, 173, 175, 177, 179, 181, 183, 185, 187, + 189, 191, 193, 195, 198, 201, 204, 207, 210, 213, + 216, 219, 222, 223, 228, 230, 234 }; static const short yyrhs[] = { - 72, 0, 48, 38, 0, 48, 49, 0, 0, 8, - 7, 50, 52, 39, 54, 40, 0, 7, 0, 72, - 0, 41, 53, 0, 51, 0, 53, 42, 51, 0, - 72, 0, 54, 38, 0, 54, 55, 0, 54, 69, - 0, 0, 7, 43, 56, 58, 44, 68, 0, 7, - 0, 72, 0, 59, 0, 60, 0, 59, 42, 60, - 0, 0, 67, 61, 62, 0, 72, 0, 62, 45, - 3, 0, 62, 7, 0, 62, 46, 3, 0, 62, - 46, 4, 0, 62, 46, 5, 0, 62, 46, 6, - 0, 62, 46, 39, 63, 40, 0, 72, 0, 65, - 64, 0, 72, 0, 42, 0, 66, 0, 65, 42, - 66, 0, 3, 0, 4, 0, 5, 0, 6, 0, - 3, 47, 3, 0, 4, 47, 3, 0, 6, 47, - 3, 0, 9, 0, 10, 0, 11, 0, 12, 0, - 13, 0, 14, 0, 15, 0, 16, 0, 17, 0, - 18, 0, 19, 0, 20, 0, 21, 0, 22, 0, - 23, 0, 24, 0, 25, 0, 26, 0, 27, 0, - 72, 0, 68, 29, 0, 68, 30, 0, 68, 31, - 0, 68, 32, 0, 68, 33, 0, 68, 34, 0, - 68, 35, 0, 68, 36, 0, 68, 37, 0, 0, - 7, 41, 70, 71, 0, 57, 0, 71, 42, 57, - 0, 0 + 78, 0, 50, 40, 0, 50, 51, 0, 50, 54, + 0, 0, 8, 7, 52, 58, 41, 60, 42, 0, + 7, 0, 10, 7, 0, 0, 9, 7, 10, 55, + 56, 0, 57, 0, 43, 0, 7, 0, 57, 44, + 7, 0, 78, 0, 45, 59, 0, 53, 0, 59, + 44, 53, 0, 78, 0, 60, 40, 0, 60, 61, + 0, 60, 75, 0, 0, 7, 46, 62, 64, 47, + 74, 0, 7, 0, 78, 0, 65, 0, 66, 0, + 65, 44, 66, 0, 0, 73, 67, 68, 0, 78, + 0, 68, 48, 3, 0, 68, 7, 0, 68, 49, + 3, 0, 68, 49, 4, 0, 68, 49, 5, 0, + 68, 49, 6, 0, 68, 49, 41, 69, 42, 0, + 78, 0, 71, 70, 0, 78, 0, 44, 0, 72, + 0, 71, 44, 72, 0, 3, 0, 4, 0, 5, + 0, 6, 0, 3, 43, 3, 0, 4, 43, 3, + 0, 6, 43, 3, 0, 11, 0, 12, 0, 13, + 0, 14, 0, 15, 0, 16, 0, 17, 0, 18, + 0, 19, 0, 20, 0, 21, 0, 22, 0, 23, + 0, 24, 0, 25, 0, 26, 0, 27, 0, 28, + 0, 29, 0, 78, 0, 74, 31, 0, 74, 32, + 0, 74, 33, 0, 74, 34, 0, 74, 35, 0, + 74, 36, 0, 74, 37, 0, 74, 38, 0, 74, + 39, 0, 0, 7, 45, 76, 77, 0, 63, 0, + 77, 44, 63, 0, 0 }; #endif @@ -176,14 +181,15 @@ static const short yyrhs[] = /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const short yyrline[] = { - 0, 89, 91, 92, 95, 95, 107, 121, 123, 126, - 133, 141, 143, 144, 145, 148, 148, 160, 176, 178, - 181, 183, 186, 186, 198, 200, 204, 208, 214, 220, - 226, 232, 242, 244, 247, 249, 252, 254, 257, 264, - 270, 276, 282, 291, 300, 311, 316, 320, 324, 328, - 332, 336, 340, 344, 348, 352, 356, 360, 364, 368, - 372, 376, 380, 384, 390, 392, 396, 400, 404, 408, - 412, 416, 420, 424, 430, 430, 442, 449, 462 + 0, 91, 93, 94, 95, 98, 98, 109, 123, 128, + 128, 135, 137, 143, 148, 154, 156, 159, 166, 174, + 176, 177, 178, 181, 181, 192, 208, 210, 213, 215, + 218, 218, 230, 232, 236, 240, 246, 252, 258, 264, + 274, 276, 279, 281, 284, 286, 289, 296, 302, 308, + 314, 323, 332, 343, 348, 352, 356, 360, 364, 368, + 372, 376, 380, 384, 388, 392, 396, 400, 404, 408, + 412, 416, 422, 424, 428, 432, 436, 440, 444, 448, + 452, 456, 462, 462, 473, 480, 493 }; #endif @@ -194,47 +200,50 @@ static const short yyrline[] = static const char *const yytname[] = { "$", "error", "$undefined.", "INTEGER", "REAL", "STRING", "HEX_STRING", - "IDENTIFIER", "KW_DCLASS", "KW_INT8", "KW_INT16", "KW_INT32", - "KW_INT64", "KW_UINT8", "KW_UINT16", "KW_UINT32", "KW_UINT64", - "KW_FLOAT64", "KW_STRING", "KW_BLOB", "KW_BLOB32", "KW_INT8ARRAY", - "KW_INT16ARRAY", "KW_INT32ARRAY", "KW_UINT8ARRAY", "KW_UINT16ARRAY", - "KW_UINT32ARRAY", "KW_UINT32UINT8ARRAY", "KW_MOL", "KW_REQUIRED", - "KW_BROADCAST", "KW_P2P", "KW_RAM", "KW_DB", "KW_CLSEND", "KW_CLRECV", - "KW_OWNSEND", "KW_AIRECV", "';'", "'{'", "'}'", "':'", "','", "'('", - "')'", "'/'", "'='", "'*'", "dc", "dclass", "@1", "dclass_name", - "dclass_derivation", "base_list", "dclass_fields", "atomic_field", "@2", - "atomic_name", "parameter_list", "nonempty_parameter_list", - "atomic_element", "@3", "atomic_element_definition", "default_array", - "maybe_comma", "default_array_def", "default_array_element", - "type_token", "atomic_flags", "molecular_field", "@4", - "molecular_atom_list", "empty", 0 + "IDENTIFIER", "KW_DCLASS", "KW_FROM", "KW_IMPORT", "KW_INT8", + "KW_INT16", "KW_INT32", "KW_INT64", "KW_UINT8", "KW_UINT16", + "KW_UINT32", "KW_UINT64", "KW_FLOAT64", "KW_STRING", "KW_BLOB", + "KW_BLOB32", "KW_INT8ARRAY", "KW_INT16ARRAY", "KW_INT32ARRAY", + "KW_UINT8ARRAY", "KW_UINT16ARRAY", "KW_UINT32ARRAY", + "KW_UINT32UINT8ARRAY", "KW_MOL", "KW_REQUIRED", "KW_BROADCAST", + "KW_P2P", "KW_RAM", "KW_DB", "KW_CLSEND", "KW_CLRECV", "KW_OWNSEND", + "KW_AIRECV", "';'", "'{'", "'}'", "'*'", "','", "':'", "'('", "')'", + "'/'", "'='", "dc", "dclass", "@1", "dclass_name", "import", "@2", + "import_symbol_list_or_star", "import_symbol_list", "dclass_derivation", + "base_list", "dclass_fields", "atomic_field", "@3", "atomic_name", + "parameter_list", "nonempty_parameter_list", "atomic_element", "@4", + "atomic_element_definition", "default_array", "maybe_comma", + "default_array_def", "default_array_element", "type_token", + "atomic_flags", "molecular_field", "@5", "molecular_atom_list", "empty", 0 }; #endif /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const short yyr1[] = { - 0, 48, 48, 48, 50, 49, 51, 52, 52, 53, - 53, 54, 54, 54, 54, 56, 55, 57, 58, 58, - 59, 59, 61, 60, 62, 62, 62, 62, 62, 62, - 62, 62, 63, 63, 64, 64, 65, 65, 66, 66, - 66, 66, 66, 66, 66, 67, 67, 67, 67, 67, - 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, - 67, 67, 67, 67, 68, 68, 68, 68, 68, 68, - 68, 68, 68, 68, 70, 69, 71, 71, 72 + 0, 50, 50, 50, 50, 52, 51, 53, 54, 55, + 54, 56, 56, 57, 57, 58, 58, 59, 59, 60, + 60, 60, 60, 62, 61, 63, 64, 64, 65, 65, + 67, 66, 68, 68, 68, 68, 68, 68, 68, 68, + 69, 69, 70, 70, 71, 71, 72, 72, 72, 72, + 72, 72, 72, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 74, 74, 74, 74, 74, 74, 74, 74, + 74, 74, 76, 75, 77, 77, 78 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ static const short yyr2[] = { - 0, 1, 2, 2, 0, 7, 1, 1, 2, 1, - 3, 1, 2, 2, 2, 0, 6, 1, 1, 1, - 1, 3, 0, 3, 1, 3, 2, 3, 3, 3, - 3, 5, 1, 2, 1, 1, 1, 3, 1, 1, - 1, 1, 3, 3, 3, 1, 1, 1, 1, 1, + 0, 1, 2, 2, 2, 0, 7, 1, 2, 0, + 5, 1, 1, 1, 3, 1, 2, 1, 3, 1, + 2, 2, 2, 0, 6, 1, 1, 1, 1, 3, + 0, 3, 1, 3, 2, 3, 3, 3, 3, 5, + 1, 2, 1, 1, 1, 3, 1, 1, 1, 1, + 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 0, 4, 1, 3, 0 + 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 0, 4, 1, 3, 0 }; /* YYDEFACT[S] -- default rule to reduce with in state S when YYTABLE @@ -242,76 +251,78 @@ static const short yyr2[] = error. */ static const short yydefact[] = { - 78, 0, 1, 0, 2, 3, 4, 78, 0, 0, - 7, 6, 9, 8, 78, 0, 0, 11, 10, 0, - 12, 5, 13, 14, 74, 15, 0, 78, 17, 76, - 75, 45, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 0, 19, 20, 22, 18, 0, 78, 0, 78, 77, - 16, 64, 21, 23, 24, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 26, 0, 0, 25, 27, 28, - 29, 30, 78, 38, 39, 40, 41, 0, 78, 36, - 32, 0, 0, 0, 31, 35, 33, 34, 42, 43, - 44, 37, 0, 0 + 86, 0, 1, 0, 0, 0, 2, 3, 4, 5, + 0, 8, 86, 9, 0, 0, 15, 0, 7, 17, + 16, 86, 13, 12, 10, 11, 0, 0, 19, 0, + 18, 0, 20, 6, 21, 22, 14, 82, 23, 0, + 86, 25, 84, 83, 53, 54, 55, 56, 57, 58, + 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, + 69, 70, 71, 0, 27, 28, 30, 26, 0, 86, + 0, 86, 85, 24, 72, 29, 31, 32, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 34, 0, 0, + 33, 35, 36, 37, 38, 86, 46, 47, 48, 49, + 0, 86, 44, 40, 0, 0, 0, 39, 43, 41, + 42, 50, 51, 52, 45, 0, 0 }; static const short yydefgoto[] = { - 1, 5, 7, 12, 9, 13, 16, 22, 27, 29, - 50, 51, 52, 58, 63, 87, 96, 88, 89, 53, - 60, 23, 26, 30, 2 + 1, 7, 12, 19, 8, 17, 24, 25, 15, 20, + 27, 34, 40, 42, 63, 64, 65, 71, 76, 100, + 109, 101, 102, 66, 73, 35, 39, 43, 2 }; static const short yypact[] = { - -32768, 3,-32768, -2,-32768,-32768,-32768, -33, 2, -29, - -32768,-32768,-32768, -12,-32768, 2, -5,-32768,-32768, -37, - -32768,-32768,-32768,-32768,-32768,-32768, 24, 43,-32768,-32768, - -10,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, + -32768, 4,-32768, -4, 3, 17,-32768,-32768,-32768,-32768, + 1,-32768, -40,-32768, 18, -18,-32768, -5,-32768,-32768, + -17,-32768,-32768,-32768,-32768, 2, 18, -1,-32768, 19, + -32768, -38,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 33, + 49,-32768,-32768, 5,-32768,-32768,-32768,-32768,-32768,-32768, -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, - -1, -4,-32768,-32768,-32768, 24,-32768, 43,-32768,-32768, - -8,-32768,-32768, -6,-32768,-32768,-32768,-32768,-32768,-32768, - -32768,-32768,-32768,-32768,-32768, 31, 9,-32768,-32768,-32768, - -32768,-32768, 13, -11, -3,-32768, 0, 5, 4,-32768, - -32768, 34, 39, 47,-32768, 13,-32768,-32768,-32768,-32768, - -32768,-32768, 71,-32768 + -32768,-32768,-32768, 0, 6,-32768,-32768,-32768, 33,-32768, + 49,-32768,-32768, -2,-32768,-32768, -6,-32768,-32768,-32768, + -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 42, 12, + -32768,-32768,-32768,-32768,-32768, 16, 8, 9,-32768, 11, + 13, 14,-32768,-32768, 45, 53, 76,-32768, 16,-32768, + -32768,-32768,-32768,-32768,-32768, 80,-32768 }; static const short yypgoto[] = { - -32768,-32768,-32768, 57,-32768,-32768,-32768,-32768,-32768, 18, - -32768,-32768, 17,-32768,-32768,-32768,-32768,-32768, -19,-32768, - -32768,-32768,-32768,-32768, -7 + -32768,-32768,-32768, 55,-32768,-32768,-32768,-32768,-32768,-32768, + -32768,-32768,-32768, 20,-32768,-32768, 15,-32768,-32768,-32768, + -32768,-32768, -26,-32768,-32768,-32768,-32768,-32768, -12 }; -#define YYLAST 81 +#define YYLAST 89 static const short yytable[] = { - 10, 74, 19, 102, 24, 6, 25, 17, 8, 11, - 14, 3, 78, 79, 80, 81, 83, 84, 85, 86, - 54, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 15, 28, 55, 20, 77, 21, 91, 98, 57, 75, - 76, 4, 99, 56, 92, 94, 95, 93, 82, 61, - 100, 64, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 103, 18, 59, 62, 90, 101, 0, 0, 0, - 0, 97 + 16, 87, 22, 9, 115, 14, 31, 37, 38, 28, + 10, 13, 3, 4, 5, 91, 92, 93, 94, 96, + 97, 98, 99, 21, 11, 18, 36, 26, 67, 78, + 79, 80, 81, 82, 83, 84, 85, 86, 23, 32, + 41, 33, 88, 89, 6, 90, 29, 69, 111, 68, + 70, 104, 105, 95, 106, 107, 112, 74, 108, 77, + 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, + 54, 55, 56, 57, 58, 59, 60, 61, 62, 113, + 116, 30, 114, 103, 0, 75, 0, 0, 72, 110 }; static const short yycheck[] = { - 7, 7, 7, 0, 41, 7, 43, 14, 41, 7, - 39, 8, 3, 4, 5, 6, 3, 4, 5, 6, - 27, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 42, 7, 42, 38, 3, 40, 47, 3, 42, 45, - 46, 38, 3, 44, 47, 40, 42, 47, 39, 56, - 3, 58, 9, 10, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 0, 15, 55, 57, 82, 95, -1, -1, -1, - -1, 88 + 12, 7, 7, 7, 0, 45, 7, 45, 46, 21, + 7, 10, 8, 9, 10, 3, 4, 5, 6, 3, + 4, 5, 6, 41, 7, 7, 7, 44, 40, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 43, 40, + 7, 42, 48, 49, 40, 3, 44, 47, 3, 44, + 44, 43, 43, 41, 43, 42, 3, 69, 44, 71, + 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 3, + 0, 26, 108, 95, -1, 70, -1, -1, 68, 101 }; /* -*-C-*- Note some compilers choke on comments on `#line' lines. */ #line 3 "/usr/share/bison/bison.simple" @@ -1020,18 +1031,17 @@ yyreduce: switch (yyn) { -case 4: -#line 97 "dcParser.yxx" +case 5: +#line 100 "dcParser.yxx" { - current_class = new DCClass; - current_class->_name = yyvsp[0].str; + current_class = new DCClass(yyvsp[0].str); if (!dc_file->add_class(current_class)) { - yyerror("Duplicate class name: " + current_class->_name); + yyerror("Duplicate class name: " + current_class->get_name()); } } break; -case 6: -#line 109 "dcParser.yxx" +case 7: +#line 111 "dcParser.yxx" { DCFile::ClassesByName::const_iterator ni; ni = dc_file->_classes_by_name.find(yyvsp[0].str); @@ -1043,34 +1053,63 @@ case 6: } } break; +case 8: +#line 125 "dcParser.yxx" +{ + dc_file->add_import_module(yyvsp[0].str); +} + break; case 9: -#line 128 "dcParser.yxx" +#line 129 "dcParser.yxx" { - if (yyvsp[0].u.dclass != (DCClass *)NULL) { - current_class->_parents.push_back(yyvsp[0].u.dclass); - } + dc_file->add_import_module(yyvsp[-1].str); } break; -case 10: -#line 134 "dcParser.yxx" +case 12: +#line 138 "dcParser.yxx" { - if (yyvsp[0].u.dclass != (DCClass *)NULL) { - current_class->_parents.push_back(yyvsp[0].u.dclass); - } + dc_file->add_import_symbol("*"); } break; -case 15: -#line 150 "dcParser.yxx" +case 13: +#line 145 "dcParser.yxx" { - current_atomic = new DCAtomicField; - current_atomic->_name = yyvsp[-1].str; - if (!current_class->add_field(current_atomic)) { - yyerror("Duplicate field name: " + current_atomic->_name); - } + dc_file->add_import_symbol(yyvsp[0].str); +} + break; +case 14: +#line 149 "dcParser.yxx" +{ + dc_file->add_import_symbol(yyvsp[0].str); } break; case 17: -#line 162 "dcParser.yxx" +#line 161 "dcParser.yxx" +{ + if (yyvsp[0].u.dclass != (DCClass *)NULL) { + current_class->add_parent(yyvsp[0].u.dclass); + } +} + break; +case 18: +#line 167 "dcParser.yxx" +{ + if (yyvsp[0].u.dclass != (DCClass *)NULL) { + current_class->add_parent(yyvsp[0].u.dclass); + } +} + break; +case 23: +#line 183 "dcParser.yxx" +{ + current_atomic = new DCAtomicField(yyvsp[-1].str); + if (!current_class->add_field(current_atomic)) { + yyerror("Duplicate field name: " + current_atomic->get_name()); + } +} + break; +case 25: +#line 194 "dcParser.yxx" { DCField *field = current_class->get_field_by_name(yyvsp[0].str); yyval.u.atomic = (DCAtomicField *)NULL; @@ -1084,65 +1123,65 @@ case 17: } } break; -case 22: -#line 188 "dcParser.yxx" +case 30: +#line 220 "dcParser.yxx" { atomic_element = DCAtomicField::ElementType(); atomic_element._type = yyvsp[0].u.subatomic; } break; -case 23: -#line 193 "dcParser.yxx" +case 31: +#line 225 "dcParser.yxx" { current_atomic->_elements.push_back(atomic_element); } break; -case 25: -#line 201 "dcParser.yxx" +case 33: +#line 233 "dcParser.yxx" { atomic_element._divisor = yyvsp[0].u.integer; } break; -case 26: -#line 205 "dcParser.yxx" +case 34: +#line 237 "dcParser.yxx" { atomic_element._name = yyvsp[0].str; } break; -case 27: -#line 209 "dcParser.yxx" +case 35: +#line 241 "dcParser.yxx" { if (!atomic_element.set_default_value(yyvsp[0].u.integer)) { yyerror("Invalid default value: " + yyvsp[0].str); } } break; -case 28: -#line 215 "dcParser.yxx" +case 36: +#line 247 "dcParser.yxx" { if (!atomic_element.set_default_value(yyvsp[0].u.real)) { yyerror("Invalid default value: " + yyvsp[0].str); } } break; -case 29: -#line 221 "dcParser.yxx" +case 37: +#line 253 "dcParser.yxx" { if (!atomic_element.set_default_value(yyvsp[0].str)) { yyerror("Invalid default value: \"" + yyvsp[0].str + "\""); } } break; -case 30: -#line 227 "dcParser.yxx" +case 38: +#line 259 "dcParser.yxx" { if (!atomic_element.set_default_value_literal(yyvsp[0].str)) { yyerror("Invalid default hex string value"); } } break; -case 31: -#line 233 "dcParser.yxx" +case 39: +#line 265 "dcParser.yxx" { if (!atomic_element.end_array()) { yyerror("Array default value inappropriate"); @@ -1151,40 +1190,40 @@ case 31: } } break; -case 38: -#line 259 "dcParser.yxx" +case 46: +#line 291 "dcParser.yxx" { if (!atomic_element.add_default_value(yyvsp[0].u.integer)) { yyerror("Invalid default value: " + yyvsp[0].str); } } break; -case 39: -#line 265 "dcParser.yxx" +case 47: +#line 297 "dcParser.yxx" { if (!atomic_element.add_default_value(yyvsp[0].u.real)) { yyerror("Invalid default value: " + yyvsp[0].str); } } break; -case 40: -#line 271 "dcParser.yxx" +case 48: +#line 303 "dcParser.yxx" { if (!atomic_element.add_default_value(yyvsp[0].str)) { yyerror("Invalid default value: " + yyvsp[0].str); } } break; -case 41: -#line 277 "dcParser.yxx" +case 49: +#line 309 "dcParser.yxx" { if (!atomic_element.add_default_value_literal(yyvsp[0].str)) { yyerror("Invalid hex literal in default array"); } } break; -case 42: -#line 283 "dcParser.yxx" +case 50: +#line 315 "dcParser.yxx" { for (int i = 0; i < yyvsp[0].u.integer; i++) { if (!atomic_element.add_default_value(yyvsp[-2].u.integer)) { @@ -1194,8 +1233,8 @@ case 42: } } break; -case 43: -#line 292 "dcParser.yxx" +case 51: +#line 324 "dcParser.yxx" { for (int i = 0; i < yyvsp[0].u.integer; i++) { if (!atomic_element.add_default_value(yyvsp[-2].u.real)) { @@ -1205,8 +1244,8 @@ case 43: } } break; -case 44: -#line 301 "dcParser.yxx" +case 52: +#line 333 "dcParser.yxx" { for (int i = 0; i < yyvsp[0].u.integer; i++) { if (!atomic_element.add_default_value_literal(yyvsp[-2].str)) { @@ -1216,201 +1255,200 @@ case 44: } } break; -case 45: -#line 313 "dcParser.yxx" -{ - yyval.u.subatomic = ST_int8; -} - break; -case 46: -#line 317 "dcParser.yxx" -{ - yyval.u.subatomic = ST_int16; -} - break; -case 47: -#line 321 "dcParser.yxx" -{ - yyval.u.subatomic = ST_int32; -} - break; -case 48: -#line 325 "dcParser.yxx" -{ - yyval.u.subatomic = ST_int64; -} - break; -case 49: -#line 329 "dcParser.yxx" -{ - yyval.u.subatomic = ST_uint8; -} - break; -case 50: -#line 333 "dcParser.yxx" -{ - yyval.u.subatomic = ST_uint16; -} - break; -case 51: -#line 337 "dcParser.yxx" -{ - yyval.u.subatomic = ST_uint32; -} - break; -case 52: -#line 341 "dcParser.yxx" -{ - yyval.u.subatomic = ST_uint64; -} - break; case 53: #line 345 "dcParser.yxx" { - yyval.u.subatomic = ST_float64; + yyval.u.subatomic = ST_int8; } break; case 54: #line 349 "dcParser.yxx" { - yyval.u.subatomic = ST_string; + yyval.u.subatomic = ST_int16; } break; case 55: #line 353 "dcParser.yxx" { - yyval.u.subatomic = ST_blob; + yyval.u.subatomic = ST_int32; } break; case 56: #line 357 "dcParser.yxx" { - yyval.u.subatomic = ST_blob32; + yyval.u.subatomic = ST_int64; } break; case 57: #line 361 "dcParser.yxx" { - yyval.u.subatomic = ST_int8array; + yyval.u.subatomic = ST_uint8; } break; case 58: #line 365 "dcParser.yxx" { - yyval.u.subatomic = ST_int16array; + yyval.u.subatomic = ST_uint16; } break; case 59: #line 369 "dcParser.yxx" { - yyval.u.subatomic = ST_int32array; + yyval.u.subatomic = ST_uint32; } break; case 60: #line 373 "dcParser.yxx" { - yyval.u.subatomic = ST_uint8array; + yyval.u.subatomic = ST_uint64; } break; case 61: #line 377 "dcParser.yxx" { - yyval.u.subatomic = ST_uint16array; + yyval.u.subatomic = ST_float64; } break; case 62: #line 381 "dcParser.yxx" { - yyval.u.subatomic = ST_uint32array; + yyval.u.subatomic = ST_string; } break; case 63: #line 385 "dcParser.yxx" { - yyval.u.subatomic = ST_uint32uint8array; + yyval.u.subatomic = ST_blob; +} + break; +case 64: +#line 389 "dcParser.yxx" +{ + yyval.u.subatomic = ST_blob32; } break; case 65: #line 393 "dcParser.yxx" { - current_atomic->_flags |= DCAtomicField::F_required; + yyval.u.subatomic = ST_int8array; } break; case 66: #line 397 "dcParser.yxx" { - current_atomic->_flags |= DCAtomicField::F_broadcast; + yyval.u.subatomic = ST_int16array; } break; case 67: #line 401 "dcParser.yxx" { - current_atomic->_flags |= DCAtomicField::F_p2p; + yyval.u.subatomic = ST_int32array; } break; case 68: #line 405 "dcParser.yxx" { - current_atomic->_flags |= DCAtomicField::F_ram; + yyval.u.subatomic = ST_uint8array; } break; case 69: #line 409 "dcParser.yxx" { - current_atomic->_flags |= DCAtomicField::F_db; + yyval.u.subatomic = ST_uint16array; } break; case 70: #line 413 "dcParser.yxx" { - current_atomic->_flags |= DCAtomicField::F_clsend; + yyval.u.subatomic = ST_uint32array; } break; case 71: #line 417 "dcParser.yxx" { - current_atomic->_flags |= DCAtomicField::F_clrecv; -} - break; -case 72: -#line 421 "dcParser.yxx" -{ - current_atomic->_flags |= DCAtomicField::F_ownsend; + yyval.u.subatomic = ST_uint32uint8array; } break; case 73: #line 425 "dcParser.yxx" { - current_atomic->_flags |= DCAtomicField::F_airecv; + current_atomic->_flags |= DCAtomicField::F_required; } break; case 74: -#line 432 "dcParser.yxx" +#line 429 "dcParser.yxx" { - current_molecular = new DCMolecularField; - current_molecular->_name = yyvsp[-1].str; - if (!current_class->add_field(current_molecular)) { - yyerror("Duplicate field name: " + current_molecular->_name); - } + current_atomic->_flags |= DCAtomicField::F_broadcast; +} + break; +case 75: +#line 433 "dcParser.yxx" +{ + current_atomic->_flags |= DCAtomicField::F_p2p; } break; case 76: -#line 444 "dcParser.yxx" +#line 437 "dcParser.yxx" +{ + current_atomic->_flags |= DCAtomicField::F_ram; +} + break; +case 77: +#line 441 "dcParser.yxx" +{ + current_atomic->_flags |= DCAtomicField::F_db; +} + break; +case 78: +#line 445 "dcParser.yxx" +{ + current_atomic->_flags |= DCAtomicField::F_clsend; +} + break; +case 79: +#line 449 "dcParser.yxx" +{ + current_atomic->_flags |= DCAtomicField::F_clrecv; +} + break; +case 80: +#line 453 "dcParser.yxx" +{ + current_atomic->_flags |= DCAtomicField::F_ownsend; +} + break; +case 81: +#line 457 "dcParser.yxx" +{ + current_atomic->_flags |= DCAtomicField::F_airecv; +} + break; +case 82: +#line 464 "dcParser.yxx" +{ + current_molecular = new DCMolecularField(yyvsp[-1].str); + if (!current_class->add_field(current_molecular)) { + yyerror("Duplicate field name: " + current_molecular->get_name()); + } +} + break; +case 84: +#line 475 "dcParser.yxx" { if (yyvsp[0].u.atomic != (DCAtomicField *)NULL) { current_molecular->_fields.push_back(yyvsp[0].u.atomic); } } break; -case 77: -#line 450 "dcParser.yxx" +case 85: +#line 481 "dcParser.yxx" { if (yyvsp[0].u.atomic != (DCAtomicField *)NULL) { current_molecular->_fields.push_back(yyvsp[0].u.atomic); if (current_molecular->_fields[0]->_flags != yyvsp[0].u.atomic->_flags) { yyerror("Mismatched flags in molecule between " + - current_molecular->_fields[0]->_name + " and " + - yyvsp[0].u.atomic->_name); + current_molecular->_fields[0]->get_name() + " and " + + yyvsp[0].u.atomic->get_name()); } } } @@ -1648,4 +1686,4 @@ yyreturn: #endif return yyresult; } -#line 464 "dcParser.yxx" +#line 495 "dcParser.yxx" diff --git a/direct/src/dcparser/dcParser.h.prebuilt b/direct/src/dcparser/dcParser.h.prebuilt index cf4c154e68..1c3a5372e6 100644 --- a/direct/src/dcparser/dcParser.h.prebuilt +++ b/direct/src/dcparser/dcParser.h.prebuilt @@ -7,35 +7,37 @@ # define HEX_STRING 260 # define IDENTIFIER 261 # define KW_DCLASS 262 -# define KW_INT8 263 -# define KW_INT16 264 -# define KW_INT32 265 -# define KW_INT64 266 -# define KW_UINT8 267 -# define KW_UINT16 268 -# define KW_UINT32 269 -# define KW_UINT64 270 -# define KW_FLOAT64 271 -# define KW_STRING 272 -# define KW_BLOB 273 -# define KW_BLOB32 274 -# define KW_INT8ARRAY 275 -# define KW_INT16ARRAY 276 -# define KW_INT32ARRAY 277 -# define KW_UINT8ARRAY 278 -# define KW_UINT16ARRAY 279 -# define KW_UINT32ARRAY 280 -# define KW_UINT32UINT8ARRAY 281 -# define KW_MOL 282 -# define KW_REQUIRED 283 -# define KW_BROADCAST 284 -# define KW_P2P 285 -# define KW_RAM 286 -# define KW_DB 287 -# define KW_CLSEND 288 -# define KW_CLRECV 289 -# define KW_OWNSEND 290 -# define KW_AIRECV 291 +# define KW_FROM 263 +# define KW_IMPORT 264 +# define KW_INT8 265 +# define KW_INT16 266 +# define KW_INT32 267 +# define KW_INT64 268 +# define KW_UINT8 269 +# define KW_UINT16 270 +# define KW_UINT32 271 +# define KW_UINT64 272 +# define KW_FLOAT64 273 +# define KW_STRING 274 +# define KW_BLOB 275 +# define KW_BLOB32 276 +# define KW_INT8ARRAY 277 +# define KW_INT16ARRAY 278 +# define KW_INT32ARRAY 279 +# define KW_UINT8ARRAY 280 +# define KW_UINT16ARRAY 281 +# define KW_UINT32ARRAY 282 +# define KW_UINT32UINT8ARRAY 283 +# define KW_MOL 284 +# define KW_REQUIRED 285 +# define KW_BROADCAST 286 +# define KW_P2P 287 +# define KW_RAM 288 +# define KW_DB 289 +# define KW_CLSEND 290 +# define KW_CLRECV 291 +# define KW_OWNSEND 292 +# define KW_AIRECV 293 extern YYSTYPE dcyylval;