mirror of
https://github.com/panda3d/panda3d.git
synced 2025-09-30 16:58:40 -04:00
prebuild-bison
This commit is contained in:
parent
b2bb4b5c08
commit
359c111231
@ -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"
|
||||
|
@ -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"
|
||||
|
@ -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;
|
||||
|
Loading…
x
Reference in New Issue
Block a user