diff options
author | Fate <fate-tmw@googlemail.com> | 2008-11-23 23:30:51 -0700 |
---|---|---|
committer | Fate <fate-tmw@googlemail.com> | 2008-11-23 23:30:51 -0700 |
commit | 5bb68970dece3052f5bf82d53bec8c6eeac60e15 (patch) | |
tree | c1ca7cf0d8f5f88f35b1bccdaf844e716066d62c /src/map/magic-interpreter-lexer.c | |
parent | 8678e872c4a8f5ce67f135bf2f5e6b44b4ba2997 (diff) | |
download | tmwa-5bb68970dece3052f5bf82d53bec8c6eeac60e15.tar.gz tmwa-5bb68970dece3052f5bf82d53bec8c6eeac60e15.tar.bz2 tmwa-5bb68970dece3052f5bf82d53bec8c6eeac60e15.tar.xz tmwa-5bb68970dece3052f5bf82d53bec8c6eeac60e15.zip |
Magic: looping over spells, spell field access, is-equipped check
Diffstat (limited to 'src/map/magic-interpreter-lexer.c')
-rw-r--r-- | src/map/magic-interpreter-lexer.c | 493 |
1 files changed, 249 insertions, 244 deletions
diff --git a/src/map/magic-interpreter-lexer.c b/src/map/magic-interpreter-lexer.c index 2acc3d1..6cf5d73 100644 --- a/src/map/magic-interpreter-lexer.c +++ b/src/map/magic-interpreter-lexer.c @@ -396,8 +396,8 @@ static void yy_fatal_error (yyconst char msg[] ); *yy_cp = '\0'; \ (yy_c_buf_p) = yy_cp; -#define YY_NUM_RULES 84 -#define YY_END_OF_BUFFER 85 +#define YY_NUM_RULES 85 +#define YY_END_OF_BUFFER 86 /* This struct is not used in this scanner, but its presence is necessary. */ struct yy_trans_info @@ -405,34 +405,34 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static yyconst flex_int16_t yy_accept[237] = +static yyconst flex_int16_t yy_accept[238] = { 0, - 0, 0, 85, 83, 82, 82, 83, 83, 83, 23, - 33, 17, 18, 21, 19, 28, 20, 22, 77, 77, - 27, 26, 14, 9, 13, 29, 79, 79, 79, 79, - 7, 79, 79, 79, 79, 79, 5, 79, 79, 79, - 1, 79, 3, 31, 32, 34, 83, 30, 12, 0, - 76, 0, 0, 80, 24, 77, 0, 0, 35, 16, - 11, 10, 50, 15, 36, 79, 79, 79, 79, 79, - 79, 73, 79, 79, 79, 79, 68, 48, 79, 79, - 79, 79, 6, 79, 4, 39, 64, 79, 79, 8, - 79, 79, 79, 79, 2, 79, 79, 79, 40, 79, - - 0, 0, 75, 25, 0, 76, 0, 0, 81, 78, - 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, - 79, 49, 79, 72, 47, 79, 79, 65, 79, 79, - 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, - 0, 0, 75, 79, 79, 79, 79, 38, 79, 79, - 79, 79, 79, 70, 79, 79, 79, 55, 79, 79, - 79, 79, 57, 79, 79, 79, 79, 69, 79, 74, - 58, 61, 79, 59, 79, 79, 79, 63, 79, 79, - 79, 44, 79, 79, 79, 79, 46, 79, 79, 79, - 79, 79, 79, 79, 79, 60, 66, 79, 79, 79, - - 79, 43, 51, 67, 79, 79, 79, 79, 79, 79, - 71, 79, 79, 52, 79, 41, 79, 56, 79, 79, - 45, 79, 79, 62, 53, 79, 37, 79, 54, 79, - 79, 79, 79, 79, 42, 0 + 0, 0, 86, 84, 83, 83, 84, 84, 84, 23, + 33, 17, 18, 21, 19, 28, 20, 35, 22, 78, + 78, 27, 26, 14, 9, 13, 29, 80, 80, 80, + 80, 7, 80, 80, 80, 80, 80, 5, 80, 80, + 80, 1, 80, 3, 31, 32, 34, 84, 30, 12, + 0, 77, 0, 0, 81, 24, 78, 0, 0, 36, + 16, 11, 10, 51, 15, 37, 80, 80, 80, 80, + 80, 80, 74, 80, 80, 80, 80, 69, 49, 80, + 80, 80, 80, 6, 80, 4, 40, 65, 80, 80, + 8, 80, 80, 80, 80, 2, 80, 80, 80, 41, + + 80, 0, 0, 76, 25, 0, 77, 0, 0, 82, + 79, 80, 80, 80, 80, 80, 80, 80, 80, 80, + 80, 80, 50, 80, 73, 48, 80, 80, 66, 80, + 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, + 80, 0, 0, 76, 80, 80, 80, 80, 39, 80, + 80, 80, 80, 80, 71, 80, 80, 80, 56, 80, + 80, 80, 80, 58, 80, 80, 80, 80, 70, 80, + 75, 59, 62, 80, 60, 80, 80, 80, 64, 80, + 80, 80, 45, 80, 80, 80, 80, 47, 80, 80, + 80, 80, 80, 80, 80, 80, 61, 67, 80, 80, + + 80, 80, 44, 52, 68, 80, 80, 80, 80, 80, + 80, 72, 80, 80, 53, 80, 42, 80, 57, 80, + 80, 46, 80, 80, 63, 54, 80, 38, 80, 55, + 80, 80, 80, 80, 80, 43, 0 } ; static yyconst flex_int32_t yy_ec[256] = @@ -441,16 +441,16 @@ static yyconst flex_int32_t yy_ec[256] = 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 4, 5, 6, 1, 7, 8, 1, 9, - 10, 11, 12, 13, 14, 1, 15, 16, 17, 17, - 17, 17, 17, 17, 17, 17, 17, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 34, 46, 34, 47, 34, - 48, 49, 50, 51, 23, 1, 52, 52, 52, 52, - - 52, 52, 34, 34, 34, 34, 34, 34, 34, 34, - 34, 34, 34, 34, 34, 34, 34, 34, 34, 53, - 34, 34, 54, 55, 56, 1, 1, 1, 1, 1, + 10, 11, 12, 13, 14, 15, 16, 17, 18, 18, + 18, 18, 18, 18, 18, 18, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 35, 47, 35, 48, 35, + 49, 50, 51, 52, 24, 1, 53, 53, 53, 53, + + 53, 53, 35, 35, 35, 35, 35, 35, 35, 35, + 35, 35, 35, 35, 35, 35, 35, 35, 35, 54, + 35, 35, 55, 56, 57, 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, @@ -467,170 +467,170 @@ static yyconst flex_int32_t yy_ec[256] = 1, 1, 1, 1, 1 } ; -static yyconst flex_int32_t yy_meta[57] = +static yyconst flex_int32_t yy_meta[58] = { 0, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 2, 1, 3, 3, 1, 1, 1, - 1, 1, 2, 1, 3, 3, 3, 3, 3, 3, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, - 1, 3, 2, 1, 1, 1 + 1, 1, 1, 2, 1, 1, 3, 3, 1, 1, + 1, 1, 1, 2, 1, 3, 3, 3, 3, 3, + 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, + 1, 1, 3, 2, 1, 1, 1 } ; -static yyconst flex_int16_t yy_base[245] = +static yyconst flex_int16_t yy_base[246] = { 0, - 0, 0, 286, 287, 287, 287, 264, 52, 281, 287, - 275, 287, 287, 287, 287, 287, 42, 267, 44, 46, - 287, 287, 44, 46, 48, 287, 45, 239, 47, 241, - 43, 240, 0, 44, 46, 51, 48, 236, 51, 248, - 63, 79, 251, 287, 287, 287, 35, 220, 287, 75, - 287, 97, 271, 287, 287, 89, 270, 0, 287, 287, - 287, 287, 287, 287, 287, 0, 233, 66, 242, 76, - 76, 0, 240, 226, 55, 226, 0, 0, 223, 239, - 227, 238, 0, 225, 0, 0, 0, 223, 220, 0, - 224, 226, 229, 215, 0, 214, 219, 225, 207, 219, - - 66, 85, 287, 287, 111, 112, 118, 248, 287, 0, - 208, 211, 206, 222, 210, 201, 219, 203, 199, 212, - 211, 0, 206, 209, 0, 212, 211, 0, 198, 207, - 188, 203, 191, 194, 196, 197, 198, 188, 200, 180, - 76, 123, 79, 179, 194, 188, 185, 0, 175, 182, - 178, 172, 188, 0, 170, 188, 176, 0, 186, 181, - 176, 170, 0, 171, 168, 176, 164, 0, 161, 0, - 0, 0, 171, 0, 168, 153, 140, 0, 133, 129, - 148, 0, 143, 145, 129, 126, 0, 138, 124, 127, - 137, 133, 126, 119, 130, 0, 0, 126, 124, 111, - - 126, 0, 0, 0, 112, 110, 123, 122, 106, 111, - 0, 121, 105, 0, 101, 0, 102, 0, 100, 98, - 0, 111, 125, 0, 0, 95, 0, 112, 0, 98, - 106, 99, 91, 87, 0, 287, 179, 182, 184, 187, - 190, 193, 124, 196 + 0, 0, 287, 288, 288, 288, 264, 53, 282, 288, + 276, 288, 288, 288, 288, 288, 42, 288, 267, 44, + 46, 288, 288, 44, 46, 48, 288, 45, 239, 47, + 241, 43, 240, 0, 44, 46, 51, 48, 236, 51, + 248, 63, 76, 251, 288, 288, 288, 35, 220, 288, + 76, 288, 102, 272, 288, 288, 83, 271, 0, 288, + 288, 288, 288, 288, 288, 288, 0, 233, 66, 242, + 75, 75, 0, 240, 226, 86, 226, 0, 0, 223, + 239, 227, 238, 0, 225, 0, 0, 0, 223, 220, + 0, 224, 226, 229, 215, 0, 214, 219, 225, 207, + + 219, 67, 86, 288, 288, 79, 113, 118, 249, 288, + 0, 208, 211, 206, 222, 210, 201, 219, 203, 199, + 212, 211, 0, 206, 209, 0, 212, 211, 0, 198, + 207, 188, 203, 191, 194, 196, 197, 198, 188, 200, + 180, 75, 119, 77, 179, 194, 188, 185, 0, 175, + 182, 178, 172, 188, 0, 170, 188, 176, 0, 186, + 181, 176, 170, 0, 171, 168, 176, 164, 0, 161, + 0, 0, 0, 171, 0, 168, 153, 161, 0, 154, + 150, 169, 0, 143, 145, 130, 127, 0, 139, 125, + 127, 137, 133, 126, 118, 131, 0, 0, 127, 125, + + 112, 127, 0, 0, 0, 113, 111, 124, 123, 106, + 111, 0, 121, 105, 0, 102, 0, 103, 0, 101, + 99, 0, 112, 127, 0, 0, 96, 0, 113, 0, + 99, 109, 102, 93, 87, 0, 288, 176, 179, 181, + 184, 187, 190, 125, 193 } ; -static yyconst flex_int16_t yy_def[245] = +static yyconst flex_int16_t yy_def[246] = { 0, - 236, 1, 236, 236, 236, 236, 236, 237, 238, 236, - 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, - 236, 236, 236, 236, 236, 236, 239, 239, 239, 239, - 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, - 239, 239, 239, 236, 236, 236, 240, 236, 236, 237, - 236, 241, 238, 236, 236, 236, 242, 243, 236, 236, - 236, 236, 236, 236, 236, 239, 239, 239, 239, 239, - 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, - 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, - 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, - - 240, 244, 236, 236, 237, 237, 241, 242, 236, 243, - 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, - 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, - 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, - 240, 244, 240, 239, 239, 239, 239, 239, 239, 239, - 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, - 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, - 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, - 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, - 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, - - 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, - 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, - 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, - 239, 239, 239, 239, 239, 0, 236, 236, 236, 236, - 236, 236, 236, 236 + 237, 1, 237, 237, 237, 237, 237, 238, 239, 237, + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, + 237, 237, 237, 237, 237, 237, 237, 240, 240, 240, + 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, + 240, 240, 240, 240, 237, 237, 237, 241, 237, 237, + 238, 237, 242, 239, 237, 237, 237, 243, 244, 237, + 237, 237, 237, 237, 237, 237, 240, 240, 240, 240, + 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, + 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, + 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, + + 240, 241, 245, 237, 237, 238, 238, 242, 243, 237, + 244, 240, 240, 240, 240, 240, 240, 240, 240, 240, + 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, + 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, + 240, 241, 245, 241, 240, 240, 240, 240, 240, 240, + 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, + 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, + 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, + 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, + 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, + + 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, + 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, + 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, + 240, 240, 240, 240, 240, 240, 0, 237, 237, 237, + 237, 237, 237, 237, 237 } ; -static yyconst flex_int16_t yy_nxt[344] = +static yyconst flex_int16_t yy_nxt[346] = { 0, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 4, 26, 27, 28, 29, 30, 31, 32, - 33, 33, 34, 33, 33, 35, 36, 37, 38, 39, - 33, 40, 41, 42, 33, 43, 33, 44, 4, 45, - 46, 33, 33, 47, 48, 4, 51, 56, 56, 56, - 56, 56, 56, 59, 60, 61, 62, 63, 64, 65, - 67, 70, 73, 77, 79, 81, 83, 87, 74, 51, - 75, 78, 122, 102, 80, 71, 84, 101, 68, 82, - 103, 90, 88, 85, 112, 91, 58, 92, 123, 50, - - 52, 106, 93, 96, 56, 56, 94, 97, 95, 113, - 98, 115, 118, 119, 102, 51, 51, 99, 116, 117, - 50, 103, 106, 52, 102, 101, 110, 102, 235, 234, - 233, 103, 232, 142, 103, 231, 230, 229, 228, 227, - 143, 226, 225, 224, 223, 107, 222, 221, 220, 219, - 218, 217, 216, 215, 214, 213, 212, 211, 210, 52, - 52, 209, 208, 207, 206, 205, 107, 204, 203, 202, - 201, 142, 200, 199, 198, 197, 196, 195, 143, 50, - 50, 50, 53, 53, 53, 66, 66, 101, 101, 101, - 105, 105, 105, 108, 108, 108, 141, 141, 141, 194, - - 193, 192, 191, 190, 189, 188, 187, 186, 185, 184, - 183, 182, 181, 180, 179, 178, 177, 176, 175, 174, - 173, 172, 171, 170, 169, 168, 167, 166, 165, 164, - 163, 162, 161, 160, 159, 158, 157, 156, 155, 154, - 153, 152, 151, 150, 149, 148, 147, 146, 145, 144, - 109, 140, 139, 138, 137, 136, 135, 134, 133, 132, - 131, 130, 129, 128, 127, 126, 125, 124, 121, 120, - 114, 111, 109, 54, 104, 100, 89, 86, 76, 72, - 69, 57, 55, 54, 49, 236, 3, 236, 236, 236, - 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, - - 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, - 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, - 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, - 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, - 236, 236, 236 + 24, 25, 26, 4, 27, 28, 29, 30, 31, 32, + 33, 34, 34, 35, 34, 34, 36, 37, 38, 39, + 40, 34, 41, 42, 43, 34, 44, 34, 45, 4, + 46, 47, 34, 34, 48, 49, 4, 52, 57, 57, + 57, 57, 57, 57, 60, 61, 62, 63, 64, 65, + 66, 68, 71, 74, 78, 80, 82, 84, 88, 75, + 52, 76, 79, 52, 103, 81, 72, 85, 102, 69, + 83, 104, 91, 89, 86, 113, 92, 59, 93, 57, + + 57, 97, 53, 94, 51, 98, 107, 95, 99, 96, + 114, 116, 119, 120, 123, 100, 103, 52, 117, 118, + 51, 102, 107, 104, 103, 53, 103, 111, 53, 236, + 124, 104, 235, 104, 234, 143, 233, 232, 231, 230, + 229, 228, 144, 227, 226, 225, 224, 223, 222, 221, + 220, 108, 219, 218, 217, 216, 215, 214, 213, 212, + 211, 210, 53, 209, 208, 207, 206, 108, 143, 205, + 204, 203, 202, 201, 200, 144, 51, 51, 51, 54, + 54, 54, 67, 67, 102, 102, 102, 106, 106, 106, + 109, 109, 109, 142, 142, 142, 199, 198, 197, 196, + + 195, 194, 193, 192, 191, 190, 189, 188, 187, 186, + 185, 184, 183, 182, 181, 180, 179, 178, 177, 176, + 175, 174, 173, 172, 171, 170, 169, 168, 167, 166, + 165, 164, 163, 162, 161, 160, 159, 158, 157, 156, + 155, 154, 153, 152, 151, 150, 149, 148, 147, 146, + 145, 110, 141, 140, 139, 138, 137, 136, 135, 134, + 133, 132, 131, 130, 129, 128, 127, 126, 125, 122, + 121, 115, 112, 110, 55, 105, 101, 90, 87, 77, + 73, 70, 58, 56, 55, 50, 237, 3, 237, 237, + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, + + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, + 237, 237, 237, 237, 237 } ; -static yyconst flex_int16_t yy_chk[344] = +static yyconst flex_int16_t yy_chk[346] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 8, 17, 17, 19, - 19, 20, 20, 23, 23, 23, 24, 24, 25, 25, - 27, 29, 31, 34, 35, 36, 37, 39, 31, 50, - 31, 34, 75, 47, 35, 29, 37, 102, 27, 36, - 47, 41, 39, 37, 68, 41, 19, 41, 75, 52, - - 8, 52, 41, 42, 56, 56, 41, 42, 41, 68, - 42, 70, 71, 71, 101, 105, 106, 42, 70, 70, - 107, 101, 107, 50, 141, 142, 243, 143, 234, 233, - 232, 141, 231, 102, 143, 230, 228, 226, 223, 222, - 102, 220, 219, 217, 215, 52, 213, 212, 210, 209, - 208, 207, 206, 205, 201, 200, 199, 198, 195, 105, - 106, 194, 193, 192, 191, 190, 107, 189, 188, 186, - 185, 142, 184, 183, 181, 180, 179, 177, 142, 237, - 237, 237, 238, 238, 238, 239, 239, 240, 240, 240, - 241, 241, 241, 242, 242, 242, 244, 244, 244, 176, - - 175, 173, 169, 167, 166, 165, 164, 162, 161, 160, - 159, 157, 156, 155, 153, 152, 151, 150, 149, 147, - 146, 145, 144, 140, 139, 138, 137, 136, 135, 134, - 133, 132, 131, 130, 129, 127, 126, 124, 123, 121, - 120, 119, 118, 117, 116, 115, 114, 113, 112, 111, - 108, 100, 99, 98, 97, 96, 94, 93, 92, 91, - 89, 88, 84, 82, 81, 80, 79, 76, 74, 73, - 69, 67, 57, 53, 48, 43, 40, 38, 32, 30, - 28, 18, 11, 9, 7, 3, 236, 236, 236, 236, - 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, - - 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, - 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, - 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, - 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, - 236, 236, 236 + 1, 1, 1, 1, 1, 1, 1, 8, 17, 17, + 20, 20, 21, 21, 24, 24, 24, 25, 25, 26, + 26, 28, 30, 32, 35, 36, 37, 38, 40, 32, + 51, 32, 35, 106, 48, 36, 30, 38, 103, 28, + 37, 48, 42, 40, 38, 69, 42, 20, 42, 57, + + 57, 43, 8, 42, 53, 43, 53, 42, 43, 42, + 69, 71, 72, 72, 76, 43, 102, 107, 71, 71, + 108, 143, 108, 102, 142, 51, 144, 244, 106, 235, + 76, 142, 234, 144, 233, 103, 232, 231, 229, 227, + 224, 223, 103, 221, 220, 218, 216, 214, 213, 211, + 210, 53, 209, 208, 207, 206, 202, 201, 200, 199, + 196, 195, 107, 194, 193, 192, 191, 108, 143, 190, + 189, 187, 186, 185, 184, 143, 238, 238, 238, 239, + 239, 239, 240, 240, 241, 241, 241, 242, 242, 242, + 243, 243, 243, 245, 245, 245, 182, 181, 180, 178, + + 177, 176, 174, 170, 168, 167, 166, 165, 163, 162, + 161, 160, 158, 157, 156, 154, 153, 152, 151, 150, + 148, 147, 146, 145, 141, 140, 139, 138, 137, 136, + 135, 134, 133, 132, 131, 130, 128, 127, 125, 124, + 122, 121, 120, 119, 118, 117, 116, 115, 114, 113, + 112, 109, 101, 100, 99, 98, 97, 95, 94, 93, + 92, 90, 89, 85, 83, 82, 81, 80, 77, 75, + 74, 70, 68, 58, 54, 49, 44, 41, 39, 33, + 31, 29, 19, 11, 9, 7, 3, 237, 237, 237, + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, + + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, + 237, 237, 237, 237, 237 } ; /* Table of booleans, true if rule could match eol. */ -static yyconst flex_int32_t yy_rule_can_match_eol[85] = +static yyconst flex_int32_t yy_rule_can_match_eol[86] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, - 0, 0, 1, 0, 0, }; + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, + 0, 0, 0, 1, 0, 0, }; static yy_state_type yy_last_accepting_state; static char *yy_last_accepting_cpos; @@ -915,13 +915,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 >= 237 ) + if ( yy_current_state >= 238 ) 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] != 287 ); + while ( yy_base[yy_current_state] != 288 ); yy_find_action: yy_act = yy_accept[yy_current_state]; @@ -1128,217 +1128,222 @@ YY_RULE_SETUP case 35: YY_RULE_SETUP #line 58 "magic-interpreter.l" -{FIXLOC; return SHL;} +{FIXLOC; return '.';} YY_BREAK case 36: YY_RULE_SETUP #line 59 "magic-interpreter.l" -{FIXLOC; return SHR;} +{FIXLOC; return SHL;} YY_BREAK case 37: YY_RULE_SETUP #line 60 "magic-interpreter.l" -{FIXLOC; return PROCEDURE;} +{FIXLOC; return SHR;} YY_BREAK case 38: YY_RULE_SETUP #line 61 "magic-interpreter.l" -{FIXLOC; return CALL;} +{FIXLOC; return PROCEDURE;} YY_BREAK case 39: YY_RULE_SETUP #line 62 "magic-interpreter.l" -{FIXLOC; return OR;} +{FIXLOC; return CALL;} YY_BREAK case 40: YY_RULE_SETUP #line 63 "magic-interpreter.l" -{FIXLOC; return TO;} +{FIXLOC; return OR;} YY_BREAK case 41: YY_RULE_SETUP #line 64 "magic-interpreter.l" -{FIXLOC; return TOWARDS;} +{FIXLOC; return TO;} YY_BREAK case 42: YY_RULE_SETUP #line 65 "magic-interpreter.l" -{FIXLOC; return TELEPORT_ANCHOR;} +{FIXLOC; return TOWARDS;} YY_BREAK case 43: YY_RULE_SETUP #line 66 "magic-interpreter.l" -{FIXLOC; return SILENT;} +{FIXLOC; return TELEPORT_ANCHOR;} YY_BREAK case 44: YY_RULE_SETUP #line 67 "magic-interpreter.l" -{FIXLOC; return LOCAL;} +{FIXLOC; return SILENT;} YY_BREAK case 45: YY_RULE_SETUP #line 68 "magic-interpreter.l" -{FIXLOC; return NONMAGIC;} +{FIXLOC; return LOCAL;} YY_BREAK case 46: YY_RULE_SETUP #line 69 "magic-interpreter.l" -{FIXLOC; return SPELL;} +{FIXLOC; return NONMAGIC;} YY_BREAK case 47: YY_RULE_SETUP #line 70 "magic-interpreter.l" -{FIXLOC; return LET;} +{FIXLOC; return SPELL;} YY_BREAK case 48: YY_RULE_SETUP #line 71 "magic-interpreter.l" -{FIXLOC; return IN;} +{FIXLOC; return LET;} YY_BREAK case 49: YY_RULE_SETUP #line 72 "magic-interpreter.l" -{FIXLOC; return END;} +{FIXLOC; return IN;} YY_BREAK case 50: YY_RULE_SETUP #line 73 "magic-interpreter.l" -{FIXLOC; return DARROW;} +{FIXLOC; return END;} YY_BREAK case 51: YY_RULE_SETUP #line 74 "magic-interpreter.l" -{FIXLOC; return STRING_TY;} +{FIXLOC; return DARROW;} YY_BREAK case 52: YY_RULE_SETUP #line 75 "magic-interpreter.l" -{FIXLOC; return REQUIRE;} +{FIXLOC; return STRING_TY;} YY_BREAK case 53: YY_RULE_SETUP #line 76 "magic-interpreter.l" -{FIXLOC; return CATALYSTS;} +{FIXLOC; return REQUIRE;} YY_BREAK case 54: YY_RULE_SETUP #line 77 "magic-interpreter.l" -{FIXLOC; return COMPONENTS;} +{FIXLOC; return CATALYSTS;} YY_BREAK case 55: YY_RULE_SETUP #line 78 "magic-interpreter.l" -{FIXLOC; return MANA;} +{FIXLOC; return COMPONENTS;} YY_BREAK case 56: YY_RULE_SETUP #line 79 "magic-interpreter.l" -{FIXLOC; return CASTTIME;} +{FIXLOC; return MANA;} YY_BREAK case 57: YY_RULE_SETUP #line 80 "magic-interpreter.l" -{FIXLOC; return SKIP;} +{FIXLOC; return CASTTIME;} YY_BREAK case 58: YY_RULE_SETUP #line 81 "magic-interpreter.l" -{FIXLOC; return ABORT;} +{FIXLOC; return SKIP;} YY_BREAK case 59: YY_RULE_SETUP #line 82 "magic-interpreter.l" -{FIXLOC; return BREAK;} +{FIXLOC; return ABORT;} YY_BREAK case 60: YY_RULE_SETUP #line 83 "magic-interpreter.l" -{FIXLOC; return EFFECT;} +{FIXLOC; return BREAK;} YY_BREAK case 61: YY_RULE_SETUP #line 84 "magic-interpreter.l" -{FIXLOC; return ATEND;} +{FIXLOC; return EFFECT;} YY_BREAK case 62: YY_RULE_SETUP #line 85 "magic-interpreter.l" -{FIXLOC; return ATTRIGGER;} +{FIXLOC; return ATEND;} YY_BREAK case 63: YY_RULE_SETUP #line 86 "magic-interpreter.l" -{FIXLOC; return CONST;} +{FIXLOC; return ATTRIGGER;} YY_BREAK case 64: YY_RULE_SETUP #line 87 "magic-interpreter.l" -{FIXLOC; return PC_F;} +{FIXLOC; return CONST;} YY_BREAK case 65: YY_RULE_SETUP #line 88 "magic-interpreter.l" -{FIXLOC; return MOB_F;} +{FIXLOC; return PC_F;} YY_BREAK case 66: YY_RULE_SETUP #line 89 "magic-interpreter.l" -{FIXLOC; return ENTITY_F;} +{FIXLOC; return MOB_F;} YY_BREAK case 67: YY_RULE_SETUP #line 90 "magic-interpreter.l" -{FIXLOC; return TARGET_F;} +{FIXLOC; return ENTITY_F;} YY_BREAK case 68: YY_RULE_SETUP #line 91 "magic-interpreter.l" -{FIXLOC; return IF;} +{FIXLOC; return TARGET_F;} YY_BREAK case 69: YY_RULE_SETUP #line 92 "magic-interpreter.l" -{FIXLOC; return THEN;} +{FIXLOC; return IF;} YY_BREAK case 70: YY_RULE_SETUP #line 93 "magic-interpreter.l" -{FIXLOC; return ELSE;} +{FIXLOC; return THEN;} YY_BREAK case 71: YY_RULE_SETUP #line 94 "magic-interpreter.l" -{FIXLOC; return FOREACH;} +{FIXLOC; return ELSE;} YY_BREAK case 72: YY_RULE_SETUP #line 95 "magic-interpreter.l" -{FIXLOC; return FOR;} +{FIXLOC; return FOREACH;} YY_BREAK case 73: YY_RULE_SETUP #line 96 "magic-interpreter.l" -{FIXLOC; return DO;} +{FIXLOC; return FOR;} YY_BREAK case 74: YY_RULE_SETUP #line 97 "magic-interpreter.l" -{FIXLOC; return SLEEP;} +{FIXLOC; return DO;} YY_BREAK case 75: -/* rule 75 can match eol */ YY_RULE_SETUP -#line 99 "magic-interpreter.l" +#line 98 "magic-interpreter.l" +{FIXLOC; return SLEEP;} + YY_BREAK +case 76: +/* rule 76 can match eol */ +YY_RULE_SETUP +#line 100 "magic-interpreter.l" { char *string = strdup(magic_frontend_text); magic_frontend_lval.s = string; FIXLOC; return SCRIPT_DATA; } YY_BREAK -case 76: -/* rule 76 can match eol */ +case 77: +/* rule 77 can match eol */ YY_RULE_SETUP -#line 105 "magic-interpreter.l" +#line 106 "magic-interpreter.l" { char *string = strdup(magic_frontend_text + 1); char *src = string; char *dst = string; @@ -1354,60 +1359,60 @@ YY_RULE_SETUP return STRING; } YY_BREAK -case 77: +case 78: YY_RULE_SETUP -#line 120 "magic-interpreter.l" +#line 121 "magic-interpreter.l" { magic_frontend_lval.i = atoi(magic_frontend_text); FIXLOC; return INT; } YY_BREAK -case 78: +case 79: YY_RULE_SETUP -#line 124 "magic-interpreter.l" +#line 125 "magic-interpreter.l" { magic_frontend_lval.i = strtol(magic_frontend_text + 2, NULL, 16); FIXLOC; return INT; } YY_BREAK -case 79: +case 80: YY_RULE_SETUP -#line 128 "magic-interpreter.l" +#line 129 "magic-interpreter.l" { magic_frontend_lval.s = strdup(magic_frontend_text); FIXLOC; return ID; } YY_BREAK -case 80: +case 81: *yy_cp = (yy_hold_char); /* undo effects of setting up magic_frontend_text */ (yy_c_buf_p) = yy_cp -= 1; YY_DO_BEFORE_ACTION; /* set up magic_frontend_text again */ YY_RULE_SETUP -#line 132 "magic-interpreter.l" +#line 133 "magic-interpreter.l" /* Ignore comments */ YY_BREAK -case 81: +case 82: *yy_cp = (yy_hold_char); /* undo effects of setting up magic_frontend_text */ (yy_c_buf_p) = yy_cp -= 1; YY_DO_BEFORE_ACTION; /* set up magic_frontend_text again */ YY_RULE_SETUP -#line 133 "magic-interpreter.l" +#line 134 "magic-interpreter.l" /* Ignore comments */ YY_BREAK -case 82: -/* rule 82 can match eol */ +case 83: +/* rule 83 can match eol */ YY_RULE_SETUP -#line 134 "magic-interpreter.l" +#line 135 "magic-interpreter.l" /* ignore whitespace */ YY_BREAK -case 83: +case 84: YY_RULE_SETUP -#line 135 "magic-interpreter.l" +#line 136 "magic-interpreter.l" fprintf(stderr, "%s: Unexpected character in line %d\n", MAGIC_CONFIG_FILE, magic_frontend_lineno); YY_BREAK -case 84: +case 85: YY_RULE_SETUP -#line 138 "magic-interpreter.l" +#line 139 "magic-interpreter.l" ECHO; YY_BREAK -#line 1411 "magic-interpreter-lexer.c" +#line 1416 "magic-interpreter-lexer.c" case YY_STATE_EOF(INITIAL): yyterminate(); @@ -1699,7 +1704,7 @@ static int yy_get_next_buffer (void) 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 >= 237 ) + if ( yy_current_state >= 238 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -1727,11 +1732,11 @@ static int yy_get_next_buffer (void) 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 >= 237 ) + if ( yy_current_state >= 238 ) 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 == 236); + yy_is_jam = (yy_current_state == 237); return yy_is_jam ? 0 : yy_current_state; } @@ -2376,7 +2381,7 @@ void magic_frontend_free (void * ptr ) #define YYTABLES_NAME "yytables" -#line 138 "magic-interpreter.l" +#line 139 "magic-interpreter.l" |