[Scummvm-git-logs] scummvm master -> 825b714cb6db3b987b647467d881b614da377dde
sev-
sev at scummvm.org
Sat Apr 4 22:22:22 UTC 2020
This automated email contains information about 3 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
54fc3b5cbe DIRECTOR: LINGO: Remove _twoWordBuiltins as an obsolete concept
e81954330f DIRECTOR: LINGO: Remove special treatment of 'sound' in lexer. Now we do it with preprocessor
825b714cb6 DIRECTOR: LINGO: Merged sound-* with b_sound()
Commit: 54fc3b5cbef317cc7d3839fb3857608cf20310b5
https://github.com/scummvm/scummvm/commit/54fc3b5cbef317cc7d3839fb3857608cf20310b5
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2020-04-05T00:21:53+02:00
Commit Message:
DIRECTOR: LINGO: Remove _twoWordBuiltins as an obsolete concept
Changed paths:
engines/director/lingo/lingo-builtins.cpp
engines/director/lingo/lingo.h
diff --git a/engines/director/lingo/lingo-builtins.cpp b/engines/director/lingo/lingo-builtins.cpp
index 45681bbe73..d8c9ce8623 100644
--- a/engines/director/lingo/lingo-builtins.cpp
+++ b/engines/director/lingo/lingo-builtins.cpp
@@ -199,11 +199,6 @@ static struct BuiltinProto {
{ "mci", LB::b_mci, 1, 1, false, 3, BLTIN }, // D3.1 c
{ "mciwait", LB::b_mciwait, 1, 1, false, 4, BLTIN }, // D4 c
{ "sound", LB::b_sound, 2, 3, false, 3, BLTIN }, // D3 c
- { "sound-close", LB::b_soundClose, 1, 1, false, 4, BLTIN }, // D4 c
- { "sound-fadeIn", LB::b_soundFadeIn, 1, 2, false, 3, BLTIN }, // D3 c
- { "sound-fadeOut", LB::b_soundFadeOut, 1, 2, false, 3, BLTIN }, // D3 c
- { "sound-playFile", LB::b_soundPlayFile,2, 2, false, 3, BLTIN }, // D3 c
- { "sound-stop", LB::b_soundStop, 1, 1, false, 2, BLTIN }, // D2 c
{ "soundBusy", LB::b_soundBusy, 1, 1, true, 3, FBLTIN }, // D3 f
// Window
{ "close", LB::b_close, 1, 1, false, 4, BLTIN }, // D4 c
@@ -240,13 +235,6 @@ static struct BuiltinProto {
{ 0, 0, 0, 0, false, 0, 0 }
};
-static const char *twoWordBuiltins[] = {
- //"duplicate",
- //"erase",
- "sound",
- 0
-};
-
static const char *predefinedMethods[] = {
"mAtFrame", // D3
"mDescribe", // D3
@@ -281,9 +269,6 @@ void Lingo::initBuiltIns() {
_functions[(void *)sym->u.s] = new FuncDesc(blt->name, "");
}
- for (const char **b = twoWordBuiltins; *b; b++)
- _twoWordBuiltins[*b] = true;
-
// Set predefined methods
for (const char **b = predefinedMethods; *b; b++) {
Symbol *s = g_lingo->lookupVar(*b, true, true);
diff --git a/engines/director/lingo/lingo.h b/engines/director/lingo/lingo.h
index 5df94ac8c4..93d8fbdb1b 100644
--- a/engines/director/lingo/lingo.h
+++ b/engines/director/lingo/lingo.h
@@ -316,7 +316,6 @@ public:
Common::Array<int> _labelstack;
SymbolHash _builtins;
- Common::HashMap<Common::String, bool> _twoWordBuiltins;
Common::HashMap<uint32, Symbol *> _handlers;
int _linenumber;
Commit: e81954330f57bd436226d13e08724673fad2388b
https://github.com/scummvm/scummvm/commit/e81954330f57bd436226d13e08724673fad2388b
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2020-04-05T00:21:59+02:00
Commit Message:
DIRECTOR: LINGO: Remove special treatment of 'sound' in lexer. Now we do it with preprocessor
Changed paths:
engines/director/lingo/lingo-lex.cpp
engines/director/lingo/lingo-lex.l
diff --git a/engines/director/lingo/lingo-lex.cpp b/engines/director/lingo/lingo-lex.cpp
index 4ac26627d1..38ff38aea8 100644
--- a/engines/director/lingo/lingo-lex.cpp
+++ b/engines/director/lingo/lingo-lex.cpp
@@ -364,8 +364,8 @@ static void yy_fatal_error (yyconst char msg[] );
*yy_cp = '\0'; \
(yy_c_buf_p) = yy_cp;
-#define YY_NUM_RULES 76
-#define YY_END_OF_BUFFER 77
+#define YY_NUM_RULES 75
+#define YY_END_OF_BUFFER 76
/* This struct is not used in this scanner,
but its presence is necessary. */
struct yy_trans_info
@@ -373,48 +373,45 @@ struct yy_trans_info
flex_int32_t yy_verify;
flex_int32_t yy_nxt;
};
-static yyconst flex_int16_t yy_accept[364] =
+static yyconst flex_int16_t yy_accept[333] =
{ 0,
- 0, 0, 77, 75, 4, 73, 73, 75, 75, 75,
- 72, 72, 72, 71, 72, 68, 72, 69, 69, 69,
- 69, 69, 69, 69, 69, 69, 69, 69, 69, 69,
- 69, 69, 69, 69, 75, 3, 3, 69, 4, 73,
- 0, 0, 0, 74, 5, 67, 2, 70, 71, 66,
- 64, 65, 69, 69, 69, 69, 69, 69, 69, 69,
- 69, 69, 69, 69, 12, 24, 69, 69, 69, 69,
- 69, 69, 69, 69, 34, 35, 69, 37, 69, 69,
- 69, 69, 69, 69, 69, 69, 69, 69, 57, 69,
- 69, 69, 1, 3, 3, 0, 69, 5, 2, 70,
-
- 69, 7, 69, 69, 69, 69, 69, 15, 69, 69,
- 20, 69, 69, 69, 69, 69, 69, 69, 30, 69,
- 69, 33, 69, 69, 69, 69, 43, 69, 45, 69,
- 69, 69, 69, 69, 69, 69, 69, 69, 0, 69,
- 69, 69, 9, 69, 11, 14, 0, 17, 69, 0,
- 0, 69, 69, 23, 25, 26, 27, 69, 69, 69,
- 32, 36, 39, 69, 69, 69, 69, 69, 69, 48,
- 0, 56, 61, 69, 59, 63, 0, 69, 6, 69,
- 69, 0, 15, 69, 0, 20, 69, 69, 28, 69,
- 31, 0, 69, 69, 69, 69, 69, 69, 69, 55,
-
- 55, 55, 55, 55, 62, 69, 0, 69, 8, 69,
- 0, 15, 18, 0, 0, 69, 69, 69, 0, 69,
- 69, 69, 44, 0, 58, 47, 0, 0, 55, 55,
- 55, 55, 60, 0, 69, 69, 13, 0, 69, 69,
- 0, 29, 0, 69, 69, 69, 0, 0, 0, 0,
- 0, 0, 0, 0, 55, 55, 55, 55, 0, 16,
- 10, 19, 21, 69, 29, 29, 0, 69, 41, 42,
- 0, 0, 0, 0, 0, 0, 0, 55, 55, 55,
- 55, 16, 69, 29, 0, 40, 0, 0, 0, 0,
- 0, 0, 0, 0, 55, 0, 55, 22, 38, 0,
-
- 0, 0, 46, 54, 53, 54, 0, 0, 0, 0,
- 55, 0, 0, 0, 46, 0, 0, 0, 53, 0,
- 0, 0, 0, 0, 0, 0, 0, 46, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 49, 0, 46,
- 0, 0, 0, 54, 53, 53, 54, 0, 50, 46,
- 52, 53, 53, 0, 53, 0, 53, 0, 0, 0,
- 0, 51, 0
+ 0, 0, 76, 74, 4, 72, 72, 74, 74, 74,
+ 71, 71, 71, 70, 71, 67, 71, 68, 68, 68,
+ 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,
+ 68, 68, 68, 68, 74, 3, 3, 68, 4, 72,
+ 0, 0, 0, 73, 5, 66, 2, 69, 70, 65,
+ 63, 64, 68, 68, 68, 68, 68, 68, 68, 68,
+ 68, 68, 68, 68, 12, 24, 68, 68, 68, 68,
+ 68, 68, 68, 68, 34, 35, 68, 37, 68, 68,
+ 68, 68, 68, 68, 68, 68, 68, 56, 68, 68,
+ 68, 1, 3, 3, 0, 68, 5, 2, 69, 68,
+
+ 7, 68, 68, 68, 68, 68, 15, 68, 68, 20,
+ 68, 68, 68, 68, 68, 68, 68, 30, 68, 68,
+ 33, 68, 68, 68, 68, 43, 68, 45, 68, 68,
+ 68, 68, 68, 68, 68, 68, 0, 68, 68, 68,
+ 9, 68, 11, 14, 0, 17, 68, 0, 0, 68,
+ 68, 23, 25, 26, 27, 68, 68, 68, 32, 36,
+ 39, 68, 68, 68, 68, 68, 47, 0, 55, 60,
+ 68, 58, 62, 0, 68, 6, 68, 68, 0, 15,
+ 68, 0, 20, 68, 68, 28, 68, 31, 0, 68,
+ 68, 68, 68, 68, 68, 54, 54, 54, 54, 54,
+
+ 61, 68, 0, 68, 8, 68, 0, 15, 18, 0,
+ 0, 68, 68, 68, 0, 68, 68, 68, 44, 57,
+ 46, 0, 0, 54, 54, 54, 54, 59, 0, 68,
+ 68, 13, 0, 68, 68, 0, 29, 0, 68, 68,
+ 68, 0, 0, 0, 0, 54, 54, 54, 54, 0,
+ 16, 10, 19, 21, 68, 29, 29, 0, 68, 41,
+ 42, 0, 0, 0, 54, 54, 54, 54, 16, 68,
+ 29, 0, 40, 0, 0, 0, 0, 54, 0, 54,
+ 22, 38, 53, 52, 53, 0, 0, 0, 0, 54,
+ 0, 0, 0, 52, 0, 0, 0, 0, 0, 0,
+
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,
+ 0, 0, 0, 53, 52, 52, 53, 0, 49, 51,
+ 52, 52, 0, 52, 0, 52, 0, 0, 0, 0,
+ 50, 0
} ;
static yyconst flex_int32_t yy_ec[256] =
@@ -460,97 +457,91 @@ static yyconst flex_int32_t yy_meta[66] =
5, 5, 5, 5, 1
} ;
-static yyconst flex_int16_t yy_base[381] =
+static yyconst flex_int16_t yy_base[350] =
{ 0,
- 0, 64, 240, 979, 68, 979, 979, 72, 230, 0,
- 979, 177, 140, 55, 63, 979, 130, 59, 59, 59,
+ 0, 64, 173, 929, 68, 929, 929, 72, 162, 0,
+ 929, 157, 134, 55, 63, 929, 125, 59, 59, 59,
55, 63, 0, 64, 75, 70, 100, 77, 110, 102,
- 98, 139, 126, 152, 145, 185, 206, 110, 210, 979,
- 214, 175, 97, 979, 0, 979, 0, 86, 171, 979,
- 979, 979, 0, 66, 116, 144, 154, 111, 130, 139,
- 175, 174, 151, 82, 0, 187, 179, 174, 193, 185,
- 195, 206, 192, 198, 0, 0, 213, 0, 218, 218,
- 202, 207, 206, 206, 211, 232, 225, 235, 0, 248,
- 223, 230, 979, 281, 286, 253, 258, 0, 0, 69,
-
- 259, 0, 262, 260, 261, 268, 278, 91, 266, 286,
- 305, 271, 288, 283, 291, 283, 282, 295, 0, 297,
- 291, 0, 302, 292, 299, 310, 0, 302, 0, 314,
- 320, 316, 326, 352, 329, 332, 337, 342, 344, 331,
- 335, 336, 0, 354, 0, 153, 370, 0, 357, 343,
- 348, 362, 351, 0, 0, 0, 0, 355, 359, 370,
- 0, 0, 393, 369, 376, 384, 383, 371, 372, 0,
- 434, 0, 0, 391, 390, 0, 379, 387, 0, 397,
- 395, 419, 0, 396, 408, 427, 398, 399, 0, 414,
- 0, 444, 423, 418, 419, 418, 453, 433, 422, 460,
-
- 473, 484, 491, 495, 0, 431, 434, 441, 0, 453,
- 477, 0, 0, 474, 505, 484, 483, 506, 476, 494,
- 480, 482, 0, 551, 0, 0, 529, 501, 520, 540,
- 553, 567, 0, 510, 511, 523, 979, 493, 541, 546,
- 530, 0, 549, 550, 542, 539, 553, 572, 557, 558,
- 597, 580, 579, 580, 610, 611, 623, 629, 571, 0,
- 0, 979, 0, 584, 0, 0, 595, 597, 0, 0,
- 602, 616, 620, 610, 607, 636, 616, 647, 665, 669,
- 671, 979, 619, 0, 634, 0, 625, 639, 623, 641,
- 657, 686, 663, 688, 692, 696, 702, 0, 979, 674,
-
- 680, 677, 979, 979, 0, 979, 717, 727, 734, 733,
- 735, 741, 705, 752, 979, 722, 717, 723, 0, 734,
- 758, 760, 774, 784, 765, 794, 744, 979, 726, 741,
- 745, 756, 807, 805, 811, 816, 758, 818, 820, 979,
- 769, 829, 831, 835, 798, 817, 839, 840, 845, 979,
- 979, 847, 856, 858, 860, 841, 867, 825, 834, 872,
- 874, 979, 979, 908, 910, 913, 916, 922, 927, 932,
- 934, 939, 944, 947, 950, 955, 960, 962, 967, 972
+ 98, 129, 128, 131, 144, 167, 188, 134, 192, 929,
+ 196, 175, 130, 929, 0, 929, 0, 86, 174, 929,
+ 929, 929, 0, 66, 163, 180, 186, 74, 167, 172,
+ 189, 186, 177, 82, 0, 181, 191, 188, 188, 194,
+ 184, 213, 181, 186, 0, 0, 201, 0, 206, 225,
+ 190, 220, 217, 221, 239, 232, 239, 0, 241, 229,
+ 232, 929, 290, 294, 260, 261, 0, 0, 69, 261,
+
+ 0, 254, 253, 255, 271, 280, 91, 268, 286, 313,
+ 271, 290, 281, 292, 288, 288, 293, 0, 297, 290,
+ 0, 299, 292, 297, 308, 0, 319, 0, 321, 317,
+ 324, 352, 324, 334, 338, 344, 347, 333, 336, 337,
+ 0, 356, 0, 265, 267, 0, 359, 345, 349, 365,
+ 347, 0, 0, 0, 0, 354, 356, 367, 0, 0,
+ 394, 365, 374, 380, 365, 371, 0, 435, 0, 0,
+ 388, 389, 0, 382, 388, 0, 398, 396, 423, 0,
+ 396, 409, 427, 402, 399, 0, 407, 0, 448, 416,
+ 413, 421, 421, 417, 424, 466, 482, 492, 498, 496,
+
+ 0, 430, 431, 432, 0, 437, 427, 0, 0, 453,
+ 509, 460, 470, 505, 476, 493, 479, 482, 0, 0,
+ 0, 520, 499, 541, 543, 557, 558, 0, 490, 502,
+ 515, 929, 511, 515, 545, 524, 0, 552, 551, 542,
+ 537, 576, 563, 560, 558, 582, 586, 608, 610, 558,
+ 0, 0, 929, 0, 567, 0, 0, 575, 584, 0,
+ 0, 581, 619, 595, 623, 629, 643, 647, 929, 598,
+ 0, 598, 0, 615, 649, 616, 653, 661, 675, 674,
+ 0, 929, 929, 0, 929, 667, 680, 684, 676, 694,
+ 685, 669, 712, 0, 683, 719, 698, 723, 725, 733,
+
+ 738, 689, 712, 697, 748, 747, 759, 757, 701, 771,
+ 780, 781, 786, 788, 745, 734, 794, 798, 802, 929,
+ 804, 808, 810, 812, 791, 817, 773, 773, 822, 826,
+ 929, 929, 858, 860, 863, 866, 872, 877, 882, 884,
+ 889, 894, 897, 900, 905, 910, 912, 917, 922
} ;
-static yyconst flex_int16_t yy_def[381] =
+static yyconst flex_int16_t yy_def[350] =
{ 0,
- 363, 1, 363, 363, 363, 363, 363, 363, 364, 365,
- 363, 363, 363, 363, 363, 363, 363, 366, 366, 366,
- 366, 366, 366, 366, 366, 366, 366, 366, 366, 366,
- 366, 366, 366, 366, 363, 363, 363, 366, 363, 363,
- 363, 363, 364, 363, 367, 363, 368, 363, 363, 363,
- 363, 363, 366, 366, 366, 366, 366, 366, 366, 366,
- 366, 366, 366, 366, 366, 366, 366, 366, 366, 366,
- 366, 366, 366, 366, 366, 366, 366, 366, 366, 366,
- 366, 366, 366, 366, 366, 366, 366, 366, 366, 366,
- 366, 366, 363, 363, 363, 363, 366, 367, 368, 363,
-
- 366, 366, 366, 366, 366, 366, 366, 366, 366, 366,
- 363, 366, 366, 366, 366, 366, 366, 366, 366, 366,
- 366, 366, 366, 366, 366, 366, 366, 366, 366, 366,
- 366, 366, 366, 366, 366, 366, 366, 366, 363, 366,
- 366, 366, 366, 366, 366, 366, 369, 366, 366, 363,
- 363, 366, 366, 366, 366, 366, 366, 366, 366, 366,
- 366, 366, 366, 366, 366, 366, 366, 366, 366, 366,
- 370, 366, 366, 366, 366, 366, 363, 366, 366, 366,
- 366, 363, 371, 366, 363, 363, 366, 366, 366, 366,
- 366, 363, 366, 366, 366, 366, 366, 366, 366, 370,
-
- 370, 370, 370, 370, 366, 366, 363, 366, 366, 366,
- 363, 371, 366, 363, 363, 366, 366, 372, 363, 366,
- 366, 366, 366, 363, 366, 366, 363, 363, 370, 370,
- 370, 370, 366, 363, 366, 366, 363, 363, 366, 366,
- 373, 374, 363, 366, 366, 366, 363, 363, 363, 363,
- 363, 363, 363, 363, 370, 370, 370, 370, 363, 366,
- 366, 363, 366, 366, 375, 374, 363, 366, 366, 366,
- 363, 363, 363, 363, 363, 363, 363, 370, 370, 370,
- 370, 363, 366, 375, 363, 366, 363, 363, 363, 363,
- 363, 376, 363, 377, 370, 363, 370, 366, 363, 363,
-
- 363, 363, 363, 363, 378, 363, 377, 377, 377, 377,
- 370, 363, 363, 363, 363, 363, 363, 363, 378, 363,
- 377, 377, 377, 363, 363, 363, 363, 363, 363, 363,
- 363, 363, 377, 376, 377, 363, 363, 376, 363, 363,
- 363, 363, 363, 377, 378, 378, 377, 363, 376, 363,
- 363, 378, 378, 379, 380, 363, 380, 363, 363, 363,
- 363, 363, 0, 363, 363, 363, 363, 363, 363, 363,
- 363, 363, 363, 363, 363, 363, 363, 363, 363, 363
+ 332, 1, 332, 332, 332, 332, 332, 332, 333, 334,
+ 332, 332, 332, 332, 332, 332, 332, 335, 335, 335,
+ 335, 335, 335, 335, 335, 335, 335, 335, 335, 335,
+ 335, 335, 335, 335, 332, 332, 332, 335, 332, 332,
+ 332, 332, 333, 332, 336, 332, 337, 332, 332, 332,
+ 332, 332, 335, 335, 335, 335, 335, 335, 335, 335,
+ 335, 335, 335, 335, 335, 335, 335, 335, 335, 335,
+ 335, 335, 335, 335, 335, 335, 335, 335, 335, 335,
+ 335, 335, 335, 335, 335, 335, 335, 335, 335, 335,
+ 335, 332, 332, 332, 332, 335, 336, 337, 332, 335,
+
+ 335, 335, 335, 335, 335, 335, 335, 335, 335, 332,
+ 335, 335, 335, 335, 335, 335, 335, 335, 335, 335,
+ 335, 335, 335, 335, 335, 335, 335, 335, 335, 335,
+ 335, 335, 335, 335, 335, 335, 332, 335, 335, 335,
+ 335, 335, 335, 335, 338, 335, 335, 332, 332, 335,
+ 335, 335, 335, 335, 335, 335, 335, 335, 335, 335,
+ 335, 335, 335, 335, 335, 335, 335, 339, 335, 335,
+ 335, 335, 335, 332, 335, 335, 335, 335, 332, 340,
+ 335, 332, 332, 335, 335, 335, 335, 335, 332, 335,
+ 335, 335, 335, 335, 335, 339, 339, 339, 339, 339,
+
+ 335, 335, 332, 335, 335, 335, 332, 340, 335, 332,
+ 332, 335, 335, 341, 332, 335, 335, 335, 335, 335,
+ 335, 332, 332, 339, 339, 339, 339, 335, 332, 335,
+ 335, 332, 332, 335, 335, 342, 343, 332, 335, 335,
+ 335, 332, 332, 332, 332, 339, 339, 339, 339, 332,
+ 335, 335, 332, 335, 335, 344, 343, 332, 335, 335,
+ 335, 332, 332, 332, 339, 339, 339, 339, 332, 335,
+ 344, 332, 335, 332, 345, 332, 346, 339, 332, 339,
+ 335, 332, 332, 347, 332, 346, 346, 346, 346, 339,
+ 332, 332, 332, 347, 332, 346, 346, 346, 332, 332,
+
+ 332, 332, 332, 332, 346, 345, 346, 332, 332, 345,
+ 332, 332, 332, 346, 347, 347, 346, 332, 345, 332,
+ 347, 347, 348, 349, 332, 349, 332, 332, 332, 332,
+ 332, 0, 332, 332, 332, 332, 332, 332, 332, 332,
+ 332, 332, 332, 332, 332, 332, 332, 332, 332
} ;
-static yyconst flex_int16_t yy_nxt[1045] =
+static yyconst flex_int16_t yy_nxt[995] =
{ 0,
4, 5, 6, 7, 8, 9, 10, 11, 12, 11,
13, 4, 14, 15, 16, 17, 18, 19, 20, 21,
@@ -560,116 +551,111 @@ static yyconst flex_int16_t yy_nxt[1045] =
26, 27, 28, 29, 30, 23, 31, 32, 33, 23,
23, 34, 23, 23, 35, 36, 48, 49, 37, 39,
40, 40, 41, 41, 40, 40, 41, 50, 51, 56,
- 54, 100, 57, 111, 59, 38, 111, 55, 58, 60,
- 63, 61, 147, 64, 68, 147, 65, 73, 100, 69,
+ 54, 99, 57, 110, 59, 38, 110, 55, 58, 60,
+ 63, 61, 145, 64, 68, 145, 65, 73, 99, 69,
- 101, 62, 44, 66, 56, 54, 74, 57, 59, 67,
+ 100, 62, 104, 66, 56, 54, 74, 57, 59, 67,
38, 55, 58, 60, 63, 61, 70, 64, 82, 68,
- 71, 65, 73, 69, 101, 62, 97, 66, 79, 72,
- 74, 75, 42, 67, 80, 102, 42, 81, 76, 105,
- 77, 70, 78, 82, 52, 71, 87, 93, 93, 88,
- 47, 97, 79, 72, 182, 89, 75, 182, 80, 83,
- 102, 81, 76, 105, 77, 103, 78, 106, 84, 85,
- 104, 87, 107, 86, 88, 90, 91, 93, 93, 89,
- 110, 92, 48, 49, 83, 46, 94, 40, 40, 95,
- 103, 106, 84, 85, 108, 104, 107, 86, 109, 114,
-
- 90, 91, 115, 117, 110, 92, 96, 95, 40, 40,
- 95, 39, 40, 40, 41, 41, 40, 40, 41, 108,
- 112, 113, 116, 109, 114, 119, 115, 96, 117, 118,
- 121, 96, 122, 123, 124, 44, 127, 128, 125, 363,
- 129, 130, 120, 131, 112, 113, 116, 126, 132, 42,
- 119, 133, 96, 118, 121, 134, 122, 137, 123, 124,
- 127, 128, 138, 125, 129, 130, 120, 131, 135, 139,
- 42, 126, 136, 132, 42, 133, 140, 363, 42, 141,
- 134, 137, 94, 40, 40, 95, 138, 95, 40, 40,
- 95, 142, 143, 135, 139, 144, 145, 136, 146, 363,
-
- 148, 140, 96, 149, 141, 152, 111, 96, 153, 111,
- 155, 156, 363, 157, 158, 142, 143, 154, 159, 144,
- 145, 160, 166, 146, 148, 161, 150, 96, 149, 152,
- 162, 163, 96, 153, 155, 164, 156, 157, 158, 151,
- 165, 154, 167, 159, 168, 42, 160, 166, 169, 161,
- 42, 150, 170, 171, 162, 163, 171, 173, 174, 164,
- 175, 176, 177, 151, 165, 178, 167, 179, 180, 168,
- 181, 147, 169, 184, 147, 185, 170, 186, 187, 363,
- 172, 173, 174, 188, 189, 175, 176, 177, 190, 178,
- 191, 179, 180, 194, 192, 181, 195, 192, 184, 185,
-
- 196, 186, 197, 187, 172, 198, 199, 188, 189, 193,
- 363, 205, 190, 207, 206, 191, 208, 209, 194, 210,
- 182, 195, 213, 182, 214, 196, 216, 197, 215, 198,
- 199, 215, 217, 218, 193, 171, 205, 207, 171, 206,
- 208, 220, 209, 211, 210, 192, 213, 221, 192, 214,
- 216, 222, 223, 225, 224, 226, 217, 224, 218, 233,
- 201, 227, 202, 234, 227, 219, 220, 203, 211, 228,
- 204, 221, 363, 235, 227, 222, 223, 227, 225, 226,
- 363, 236, 228, 233, 201, 227, 202, 234, 227, 229,
- 219, 203, 227, 228, 204, 227, 227, 235, 237, 227,
-
- 228, 238, 239, 240, 228, 236, 215, 241, 243, 215,
- 241, 232, 244, 262, 229, 245, 246, 363, 53, 230,
- 252, 227, 231, 237, 227, 238, 150, 239, 240, 228,
- 251, 241, 243, 251, 241, 254, 232, 244, 262, 245,
- 246, 227, 259, 230, 227, 252, 231, 363, 252, 228,
- 260, 150, 224, 255, 227, 224, 261, 227, 253, 254,
- 363, 263, 228, 254, 264, 267, 259, 256, 227, 247,
- 268, 227, 248, 252, 260, 269, 228, 255, 270, 271,
- 261, 249, 253, 273, 250, 257, 263, 254, 272, 264,
- 267, 256, 274, 258, 247, 268, 275, 248, 251, 269,
-
- 276, 251, 270, 271, 277, 249, 363, 273, 250, 257,
- 282, 227, 227, 272, 227, 227, 274, 258, 283, 228,
- 228, 275, 285, 286, 227, 276, 253, 227, 279, 277,
- 227, 287, 228, 227, 282, 288, 289, 292, 228, 290,
- 292, 291, 283, 293, 278, 363, 285, 286, 294, 363,
- 253, 294, 298, 279, 299, 287, 228, 280, 300, 301,
- 288, 289, 302, 290, 281, 291, 227, 293, 278, 227,
- 296, 303, 227, 296, 228, 227, 298, 304, 228, 299,
- 228, 280, 300, 306, 301, 295, 302, 292, 281, 251,
- 292, 297, 251, 227, 315, 303, 227, 312, 318, 363,
-
- 312, 228, 304, 314, 316, 363, 314, 308, 306, 317,
- 295, 228, 363, 363, 363, 252, 297, 309, 320, 315,
- 363, 320, 310, 318, 311, 313, 325, 363, 320, 316,
- 254, 320, 308, 317, 320, 320, 324, 320, 320, 324,
- 252, 309, 312, 321, 228, 312, 310, 330, 311, 313,
- 328, 325, 329, 326, 254, 322, 326, 323, 331, 320,
- 340, 334, 320, 332, 334, 339, 338, 341, 321, 338,
- 313, 252, 330, 342, 328, 320, 329, 343, 320, 348,
- 322, 327, 323, 331, 340, 336, 254, 332, 336, 350,
- 339, 341, 333, 363, 313, 326, 252, 342, 326, 363,
-
- 363, 335, 343, 252, 348, 327, 292, 363, 320, 292,
- 254, 320, 320, 337, 350, 320, 333, 336, 254, 338,
- 336, 349, 338, 327, 349, 335, 352, 344, 252, 345,
- 351, 347, 351, 351, 346, 351, 320, 337, 353, 320,
- 320, 354, 254, 320, 354, 337, 349, 327, 351, 349,
- 352, 351, 344, 360, 345, 361, 347, 351, 346, 354,
- 351, 356, 354, 353, 356, 358, 363, 363, 356, 337,
- 359, 356, 319, 362, 363, 362, 362, 360, 362, 319,
- 361, 363, 363, 363, 363, 363, 363, 363, 363, 363,
- 358, 363, 363, 363, 359, 363, 363, 363, 305, 363,
-
- 319, 363, 363, 363, 363, 363, 363, 319, 43, 43,
- 363, 43, 43, 43, 45, 45, 53, 53, 53, 98,
- 98, 98, 99, 99, 363, 99, 99, 99, 183, 363,
- 363, 183, 183, 200, 363, 363, 200, 212, 212, 212,
- 242, 363, 242, 242, 242, 265, 363, 363, 265, 265,
- 266, 266, 266, 284, 284, 284, 305, 363, 363, 305,
- 305, 307, 363, 363, 307, 319, 319, 319, 355, 363,
- 363, 355, 355, 357, 363, 357, 357, 357, 3, 363,
- 363, 363, 363, 363, 363, 363, 363, 363, 363, 363,
- 363, 363, 363, 363, 363, 363, 363, 363, 363, 363,
-
- 363, 363, 363, 363, 363, 363, 363, 363, 363, 363,
- 363, 363, 363, 363, 363, 363, 363, 363, 363, 363,
- 363, 363, 363, 363, 363, 363, 363, 363, 363, 363,
- 363, 363, 363, 363, 363, 363, 363, 363, 363, 363,
- 363, 363, 363, 363
+ 71, 65, 73, 69, 100, 62, 104, 66, 79, 72,
+ 74, 75, 42, 67, 80, 44, 42, 81, 76, 52,
+ 77, 70, 78, 82, 47, 71, 92, 92, 86, 83,
+ 96, 87, 79, 72, 89, 90, 75, 88, 80, 84,
+ 91, 81, 76, 85, 77, 46, 78, 44, 93, 40,
+ 40, 94, 332, 86, 83, 96, 87, 92, 92, 89,
+ 90, 88, 101, 84, 91, 48, 49, 85, 95, 94,
+ 40, 40, 94, 39, 40, 40, 41, 41, 40, 40,
+
+ 41, 102, 103, 332, 105, 106, 109, 101, 107, 95,
+ 108, 113, 116, 95, 111, 112, 114, 115, 117, 120,
+ 121, 122, 123, 332, 126, 332, 102, 103, 105, 106,
+ 109, 42, 118, 107, 95, 108, 113, 116, 111, 112,
+ 114, 115, 117, 120, 121, 124, 122, 123, 126, 119,
+ 127, 128, 42, 129, 125, 130, 42, 118, 131, 132,
+ 42, 133, 332, 135, 136, 134, 179, 332, 145, 179,
+ 124, 145, 332, 119, 127, 128, 137, 129, 125, 138,
+ 130, 139, 131, 140, 132, 141, 133, 135, 136, 142,
+ 134, 93, 40, 40, 94, 94, 40, 40, 94, 143,
+
+ 144, 137, 146, 147, 138, 150, 139, 140, 153, 141,
+ 151, 95, 154, 142, 110, 95, 157, 110, 155, 152,
+ 156, 158, 332, 143, 159, 144, 146, 160, 147, 150,
+ 332, 161, 153, 162, 148, 151, 95, 154, 163, 164,
+ 95, 157, 155, 152, 156, 165, 158, 149, 159, 166,
+ 167, 160, 170, 168, 42, 161, 168, 162, 42, 148,
+ 171, 172, 163, 173, 164, 174, 332, 175, 176, 177,
+ 165, 149, 178, 166, 167, 181, 170, 182, 183, 185,
+ 169, 184, 332, 186, 171, 187, 172, 188, 173, 191,
+ 174, 175, 176, 177, 192, 189, 193, 178, 189, 194,
+
+ 181, 182, 183, 185, 169, 195, 184, 186, 201, 187,
+ 190, 332, 188, 202, 191, 332, 203, 204, 205, 192,
+ 206, 193, 209, 194, 179, 210, 214, 179, 211, 195,
+ 212, 211, 213, 201, 216, 190, 168, 220, 202, 168,
+ 203, 204, 217, 205, 332, 206, 209, 207, 232, 189,
+ 210, 214, 189, 218, 212, 219, 213, 221, 228, 216,
+ 229, 197, 220, 198, 230, 231, 217, 222, 199, 215,
+ 222, 200, 207, 232, 332, 223, 332, 218, 234, 219,
+ 233, 221, 228, 222, 229, 197, 222, 198, 230, 231,
+ 235, 223, 199, 222, 215, 200, 222, 222, 224, 222,
+
+ 222, 223, 222, 234, 233, 223, 236, 223, 238, 236,
+ 211, 239, 227, 211, 240, 235, 241, 53, 243, 332,
+ 332, 242, 250, 224, 242, 236, 332, 225, 236, 226,
+ 148, 253, 238, 245, 332, 254, 239, 227, 240, 243,
+ 241, 251, 222, 243, 222, 222, 250, 222, 252, 244,
+ 223, 225, 223, 226, 245, 148, 253, 245, 222, 222,
+ 254, 222, 222, 255, 243, 251, 223, 223, 258, 332,
+ 247, 259, 252, 244, 246, 260, 261, 242, 245, 262,
+ 242, 263, 264, 222, 249, 332, 222, 222, 255, 248,
+ 222, 223, 332, 258, 247, 223, 259, 269, 246, 260,
+
+ 261, 270, 272, 266, 262, 244, 263, 264, 249, 222,
+ 273, 222, 222, 248, 222, 274, 265, 223, 282, 223,
+ 275, 269, 276, 275, 277, 270, 272, 277, 266, 244,
+ 222, 281, 223, 222, 273, 283, 285, 332, 223, 274,
+ 265, 332, 267, 282, 279, 268, 276, 279, 222, 278,
+ 275, 222, 223, 275, 242, 281, 223, 242, 332, 332,
+ 283, 285, 222, 332, 332, 222, 267, 280, 295, 268,
+ 223, 295, 287, 332, 278, 293, 291, 295, 293, 291,
+ 295, 295, 288, 223, 295, 295, 291, 289, 295, 291,
+ 300, 332, 280, 290, 243, 299, 296, 287, 299, 306,
+
+ 298, 332, 306, 223, 292, 297, 288, 303, 332, 245,
+ 311, 289, 304, 301, 292, 300, 301, 290, 313, 243,
+ 295, 296, 318, 295, 295, 298, 308, 295, 292, 308,
+ 297, 243, 303, 245, 310, 311, 304, 310, 292, 301,
+ 312, 302, 301, 313, 243, 332, 245, 318, 275, 295,
+ 307, 275, 295, 305, 309, 322, 243, 332, 308, 245,
+ 295, 308, 332, 295, 312, 302, 332, 302, 314, 243,
+ 245, 315, 310, 321, 307, 310, 316, 305, 309, 317,
+ 322, 319, 320, 245, 319, 320, 309, 320, 332, 295,
+ 320, 302, 295, 314, 330, 295, 315, 321, 295, 323,
+
+ 316, 329, 323, 319, 317, 320, 319, 332, 320, 320,
+ 309, 323, 320, 325, 323, 327, 325, 332, 325, 330,
+ 328, 325, 332, 331, 294, 329, 331, 331, 332, 294,
+ 331, 332, 332, 332, 332, 332, 332, 332, 332, 332,
+ 327, 332, 332, 332, 328, 332, 332, 332, 332, 332,
+ 284, 332, 294, 332, 332, 332, 332, 294, 43, 43,
+ 332, 43, 43, 43, 45, 45, 53, 53, 53, 97,
+ 97, 97, 98, 98, 332, 98, 98, 98, 180, 332,
+ 332, 180, 180, 196, 332, 332, 196, 208, 208, 208,
+ 237, 332, 237, 237, 237, 256, 332, 332, 256, 256,
+
+ 257, 257, 257, 271, 271, 271, 284, 332, 332, 284,
+ 284, 286, 332, 332, 286, 294, 294, 294, 324, 332,
+ 332, 324, 324, 326, 332, 326, 326, 326, 3, 332,
+ 332, 332, 332, 332, 332, 332, 332, 332, 332, 332,
+ 332, 332, 332, 332, 332, 332, 332, 332, 332, 332,
+ 332, 332, 332, 332, 332, 332, 332, 332, 332, 332,
+ 332, 332, 332, 332, 332, 332, 332, 332, 332, 332,
+ 332, 332, 332, 332, 332, 332, 332, 332, 332, 332,
+ 332, 332, 332, 332, 332, 332, 332, 332, 332, 332,
+ 332, 332, 332, 332
+
} ;
-static yyconst flex_int16_t yy_chk[1045] =
+static yyconst flex_int16_t yy_chk[995] =
{ 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
@@ -679,113 +665,108 @@ static yyconst flex_int16_t yy_chk[1045] =
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 2, 14, 14, 2, 5,
5, 5, 5, 8, 8, 8, 8, 15, 15, 19,
- 18, 100, 20, 64, 21, 2, 64, 18, 20, 22,
- 24, 22, 108, 24, 26, 108, 25, 28, 48, 26,
+ 18, 99, 20, 64, 21, 2, 64, 18, 20, 22,
+ 24, 22, 107, 24, 26, 107, 25, 28, 48, 26,
- 54, 22, 43, 25, 19, 18, 28, 20, 21, 25,
+ 54, 22, 58, 25, 19, 18, 28, 20, 21, 25,
2, 18, 20, 22, 24, 22, 27, 24, 31, 26,
- 27, 25, 28, 26, 54, 22, 38, 25, 30, 27,
- 28, 29, 5, 25, 30, 55, 8, 30, 29, 58,
- 29, 27, 29, 31, 17, 27, 33, 35, 35, 33,
- 13, 38, 30, 27, 146, 33, 29, 146, 30, 32,
- 55, 30, 29, 58, 29, 56, 29, 59, 32, 32,
- 57, 33, 60, 32, 33, 34, 34, 42, 42, 33,
- 63, 34, 49, 49, 32, 12, 36, 36, 36, 36,
- 56, 59, 32, 32, 61, 57, 60, 32, 62, 67,
-
- 34, 34, 68, 70, 63, 34, 36, 37, 37, 37,
- 37, 39, 39, 39, 39, 41, 41, 41, 41, 61,
- 66, 66, 69, 62, 67, 72, 68, 37, 70, 71,
- 73, 36, 74, 77, 79, 9, 81, 82, 80, 3,
- 83, 84, 72, 85, 66, 66, 69, 80, 86, 36,
- 72, 87, 37, 71, 73, 88, 74, 91, 77, 79,
- 81, 82, 92, 80, 83, 84, 72, 85, 90, 96,
- 37, 80, 90, 86, 39, 87, 97, 0, 41, 101,
- 88, 91, 94, 94, 94, 94, 92, 95, 95, 95,
- 95, 103, 104, 90, 96, 105, 106, 90, 107, 0,
-
- 109, 97, 94, 110, 101, 112, 111, 95, 113, 111,
- 114, 115, 0, 116, 117, 103, 104, 113, 118, 105,
- 106, 120, 128, 107, 109, 121, 111, 94, 110, 112,
- 123, 124, 95, 113, 114, 125, 115, 116, 117, 111,
- 126, 113, 130, 118, 131, 94, 120, 128, 132, 121,
- 95, 111, 133, 134, 123, 124, 134, 135, 136, 125,
- 137, 138, 139, 111, 126, 140, 130, 141, 142, 131,
- 144, 147, 132, 149, 147, 150, 133, 151, 152, 0,
- 134, 135, 136, 153, 158, 137, 138, 139, 159, 140,
- 160, 141, 142, 164, 163, 144, 165, 163, 149, 150,
-
- 166, 151, 167, 152, 134, 168, 169, 153, 158, 163,
- 0, 174, 159, 177, 175, 160, 178, 180, 164, 181,
- 182, 165, 184, 182, 185, 166, 187, 167, 186, 168,
- 169, 186, 188, 190, 163, 171, 174, 177, 171, 175,
- 178, 193, 180, 182, 181, 192, 184, 194, 192, 185,
- 187, 195, 196, 198, 197, 199, 188, 197, 190, 206,
- 171, 200, 171, 207, 200, 192, 193, 171, 182, 200,
- 171, 194, 0, 208, 201, 195, 196, 201, 198, 199,
- 0, 210, 201, 206, 171, 202, 171, 207, 202, 201,
- 192, 171, 203, 202, 171, 203, 204, 208, 211, 204,
-
- 203, 214, 216, 217, 204, 210, 215, 218, 219, 215,
- 218, 204, 220, 238, 201, 221, 222, 0, 218, 202,
- 228, 229, 203, 211, 229, 214, 215, 216, 217, 229,
- 227, 241, 219, 227, 241, 228, 204, 220, 238, 221,
- 222, 230, 234, 202, 230, 228, 203, 0, 227, 230,
- 235, 215, 224, 229, 231, 224, 236, 231, 227, 228,
- 0, 239, 231, 227, 240, 243, 234, 230, 232, 224,
- 244, 232, 224, 227, 235, 245, 232, 229, 246, 247,
- 236, 224, 227, 249, 224, 231, 239, 227, 248, 240,
- 243, 230, 250, 232, 224, 244, 252, 224, 251, 245,
-
- 253, 251, 246, 247, 254, 224, 0, 249, 224, 231,
- 259, 255, 256, 248, 255, 256, 250, 232, 264, 255,
- 256, 252, 267, 268, 257, 253, 251, 257, 256, 254,
- 258, 271, 257, 258, 259, 272, 273, 276, 258, 274,
- 276, 275, 264, 277, 255, 0, 267, 268, 278, 0,
- 251, 278, 283, 256, 285, 271, 278, 257, 287, 288,
- 272, 273, 289, 274, 258, 275, 279, 277, 255, 279,
- 280, 290, 281, 280, 279, 281, 283, 291, 280, 285,
- 281, 257, 287, 293, 288, 279, 289, 292, 258, 294,
- 292, 281, 294, 295, 300, 290, 295, 296, 302, 0,
-
- 296, 295, 291, 297, 301, 0, 297, 294, 293, 301,
- 279, 297, 0, 0, 0, 296, 281, 294, 307, 300,
- 0, 307, 294, 302, 295, 296, 313, 0, 308, 301,
- 296, 308, 294, 301, 310, 309, 311, 310, 309, 311,
- 296, 294, 312, 308, 311, 312, 294, 318, 295, 296,
- 316, 313, 317, 314, 296, 309, 314, 310, 320, 321,
- 329, 322, 321, 320, 322, 327, 325, 330, 308, 325,
- 312, 314, 318, 331, 316, 323, 317, 332, 323, 337,
- 309, 314, 310, 320, 329, 324, 314, 320, 324, 341,
- 327, 330, 321, 0, 312, 326, 314, 331, 326, 0,
-
- 0, 323, 332, 324, 337, 314, 334, 0, 333, 334,
- 314, 333, 335, 324, 341, 335, 321, 336, 324, 338,
- 336, 339, 338, 326, 339, 323, 345, 333, 324, 334,
- 342, 335, 343, 342, 334, 343, 344, 324, 346, 344,
- 347, 348, 324, 347, 348, 336, 349, 326, 352, 349,
- 345, 352, 333, 358, 334, 359, 335, 353, 334, 354,
- 353, 355, 354, 346, 355, 356, 0, 0, 357, 336,
- 356, 357, 355, 360, 0, 361, 360, 358, 361, 357,
- 359, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 356, 0, 0, 0, 356, 0, 0, 0, 354, 0,
-
- 355, 0, 0, 0, 0, 0, 0, 357, 364, 364,
- 0, 364, 364, 364, 365, 365, 366, 366, 366, 367,
- 367, 367, 368, 368, 0, 368, 368, 368, 369, 0,
- 0, 369, 369, 370, 0, 0, 370, 371, 371, 371,
- 372, 0, 372, 372, 372, 373, 0, 0, 373, 373,
- 374, 374, 374, 375, 375, 375, 376, 0, 0, 376,
- 376, 377, 0, 0, 377, 378, 378, 378, 379, 0,
- 0, 379, 379, 380, 0, 380, 380, 380, 363, 363,
- 363, 363, 363, 363, 363, 363, 363, 363, 363, 363,
- 363, 363, 363, 363, 363, 363, 363, 363, 363, 363,
-
- 363, 363, 363, 363, 363, 363, 363, 363, 363, 363,
- 363, 363, 363, 363, 363, 363, 363, 363, 363, 363,
- 363, 363, 363, 363, 363, 363, 363, 363, 363, 363,
- 363, 363, 363, 363, 363, 363, 363, 363, 363, 363,
- 363, 363, 363, 363
+ 27, 25, 28, 26, 54, 22, 58, 25, 30, 27,
+ 28, 29, 5, 25, 30, 43, 8, 30, 29, 17,
+ 29, 27, 29, 31, 13, 27, 35, 35, 33, 32,
+ 38, 33, 30, 27, 34, 34, 29, 33, 30, 32,
+ 34, 30, 29, 32, 29, 12, 29, 9, 36, 36,
+ 36, 36, 3, 33, 32, 38, 33, 42, 42, 34,
+ 34, 33, 55, 32, 34, 49, 49, 32, 36, 37,
+ 37, 37, 37, 39, 39, 39, 39, 41, 41, 41,
+
+ 41, 56, 57, 0, 59, 60, 63, 55, 61, 37,
+ 62, 67, 70, 36, 66, 66, 68, 69, 71, 73,
+ 74, 77, 79, 0, 81, 0, 56, 57, 59, 60,
+ 63, 36, 72, 61, 37, 62, 67, 70, 66, 66,
+ 68, 69, 71, 73, 74, 80, 77, 79, 81, 72,
+ 82, 83, 37, 84, 80, 85, 39, 72, 86, 87,
+ 41, 89, 0, 90, 91, 89, 144, 0, 145, 144,
+ 80, 145, 0, 72, 82, 83, 95, 84, 80, 96,
+ 85, 100, 86, 102, 87, 103, 89, 90, 91, 104,
+ 89, 93, 93, 93, 93, 94, 94, 94, 94, 105,
+
+ 106, 95, 108, 109, 96, 111, 100, 102, 113, 103,
+ 112, 93, 114, 104, 110, 94, 117, 110, 115, 112,
+ 116, 119, 0, 105, 120, 106, 108, 122, 109, 111,
+ 0, 123, 113, 124, 110, 112, 93, 114, 125, 127,
+ 94, 117, 115, 112, 116, 129, 119, 110, 120, 130,
+ 131, 122, 133, 132, 93, 123, 132, 124, 94, 110,
+ 134, 135, 125, 136, 127, 137, 0, 138, 139, 140,
+ 129, 110, 142, 130, 131, 147, 133, 148, 149, 151,
+ 132, 150, 0, 156, 134, 157, 135, 158, 136, 162,
+ 137, 138, 139, 140, 163, 161, 164, 142, 161, 165,
+
+ 147, 148, 149, 151, 132, 166, 150, 156, 171, 157,
+ 161, 0, 158, 172, 162, 0, 174, 175, 177, 163,
+ 178, 164, 181, 165, 179, 182, 187, 179, 183, 166,
+ 184, 183, 185, 171, 190, 161, 168, 194, 172, 168,
+ 174, 175, 191, 177, 0, 178, 181, 179, 207, 189,
+ 182, 187, 189, 192, 184, 193, 185, 195, 202, 190,
+ 203, 168, 194, 168, 204, 206, 191, 196, 168, 189,
+ 196, 168, 179, 207, 0, 196, 0, 192, 212, 193,
+ 210, 195, 202, 197, 203, 168, 197, 168, 204, 206,
+ 213, 197, 168, 198, 189, 168, 198, 200, 197, 199,
+
+ 200, 198, 199, 212, 210, 200, 214, 199, 215, 214,
+ 211, 216, 200, 211, 217, 213, 218, 214, 223, 0,
+ 0, 222, 229, 197, 222, 236, 0, 198, 236, 199,
+ 211, 233, 215, 223, 0, 234, 216, 200, 217, 222,
+ 218, 230, 224, 223, 225, 224, 229, 225, 231, 222,
+ 224, 198, 225, 199, 222, 211, 233, 223, 226, 227,
+ 234, 226, 227, 235, 222, 230, 226, 227, 238, 0,
+ 225, 239, 231, 222, 224, 240, 241, 242, 222, 243,
+ 242, 244, 245, 246, 227, 0, 246, 247, 235, 226,
+ 247, 246, 0, 238, 225, 247, 239, 250, 224, 240,
+
+ 241, 255, 258, 247, 243, 242, 244, 245, 227, 248,
+ 259, 249, 248, 226, 249, 262, 246, 248, 272, 249,
+ 263, 250, 264, 263, 265, 255, 258, 265, 247, 242,
+ 266, 270, 265, 266, 259, 274, 276, 0, 266, 262,
+ 246, 0, 248, 272, 267, 249, 264, 267, 268, 266,
+ 275, 268, 267, 275, 277, 270, 268, 277, 0, 0,
+ 274, 276, 278, 0, 0, 278, 248, 268, 286, 249,
+ 278, 286, 277, 0, 266, 280, 279, 289, 280, 279,
+ 289, 287, 277, 280, 287, 288, 291, 277, 288, 291,
+ 292, 0, 268, 278, 279, 290, 287, 277, 290, 297,
+
+ 289, 0, 297, 290, 279, 288, 277, 295, 0, 279,
+ 302, 277, 295, 293, 291, 292, 293, 278, 304, 279,
+ 296, 287, 309, 296, 298, 289, 299, 298, 279, 299,
+ 288, 293, 295, 279, 300, 302, 295, 300, 291, 301,
+ 303, 293, 301, 304, 299, 0, 293, 309, 306, 305,
+ 298, 306, 305, 296, 299, 316, 293, 0, 308, 299,
+ 307, 308, 0, 307, 303, 293, 0, 301, 305, 299,
+ 293, 306, 310, 315, 298, 310, 306, 296, 299, 307,
+ 316, 311, 312, 299, 311, 312, 308, 313, 0, 314,
+ 313, 301, 314, 305, 328, 317, 306, 315, 317, 318,
+
+ 306, 327, 318, 319, 307, 321, 319, 0, 321, 322,
+ 308, 323, 322, 324, 323, 325, 324, 0, 326, 328,
+ 325, 326, 0, 329, 324, 327, 329, 330, 0, 326,
+ 330, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 325, 0, 0, 0, 325, 0, 0, 0, 0, 0,
+ 323, 0, 324, 0, 0, 0, 0, 326, 333, 333,
+ 0, 333, 333, 333, 334, 334, 335, 335, 335, 336,
+ 336, 336, 337, 337, 0, 337, 337, 337, 338, 0,
+ 0, 338, 338, 339, 0, 0, 339, 340, 340, 340,
+ 341, 0, 341, 341, 341, 342, 0, 0, 342, 342,
+
+ 343, 343, 343, 344, 344, 344, 345, 0, 0, 345,
+ 345, 346, 0, 0, 346, 347, 347, 347, 348, 0,
+ 0, 348, 348, 349, 0, 349, 349, 349, 332, 332,
+ 332, 332, 332, 332, 332, 332, 332, 332, 332, 332,
+ 332, 332, 332, 332, 332, 332, 332, 332, 332, 332,
+ 332, 332, 332, 332, 332, 332, 332, 332, 332, 332,
+ 332, 332, 332, 332, 332, 332, 332, 332, 332, 332,
+ 332, 332, 332, 332, 332, 332, 332, 332, 332, 332,
+ 332, 332, 332, 332, 332, 332, 332, 332, 332, 332,
+ 332, 332, 332, 332
+
} ;
static yy_state_type yy_last_accepting_state;
@@ -876,7 +857,7 @@ static int checkImmediate(int token) {
return token;
}
-#line 880 "engines/director/lingo/lingo-lex.cpp"
+#line 861 "engines/director/lingo/lingo-lex.cpp"
#define INITIAL 0
@@ -1062,7 +1043,7 @@ YY_DECL
#line 92 "engines/director/lingo/lingo-lex.l"
-#line 1066 "engines/director/lingo/lingo-lex.cpp"
+#line 1047 "engines/director/lingo/lingo-lex.cpp"
if ( !(yy_init) )
{
@@ -1116,13 +1097,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 >= 364 )
+ if ( yy_current_state >= 333 )
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_current_state != 363 );
+ while ( yy_current_state != 332 );
yy_cp = (yy_last_accepting_cpos);
yy_current_state = (yy_last_accepting_state);
@@ -1398,37 +1379,16 @@ YY_RULE_SETUP
case 46:
YY_RULE_SETUP
#line 168 "engines/director/lingo/lingo-lex.l"
-{
- count();
-
- const char *ptr = &yytext[6]; // Skip 'sound '
- while (*ptr == ' ' || *ptr == '\t')
- ptr++;
-
- Common::String bltin = Common::String::format("sound-%s", ptr);
-
- if (g_lingo->_builtins.contains(bltin)) {
- yylval.s = new Common::String(bltin);
- return BLTIN;
- } else {
- warning("LEXER: Unhandled 'sound %s'", ptr);
- return LEXERROR;
- }
- }
- YY_BREAK
-case 47:
-YY_RULE_SETUP
-#line 185 "engines/director/lingo/lingo-lex.l"
{ count(); return tSTARTS; }
YY_BREAK
-case 48:
+case 47:
YY_RULE_SETUP
-#line 186 "engines/director/lingo/lingo-lex.l"
+#line 169 "engines/director/lingo/lingo-lex.l"
{ count(); return tTELL; }
YY_BREAK
-case 49:
+case 48:
YY_RULE_SETUP
-#line 187 "engines/director/lingo/lingo-lex.l"
+#line 170 "engines/director/lingo/lingo-lex.l"
{
count();
@@ -1438,9 +1398,9 @@ YY_RULE_SETUP
return THEENTITYWITHID;
}
YY_BREAK
-case 50:
+case 49:
YY_RULE_SETUP
-#line 195 "engines/director/lingo/lingo-lex.l"
+#line 178 "engines/director/lingo/lingo-lex.l"
{
count();
@@ -1449,9 +1409,9 @@ YY_RULE_SETUP
return FBLTIN;
}
YY_BREAK
-case 51:
+case 50:
YY_RULE_SETUP
-#line 202 "engines/director/lingo/lingo-lex.l"
+#line 185 "engines/director/lingo/lingo-lex.l"
{
count();
@@ -1488,9 +1448,9 @@ YY_RULE_SETUP
}
}
YY_BREAK
-case 52:
+case 51:
YY_RULE_SETUP
-#line 237 "engines/director/lingo/lingo-lex.l"
+#line 220 "engines/director/lingo/lingo-lex.l"
{
count();
@@ -1514,9 +1474,9 @@ YY_RULE_SETUP
}
}
YY_BREAK
-case 53:
+case 52:
YY_RULE_SETUP
-#line 259 "engines/director/lingo/lingo-lex.l"
+#line 242 "engines/director/lingo/lingo-lex.l"
{
count();
@@ -1581,9 +1541,9 @@ YY_RULE_SETUP
warning("LEXER: Unhandled the entity '%s', field '%s'", ptr, field.c_str());
}
YY_BREAK
-case 54:
+case 53:
YY_RULE_SETUP
-#line 322 "engines/director/lingo/lingo-lex.l"
+#line 305 "engines/director/lingo/lingo-lex.l"
{
count();
@@ -1619,9 +1579,9 @@ YY_RULE_SETUP
return THEENTITY;
}
YY_BREAK
-case 55:
+case 54:
YY_RULE_SETUP
-#line 356 "engines/director/lingo/lingo-lex.l"
+#line 339 "engines/director/lingo/lingo-lex.l"
{
count();
@@ -1642,74 +1602,74 @@ YY_RULE_SETUP
warning("LEXER: Unhandled the entity '%s'", ptr);
}
YY_BREAK
-case 56:
+case 55:
YY_RULE_SETUP
-#line 375 "engines/director/lingo/lingo-lex.l"
+#line 358 "engines/director/lingo/lingo-lex.l"
{ count(); return tTHEN; }
YY_BREAK
-case 57:
+case 56:
YY_RULE_SETUP
-#line 376 "engines/director/lingo/lingo-lex.l"
+#line 359 "engines/director/lingo/lingo-lex.l"
{ count(); return tTO; }
YY_BREAK
-case 58:
+case 57:
YY_RULE_SETUP
-#line 377 "engines/director/lingo/lingo-lex.l"
+#line 360 "engines/director/lingo/lingo-lex.l"
{ count(); return tSPRITE; }
YY_BREAK
-case 59:
+case 58:
YY_RULE_SETUP
-#line 378 "engines/director/lingo/lingo-lex.l"
+#line 361 "engines/director/lingo/lingo-lex.l"
{ count(); return tWITH; }
YY_BREAK
-case 60:
+case 59:
YY_RULE_SETUP
-#line 379 "engines/director/lingo/lingo-lex.l"
+#line 362 "engines/director/lingo/lingo-lex.l"
{ count(); return tWITHIN; }
YY_BREAK
-case 61:
+case 60:
YY_RULE_SETUP
-#line 380 "engines/director/lingo/lingo-lex.l"
+#line 363 "engines/director/lingo/lingo-lex.l"
{ count(); return tWHEN; }
YY_BREAK
-case 62:
+case 61:
YY_RULE_SETUP
-#line 381 "engines/director/lingo/lingo-lex.l"
+#line 364 "engines/director/lingo/lingo-lex.l"
{ count(); return tWHILE; }
YY_BREAK
-case 63:
+case 62:
YY_RULE_SETUP
-#line 382 "engines/director/lingo/lingo-lex.l"
+#line 365 "engines/director/lingo/lingo-lex.l"
{ count(); return tWORD; }
YY_BREAK
-case 64:
+case 63:
YY_RULE_SETUP
-#line 384 "engines/director/lingo/lingo-lex.l"
+#line 367 "engines/director/lingo/lingo-lex.l"
{ count(); return tNEQ; }
YY_BREAK
-case 65:
+case 64:
YY_RULE_SETUP
-#line 385 "engines/director/lingo/lingo-lex.l"
+#line 368 "engines/director/lingo/lingo-lex.l"
{ count(); return tGE; }
YY_BREAK
-case 66:
+case 65:
YY_RULE_SETUP
-#line 386 "engines/director/lingo/lingo-lex.l"
+#line 369 "engines/director/lingo/lingo-lex.l"
{ count(); return tLE; }
YY_BREAK
-case 67:
+case 66:
YY_RULE_SETUP
-#line 387 "engines/director/lingo/lingo-lex.l"
+#line 370 "engines/director/lingo/lingo-lex.l"
{ count(); return tCONCAT; }
YY_BREAK
-case 68:
+case 67:
YY_RULE_SETUP
-#line 388 "engines/director/lingo/lingo-lex.l"
+#line 371 "engines/director/lingo/lingo-lex.l"
{ count(); return tEQ; }
YY_BREAK
-case 69:
+case 68:
YY_RULE_SETUP
-#line 390 "engines/director/lingo/lingo-lex.l"
+#line 373 "engines/director/lingo/lingo-lex.l"
{
count();
yylval.s = new Common::String(yytext);
@@ -1745,43 +1705,43 @@ YY_RULE_SETUP
return ID;
}
YY_BREAK
-case 70:
+case 69:
YY_RULE_SETUP
-#line 424 "engines/director/lingo/lingo-lex.l"
+#line 407 "engines/director/lingo/lingo-lex.l"
{ count(); yylval.f = atof(yytext); return FLOAT; }
YY_BREAK
-case 71:
+case 70:
YY_RULE_SETUP
-#line 425 "engines/director/lingo/lingo-lex.l"
+#line 408 "engines/director/lingo/lingo-lex.l"
{ count(); yylval.i = strtol(yytext, NULL, 10); return INT; }
YY_BREAK
-case 72:
+case 71:
YY_RULE_SETUP
-#line 426 "engines/director/lingo/lingo-lex.l"
+#line 409 "engines/director/lingo/lingo-lex.l"
{ count(); return *yytext; }
YY_BREAK
-case 73:
-/* rule 73 can match eol */
+case 72:
+/* rule 72 can match eol */
YY_RULE_SETUP
-#line 427 "engines/director/lingo/lingo-lex.l"
+#line 410 "engines/director/lingo/lingo-lex.l"
{ count(); return '\n'; }
YY_BREAK
-case 74:
+case 73:
YY_RULE_SETUP
-#line 428 "engines/director/lingo/lingo-lex.l"
+#line 411 "engines/director/lingo/lingo-lex.l"
{ count(); yylval.s = new Common::String(&yytext[1]); yylval.s->deleteLastChar(); return STRING; }
YY_BREAK
-case 75:
+case 74:
YY_RULE_SETUP
-#line 429 "engines/director/lingo/lingo-lex.l"
+#line 412 "engines/director/lingo/lingo-lex.l"
{ count(); }
YY_BREAK
-case 76:
+case 75:
YY_RULE_SETUP
-#line 431 "engines/director/lingo/lingo-lex.l"
+#line 414 "engines/director/lingo/lingo-lex.l"
ECHO;
YY_BREAK
-#line 1785 "engines/director/lingo/lingo-lex.cpp"
+#line 1745 "engines/director/lingo/lingo-lex.cpp"
case YY_STATE_EOF(INITIAL):
yyterminate();
@@ -2075,7 +2035,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 >= 364 )
+ if ( yy_current_state >= 333 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
@@ -2103,11 +2063,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 >= 364 )
+ if ( yy_current_state >= 333 )
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 == 363);
+ yy_is_jam = (yy_current_state == 332);
return yy_is_jam ? 0 : yy_current_state;
}
@@ -2741,7 +2701,7 @@ void yyfree (void * ptr )
#define YYTABLES_NAME "yytables"
-#line 431 "engines/director/lingo/lingo-lex.l"
+#line 414 "engines/director/lingo/lingo-lex.l"
diff --git a/engines/director/lingo/lingo-lex.l b/engines/director/lingo/lingo-lex.l
index a076993c73..b18b957d63 100644
--- a/engines/director/lingo/lingo-lex.l
+++ b/engines/director/lingo/lingo-lex.l
@@ -165,23 +165,6 @@ property { count(); return tPROPERTY; } // D4
put { count(); return tPUT; }
repeat { count(); return checkImmediate(tREPEAT); }
set { count(); return tSET; }
-sound[ \t]+(close|fadeIn|fadeOut|playFile|stop) {
- count();
-
- const char *ptr = &yytext[6]; // Skip 'sound '
- while (*ptr == ' ' || *ptr == '\t')
- ptr++;
-
- Common::String bltin = Common::String::format("sound-%s", ptr);
-
- if (g_lingo->_builtins.contains(bltin)) {
- yylval.s = new Common::String(bltin);
- return BLTIN;
- } else {
- warning("LEXER: Unhandled 'sound %s'", ptr);
- return LEXERROR;
- }
- }
starts { count(); return tSTARTS; }
tell { count(); return tTELL; }
the[ \t]+sqrt[ \t]+of[ \t]+ {
Commit: 825b714cb6db3b987b647467d881b614da377dde
https://github.com/scummvm/scummvm/commit/825b714cb6db3b987b647467d881b614da377dde
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2020-04-05T00:22:06+02:00
Commit Message:
DIRECTOR: LINGO: Merged sound-* with b_sound()
Changed paths:
engines/director/lingo/lingo-builtins.cpp
engines/director/lingo/lingo-builtins.h
diff --git a/engines/director/lingo/lingo-builtins.cpp b/engines/director/lingo/lingo-builtins.cpp
index d8c9ce8623..b1f970bf7a 100644
--- a/engines/director/lingo/lingo-builtins.cpp
+++ b/engines/director/lingo/lingo-builtins.cpp
@@ -1701,41 +1701,62 @@ void LB::b_sound(int nargs) {
// "playFile", INT soundChannel, STRING fileName
// "stop", INT soundChannel
- if (nargs >= 2 && nargs <= 3) {
- Datum verb;
- Datum firstArg = g_lingo->pop();
- Datum secondArg = g_lingo->pop();
- if (nargs > 2) {
- verb = g_lingo->pop();
- g_lingo->push(secondArg);
- g_lingo->push(firstArg);
- } else {
- verb = secondArg;
- g_lingo->push(firstArg);
- }
+ if (nargs < 2 || nargs > 3) {
+ warning("b_sound: expected 2 or 3 args, not %d", nargs);
+ g_lingo->dropStack(nargs);
+
+ return;
+ }
- if (verb.type != STRING) {
- warning("b_sound: verb arg should be of type STRING, not %s", verb.type2str());
+ Datum secondArg = g_lingo->pop();
+ Datum firstArg = g_lingo->pop();
+ Datum verb;
+ if (nargs > 2) {
+ verb = g_lingo->pop();
+ } else {
+ verb = firstArg;
+ firstArg = secondArg;
+ }
+
+ if (verb.type != STRING && verb.type != SYMBOL) {
+ warning("b_sound: verb arg should be of type STRING, not %s", verb.type2str());
+ return;
+ }
+
+ if (verb.u.s->equalsIgnoreCase("close") || verb.u.s->equalsIgnoreCase("stop")) {
+ if (nargs != 2) {
+ warning("sound %s: expected 1 argument, got %d", verb.u.s->c_str(), nargs - 1);
return;
}
- if (*verb.u.s == "close") {
- b_soundClose(nargs - 1);
- } else if (*verb.u.s == "fadeIn") {
- b_soundFadeIn(nargs - 1);
- } else if (*verb.u.s == "fadeOut") {
- b_soundFadeOut(nargs - 1);
- } else if (*verb.u.s == "playFile") {
- b_soundPlayFile(nargs - 1);
- } else if (*verb.u.s == "stop") {
- b_soundStop(nargs - 1);
- } else {
- warning("b_sound: unknown verb %s", verb.u.s->c_str());
+ if (firstArg.type != INT) {
+ warning("sound close: whichChannel arg should be of type INT, not %s", firstArg.type2str());
+ return;
+ }
+ g_director->getSoundManager()->stopSound(firstArg.u.i);
+ } else if (verb.u.s->equalsIgnoreCase("fadeIn")) {
+ warning("STUB: sound fadeIn");
+ return;
+ } else if (verb.u.s->equalsIgnoreCase("fadeOut")) {
+ warning("STUB: sound fadeOut");
+ return;
+ } else if (verb.u.s->equalsIgnoreCase("playFile")) {
+ if (nargs != 3) {
+ warning("sound playFile: expected 2 arguments, got %d", nargs - 1);
+ return;
+ }
+ if (firstArg.type != INT) {
+ warning("sound playFile: whichChannel arg should be of type INT, not %s", firstArg.type2str());
+ return;
+ }
+ if (secondArg.type != STRING) {
+ warning("sound playFile: whichFile arg should be of type STRING, not %s", secondArg.type2str());
+ return;
}
+ g_director->getSoundManager()->playFile(pathMakeRelative(*secondArg.u.s), firstArg.u.i);
} else {
- warning("b_sound: expected 2 or 3 args, not %d", nargs);
- g_lingo->dropStack(nargs);
+ warning("b_sound: unknown verb %s", verb.u.s->c_str());
}
}
@@ -1759,61 +1780,6 @@ void LB::b_soundBusy(int nargs) {
g_lingo->push(result);
}
-void LB::b_soundClose(int nargs) {
- b_soundStop(nargs);
-}
-
-void LB::b_soundFadeIn(int nargs) {
- g_lingo->printSTUBWithArglist("b_soundFadeIn", nargs);
-
- g_lingo->dropStack(nargs);
-}
-
-void LB::b_soundFadeOut(int nargs) {
- g_lingo->printSTUBWithArglist("b_soundFadeOut", nargs);
-
- g_lingo->dropStack(nargs);
-}
-
-void LB::b_soundPlayFile(int nargs) {
- if (nargs != 2) {
- error("b_soundPlayFile: expected 2 arguments, got %d", nargs);
- g_lingo->dropStack(nargs);
- return;
- }
-
- Datum whichFile = g_lingo->pop();
- if (whichFile.type != STRING) {
- warning("b_soundPlayFile(): whichFile arg should be of type STRING, not %s", whichFile.type2str());
- return;
- }
-
- DirectorSound *sound = g_director->getSoundManager();
- Datum whichChannel = g_lingo->pop();
- if (whichChannel.type != INT) {
- warning("b_soundPlayFile(): whichChannel arg should be of type INT, not %s", whichChannel.type2str());
- return;
- }
-
- sound->playFile(pathMakeRelative(*whichFile.u.s), whichChannel.u.i);
-}
-
-void LB::b_soundStop(int nargs) {
- if (nargs != 1) {
- error("b_soundStop: expected 1 argument, got %d", nargs);
- g_lingo->dropStack(nargs);
- return;
- }
-
- DirectorSound *sound = g_director->getSoundManager();
- Datum whichChannel = g_lingo->pop();
- if (whichChannel.type != INT) {
- warning("b_soundStop(): whichChannel arg should be of type INT, not %s", whichChannel.type2str());
- return;
- }
- sound->stopSound(whichChannel.u.i);
-}
-
///////////////////
// Constants
///////////////////
diff --git a/engines/director/lingo/lingo-builtins.h b/engines/director/lingo/lingo-builtins.h
index f70cc13d4a..a83aa4a411 100644
--- a/engines/director/lingo/lingo-builtins.h
+++ b/engines/director/lingo/lingo-builtins.h
@@ -176,11 +176,6 @@ namespace LB {
void b_mciwait(int nargs);
void b_sound(int nargs);
void b_soundBusy(int nargs);
- void b_soundClose(int nargs);
- void b_soundFadeIn(int nargs);
- void b_soundFadeOut(int nargs);
- void b_soundPlayFile(int nargs);
- void b_soundStop(int nargs);
void b_backspace(int nargs);
void b_empty(int nargs);
More information about the Scummvm-git-logs
mailing list