# # DO NOT MODIFY!!!! # This file is automatically generated by Racc 1.4.14 # from Racc grammer file "". # require 'racc/parser.rb' module TPPlus class Parser < Racc::Parser module_eval(<<'...end tp_plus.y/module_eval...', 'tp_plus.y', 592) include TPPlus::Nodes attr_reader :interpreter def initialize(scanner, interpreter = TPPlus::Interpreter.new) @scanner = scanner @interpreter = interpreter super() end def next_token t = @scanner.next_token @interpreter.line_count += 1 if t && t[0] == :NEWLINE #puts t.inspect t end def parse #@yydebug =true do_parse @interpreter end def on_error(t, val, vstack) raise ParseError, sprintf("Parse error on line #{@scanner.tok_line} column #{@scanner.tok_col}: %s (%s)", val.inspect, token_to_str(t) || '?') end class ParseError < StandardError ; end ...end tp_plus.y/module_eval... ##### State transition tables begin ### racc_action_table = [ 62, 62, 62, 62, 101, 122, 62, 41, 38, 130, 275, 265, 72, 41, 72, 98, 113, 72, 53, 114, 41, 67, 67, 67, 67, 234, 38, 26, 303, 304, 101, 36, 286, 159, 81, 82, 72, 308, 159, 81, 82, 72, 122, 287, 308, 60, 288, 60, 42, 308, 60, 43, 44, 131, 45, 31, 32, 355, 289, 34, 35, 46, 47, 102, 60, 273, 30, 72, 29, 28, 25, 63, 290, 37, 27, 24, 62, 41, 38, 37, 69, 69, 69, 69, 33, 61, 37, 97, 53, 102, 61, 37, 81, 82, 300, 61, 82, 26, 82, 72, 60, 36, 159, 81, 82, 72, 223, 221, 224, 371, 336, 335, 105, 220, 292, 81, 82, 72, 42, 293, 317, 43, 44, 294, 45, 31, 32, 96, 122, 34, 35, 46, 47, 96, 60, 208, 30, 209, 29, 28, 25, 63, 122, 37, 27, 24, 62, 41, 38, 72, 60, 81, 82, 72, 33, 61, 298, 116, 53, 61, 301, 88, 94, 96, 321, 117, 118, 26, 317, 352, 302, 36, 323, 305, 203, 349, 350, 351, 353, 152, 151, 96, 367, 81, 82, 72, 60, 255, 42, 209, 306, 43, 44, 313, 45, 31, 32, 314, 94, 34, 35, 46, 47, 122, 60, 122, 30, 61, 29, 28, 25, 63, 321, 37, 27, 24, 62, 41, 38, 325, 323, 326, 203, 327, 33, 61, 82, 72, 53, 82, 72, 182, 181, 179, 180, 177, 173, 26, 176, 174, 328, 36, 81, 82, 72, 81, 82, 72, 81, 82, 72, 81, 82, 81, 82, 72, 97, 333, 42, 275, 122, 43, 44, 96, 45, 31, 32, 33, 188, 34, 35, 46, 47, 333, 60, 122, 30, 346, 29, 28, 25, 63, 347, 37, 27, 24, 348, 178, 356, 175, 81, 82, 72, 357, 33, 61, 81, 82, 72, 358, 88, 317, 96, 81, 82, 72, 88, 359, 96, 81, 82, 72, 360, 88, 96, 96, 81, 82, 72, 88, 361, 96, 81, 82, 72, 60, 88, 362, 96, 122, 364, 60, 88, 72, 96, 33, 378, 94, 60, 81, 82, 72, 379, 94, 60, 321, 61, 81, 82, 72, 94, 60, 61, 323, 380, 203, 94, 60, 381, 61, 382, 383, 385, 94, 386, 61, 390, 72, 392, 94, 64, 70, 61, 81, 82, 72, 74, 75, 61, 81, 82, 72, 76, 88, 103, 96, 81, 82, 72, 88, 33, 96, 81, 82, 72, 72, 88, 111, 96, 81, 82, 72, 88, 72, 96, 115, 72, 121, 60, 88, 122, 96, 125, 127, 60, 101, 122, 185, 186, 191, 94, 60, 188, 122, 122, 199, 94, 60, 200, 61, 201, 203, 204, 94, 60, 61, 210, 211, 212, 94, 213, 214, 61, 215, 216, 217, 94, 218, 61, 135, 136, 139, 140, 137, 138, 61, 141, 142, 144, 145, 146, 148, 143, 147, 135, 136, 139, 140, 137, 138, 219, 141, 142, 144, 145, 146, 148, 143, 147, 227, 227, 188, 229, 230, 231, 234, 235, 135, 136, 139, 140, 137, 138, 207, 141, 142, 144, 145, 146, 148, 143, 147, 238, 188, 122, 122, 241, 242, 205, 135, 136, 139, 140, 137, 138, 244, 141, 142, 144, 145, 146, 148, 143, 147, 188, 245, 246, 247, 248, 249, 135, 136, 139, 140, 137, 138, 250, 141, 142, 144, 145, 146, 148, 143, 147, 135, 136, 139, 140, 137, 138, 251, 141, 142, 144, 145, 146, 148, 143, 147, 135, 136, 139, 140, 137, 138, 252, 141, 142, 144, 145, 146, 148, 143, 147, 135, 136, 139, 140, 137, 138, 253, 141, 142, 144, 145, 146, 148, 143, 147, 135, 136, 139, 140, 137, 138, 254, 141, 142, 144, 145, 146, 148, 143, 147, 135, 136, 139, 140, 137, 138, 257, 141, 142, 144, 145, 146, 148, 143, 147, 135, 136, 139, 140, 137, 138, 188, 141, 142, 144, 145, 146, 148, 143, 147, 135, 136, 139, 140, 137, 138, 259, 141, 142, 144, 145, 146, 148, 143, 147, 269, 271, 276, 122, 281, 282, 283, 284, 285 ] racc_action_check = [ 309, 65, 312, 3, 72, 343, 188, 188, 188, 70, 240, 232, 105, 295, 28, 36, 48, 29, 188, 48, 296, 309, 65, 312, 3, 232, 383, 188, 280, 280, 36, 188, 249, 186, 186, 186, 186, 295, 97, 97, 97, 97, 272, 250, 296, 105, 251, 28, 188, 383, 29, 188, 188, 70, 188, 188, 188, 343, 252, 188, 188, 188, 188, 72, 188, 240, 188, 38, 188, 188, 188, 188, 253, 188, 188, 188, 225, 225, 225, 295, 309, 65, 312, 3, 188, 188, 296, 36, 225, 36, 186, 383, 224, 224, 272, 97, 254, 225, 358, 358, 38, 225, 209, 209, 209, 209, 187, 184, 187, 358, 320, 320, 38, 184, 256, 88, 88, 88, 225, 260, 337, 225, 225, 263, 225, 225, 225, 88, 265, 225, 225, 225, 225, 337, 225, 153, 225, 153, 225, 225, 225, 225, 266, 225, 225, 225, 2, 2, 2, 269, 88, 199, 199, 199, 225, 225, 270, 55, 2, 209, 275, 199, 88, 199, 337, 55, 55, 2, 301, 342, 277, 2, 337, 291, 337, 342, 342, 342, 342, 95, 95, 301, 357, 357, 357, 357, 199, 222, 2, 222, 292, 2, 2, 297, 2, 2, 2, 299, 199, 2, 2, 2, 2, 300, 2, 302, 2, 199, 2, 2, 2, 2, 301, 2, 2, 2, 0, 0, 0, 303, 301, 304, 301, 306, 2, 2, 293, 293, 0, 229, 229, 98, 98, 98, 98, 98, 98, 0, 98, 98, 307, 0, 326, 326, 326, 75, 75, 75, 238, 238, 238, 98, 98, 234, 234, 234, 308, 313, 0, 315, 323, 0, 0, 98, 0, 0, 0, 325, 328, 0, 0, 0, 0, 331, 0, 333, 0, 338, 0, 0, 0, 0, 339, 0, 0, 0, 340, 98, 347, 98, 42, 42, 42, 349, 0, 0, 114, 114, 114, 350, 42, 363, 42, 76, 76, 76, 114, 351, 114, 134, 134, 134, 352, 76, 363, 76, 116, 116, 116, 134, 353, 134, 200, 200, 200, 42, 116, 354, 116, 355, 356, 114, 200, 359, 200, 361, 365, 42, 76, 360, 360, 360, 366, 114, 134, 363, 42, 34, 34, 34, 76, 116, 114, 363, 368, 363, 134, 200, 371, 76, 372, 373, 376, 116, 379, 134, 384, 385, 387, 200, 1, 27, 116, 94, 94, 94, 30, 31, 200, 35, 35, 35, 32, 94, 37, 94, 43, 43, 43, 35, 41, 35, 45, 45, 45, 44, 43, 46, 43, 113, 113, 113, 45, 47, 45, 53, 58, 60, 94, 113, 63, 113, 64, 68, 35, 99, 101, 102, 103, 109, 94, 43, 111, 112, 115, 117, 35, 45, 118, 94, 121, 123, 132, 43, 113, 35, 173, 174, 175, 45, 176, 177, 43, 178, 179, 180, 113, 181, 45, 150, 150, 150, 150, 150, 150, 113, 150, 150, 150, 150, 150, 150, 150, 150, 133, 133, 133, 133, 133, 133, 182, 133, 133, 133, 133, 133, 133, 133, 133, 189, 190, 108, 191, 192, 193, 194, 197, 108, 108, 108, 108, 108, 108, 150, 108, 108, 108, 108, 108, 108, 108, 108, 201, 110, 202, 203, 204, 205, 133, 110, 110, 110, 110, 110, 110, 210, 110, 110, 110, 110, 110, 110, 110, 110, 107, 211, 212, 213, 214, 215, 107, 107, 107, 107, 107, 107, 216, 107, 107, 107, 107, 107, 107, 107, 107, 236, 236, 236, 236, 236, 236, 217, 236, 236, 236, 236, 236, 236, 236, 236, 195, 195, 195, 195, 195, 195, 218, 195, 195, 195, 195, 195, 195, 195, 195, 196, 196, 196, 196, 196, 196, 219, 196, 196, 196, 196, 196, 196, 196, 196, 198, 198, 198, 198, 198, 198, 221, 198, 198, 198, 198, 198, 198, 198, 198, 206, 206, 206, 206, 206, 206, 226, 206, 206, 206, 206, 206, 206, 206, 206, 237, 237, 237, 237, 237, 237, 227, 237, 237, 237, 237, 237, 237, 237, 237, 83, 83, 83, 83, 83, 83, 228, 83, 83, 83, 83, 83, 83, 83, 83, 235, 239, 241, 242, 244, 245, 246, 247, 248 ] racc_action_pointer = [ 212, 370, 142, -1, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 341, -15, -12, 350, 303, 308, nil, 320, 352, 13, 355, 38, nil, nil, 308, 263, 359, 366, 365, 368, 374, -30, nil, nil, nil, nil, 388, nil, 127, nil, nil, 377, nil, 333, nil, nil, 385, 412, -3, nil, nil, 388, nil, -17, nil, -13, nil, nil, 218, 276, nil, nil, nil, nil, nil, nil, 604, nil, nil, nil, nil, 88, nil, nil, nil, nil, nil, 346, 152, nil, 12, 224, 398, nil, 391, 341, 344, nil, -17, nil, 499, 456, 368, 478, 397, 398, 372, 269, 399, 289, 395, 398, nil, nil, 404, nil, 351, nil, nil, nil, nil, nil, nil, nil, nil, 355, 433, 282, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 418, nil, nil, 60, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 358, 359, 360, 362, 363, 365, 366, 367, 369, 392, nil, 84, nil, 7, 31, 2, 432, 433, 408, 435, 436, 424, 529, 544, 468, 559, 124, 295, 425, 479, 480, 480, 490, 574, nil, nil, 76, 487, 497, 498, 499, 500, 501, 508, 523, 538, 553, nil, 522, 112, nil, 65, 72, 563, 601, 593, 201, nil, nil, -36, nil, 226, 576, 514, 589, 221, 603, -16, 577, 628, nil, 575, 576, 577, 578, 579, -47, -36, -33, -21, -7, 68, nil, 37, nil, nil, nil, 101, nil, nil, 75, nil, 103, 117, nil, nil, 120, 81, nil, 17, nil, nil, 84, nil, 153, nil, nil, -27, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 98, 164, 198, nil, 8, 15, 118, nil, 116, 178, 142, 180, 145, 147, nil, 148, 165, 182, -4, nil, nil, -2, 240, nil, 233, nil, nil, nil, nil, 83, nil, nil, 235, nil, 185, 215, nil, 243, nil, nil, 256, nil, 250, nil, nil, nil, 94, 202, 205, 238, nil, 156, -20, nil, nil, nil, 262, nil, 219, 225, 233, 238, 246, 248, 304, 255, 156, 70, 304, 312, 253, nil, 275, nil, 261, 265, nil, 279, nil, nil, 330, 285, 284, nil, nil, 285, nil, nil, 338, nil, nil, nil, 20, 291, 338, nil, 293, nil, nil, nil, nil, nil ] racc_action_default = [ -2, -210, -1, -188, -8, -9, -10, -11, -12, -13, -14, -15, -16, -17, -18, -19, -20, -21, -22, -23, -24, -25, -26, -27, -28, -29, -30, -210, -210, -210, -210, -210, -210, -45, -210, -210, -118, -210, -210, -61, -62, -210, -210, -210, -210, -210, -210, -210, -81, -84, -85, -86, -87, -210, -111, -210, -116, -117, -210, -125, -210, -183, -184, -190, -210, -188, -3, -185, -7, -187, -210, -34, -118, -35, -36, -210, -210, -46, -103, -104, -158, -159, -160, -47, -128, -129, -130, -131, -210, -148, -149, -150, -151, -152, -210, -210, -157, -52, -210, -119, -121, -190, -210, -210, -58, -210, -63, -210, -210, -210, -210, -210, -190, -210, -210, -190, -210, -210, -210, -120, -126, -210, -189, -210, -192, 393, -4, -6, -186, -31, -32, -33, -210, -210, -210, -134, -135, -136, -137, -138, -139, -140, -141, -142, -143, -144, -145, -146, -147, -132, -210, -155, -156, -210, -50, -53, -54, -55, -56, -57, -112, -161, -162, -163, -164, -165, -166, -167, -168, -169, -170, -171, -172, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -122, -210, -127, -52, -210, -210, -89, -89, -210, -210, -210, -210, -82, -83, -210, -113, -210, -210, -210, -190, -190, -210, -38, -133, -153, -48, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -123, -210, -210, -59, -210, -5, -210, -210, -210, -210, -67, -70, -78, -72, -210, -210, -114, -115, -210, -210, -210, -210, -190, -51, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -49, -210, -64, -88, -65, -210, -68, -69, -210, -73, -190, -190, -75, -76, -210, -210, -191, -190, -194, -195, -210, -37, -39, -41, -42, -210, -173, -174, -175, -176, -177, -178, -179, -180, -181, -182, -210, -210, -210, -71, -210, -210, -210, -154, -210, -190, -205, -190, -210, -210, -124, -210, -210, -210, -188, -79, -80, -188, -210, -193, -210, -197, -198, -199, -200, -210, -203, -204, -190, -40, -210, -210, -60, -210, -77, -74, -90, -91, -190, -196, -201, -202, -205, -210, -210, -210, -92, -210, -190, -207, -209, -43, -210, -66, -210, -210, -210, -210, -210, -210, -190, -210, -210, -210, -210, -210, -210, -206, -205, -44, -210, -210, -110, -210, -98, -99, -210, -210, -210, -107, -108, -102, -208, -93, -210, -94, -100, -95, -210, -210, -210, -109, -210, -105, -106, -97, -101, -96 ] racc_goto_table = [ 39, 106, 39, 68, 78, 65, 123, 66, 77, 184, 2, 9, 40, 9, 40, 153, 274, 83, 189, 190, 194, 192, 193, 197, 107, 108, 261, 110, 39, 39, 310, 310, 71, 73, 79, 260, 233, 344, 39, 332, 40, 40, 104, 277, 109, 78, 171, 112, 322, 132, 40, 291, 309, 312, 226, 228, 1, 341, 133, 311, 311, 202, 272, 377, 316, 68, 343, 155, 167, 126, 172, 128, 129, 243, 264, 79, 150, 389, 232, 263, 266, 331, 365, 368, 322, 373, 387, 384, 160, 119, 261, 334, 183, 120, 149, 195, 196, 156, 198, 307, 168, 161, 162, 324, 222, 39, 163, 164, 158, 187, 322, 165, 166, 169, 170, nil, 206, 40, 388, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 258, nil, nil, nil, nil, nil, nil, 239, 240, nil, nil, nil, 280, nil, nil, nil, nil, 369, 155, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 295, 296, nil, nil, nil, nil, 155, nil, 236, 237, nil, nil, nil, 156, nil, 39, nil, nil, nil, nil, nil, 256, nil, nil, 158, 225, 9, 40, nil, nil, nil, 267, nil, nil, nil, 78, 156, 280, nil, 270, nil, nil, 299, nil, nil, nil, nil, 158, nil, nil, nil, nil, 39, nil, nil, 65, 262, nil, nil, nil, nil, 268, nil, 9, 40, 79, 340, nil, 342, nil, 315, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 337, nil, nil, 297, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 338, 354, nil, nil, nil, nil, nil, nil, 262, nil, nil, 78, nil, 363, nil, 339, nil, nil, nil, nil, nil, nil, nil, nil, 68, nil, nil, 68, 329, nil, nil, 330, nil, nil, nil, nil, 376, nil, nil, nil, nil, 79, 78, nil, nil, 375, 366, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 79, 370, 372, 374, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 391 ] racc_goto_check = [ 40, 35, 40, 7, 39, 3, 86, 4, 29, 34, 2, 12, 43, 12, 43, 37, 89, 30, 5, 5, 34, 5, 5, 34, 30, 30, 47, 30, 40, 40, 36, 36, 28, 28, 40, 46, 50, 94, 40, 56, 43, 43, 28, 31, 40, 39, 84, 40, 75, 29, 43, 47, 52, 52, 45, 45, 1, 56, 30, 44, 44, 87, 88, 94, 90, 7, 93, 39, 39, 4, 85, 6, 27, 38, 50, 40, 30, 42, 48, 49, 51, 55, 57, 58, 75, 59, 60, 61, 62, 63, 47, 89, 67, 68, 71, 30, 30, 40, 30, 46, 73, 76, 77, 31, 37, 40, 78, 79, 12, 28, 75, 80, 81, 82, 83, nil, 30, 43, 36, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 5, nil, nil, nil, nil, nil, nil, 86, 86, nil, nil, nil, 34, nil, nil, nil, nil, 47, 39, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 34, 34, nil, nil, nil, nil, 39, nil, 30, 30, nil, nil, nil, 40, nil, 40, nil, nil, nil, nil, nil, 39, nil, nil, 12, 2, 12, 43, nil, nil, nil, 39, nil, nil, nil, 39, 40, 34, nil, 29, nil, nil, 86, nil, nil, nil, nil, 12, nil, nil, nil, nil, 40, nil, nil, 3, 40, nil, nil, nil, nil, 40, nil, 12, 43, 40, 5, nil, 34, nil, 86, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 86, nil, nil, 40, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 35, 86, nil, nil, nil, nil, nil, nil, 40, nil, nil, 39, nil, 86, nil, 29, nil, nil, nil, nil, nil, nil, nil, nil, 7, nil, nil, 7, 4, nil, nil, 4, nil, nil, nil, nil, 35, nil, nil, nil, nil, 40, 39, nil, nil, 39, 29, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 40, 40, 40, 40, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 40 ] racc_goto_pointer = [ nil, 56, 10, 3, 4, -89, 3, 0, nil, nil, nil, nil, 11, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 2, 4, -26, -18, -199, nil, nil, -92, -40, -265, -82, -136, -30, 0, nil, -306, 12, -236, -135, -194, -203, -116, -153, -158, -154, -243, nil, nil, -232, -274, -275, -275, -275, -297, -289, -10, 31, nil, nil, nil, -7, 35, nil, nil, 6, nil, 2, nil, -253, 3, 4, 8, 9, 13, 14, 15, 16, -52, -28, -57, -62, -178, -224, -237, nil, nil, -271, -300 ] racc_goto_default = [ nil, nil, nil, 3, nil, nil, nil, 4, 5, 6, 7, 8, 87, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, nil, 55, nil, nil, nil, 278, 279, 124, 54, 52, nil, 154, 89, 91, 157, 51, 92, 49, nil, nil, 80, nil, nil, nil, nil, nil, 48, 50, nil, nil, nil, nil, nil, nil, nil, nil, 56, 57, 99, 58, 100, 59, 84, 85, 86, 134, 90, 93, 95, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 318, nil, nil, 345, 319, 320, nil, nil ] racc_reduce_table = [ 0, 0, :racc_error, 1, 86, :_reduce_1, 0, 86, :_reduce_none, 2, 87, :_reduce_3, 3, 87, :_reduce_4, 2, 90, :_reduce_5, 1, 91, :_reduce_none, 0, 91, :_reduce_none, 1, 88, :_reduce_none, 1, 88, :_reduce_none, 1, 88, :_reduce_none, 1, 88, :_reduce_none, 1, 88, :_reduce_none, 1, 88, :_reduce_none, 1, 88, :_reduce_none, 1, 88, :_reduce_none, 1, 88, :_reduce_none, 1, 88, :_reduce_none, 1, 88, :_reduce_none, 1, 88, :_reduce_none, 1, 88, :_reduce_none, 1, 88, :_reduce_none, 1, 88, :_reduce_none, 1, 88, :_reduce_none, 1, 88, :_reduce_none, 1, 88, :_reduce_none, 1, 88, :_reduce_none, 1, 88, :_reduce_none, 1, 88, :_reduce_28, 1, 88, :_reduce_29, 1, 111, :_reduce_30, 3, 110, :_reduce_31, 1, 112, :_reduce_none, 1, 112, :_reduce_none, 2, 109, :_reduce_34, 2, 107, :_reduce_35, 2, 106, :_reduce_36, 6, 104, :_reduce_37, 4, 104, :_reduce_38, 6, 104, :_reduce_39, 8, 104, :_reduce_40, 1, 116, :_reduce_none, 1, 116, :_reduce_none, 5, 117, :_reduce_43, 7, 118, :_reduce_44, 1, 120, :_reduce_45, 2, 102, :_reduce_46, 2, 103, :_reduce_47, 4, 121, :_reduce_48, 5, 121, :_reduce_49, 1, 122, :_reduce_50, 3, 122, :_reduce_51, 0, 122, :_reduce_52, 1, 123, :_reduce_none, 1, 123, :_reduce_none, 1, 123, :_reduce_none, 1, 123, :_reduce_none, 1, 126, :_reduce_57, 2, 127, :_reduce_58, 4, 127, :_reduce_59, 8, 127, :_reduce_60, 1, 113, :_reduce_none, 1, 113, :_reduce_none, 2, 129, :_reduce_63, 5, 98, :_reduce_64, 5, 98, :_reduce_65, 10, 100, :_reduce_66, 4, 101, :_reduce_67, 1, 131, :_reduce_none, 1, 131, :_reduce_none, 4, 94, :_reduce_70, 6, 105, :_reduce_71, 1, 133, :_reduce_72, 2, 133, :_reduce_73, 5, 135, :_reduce_74, 1, 136, :_reduce_none, 1, 136, :_reduce_none, 4, 134, :_reduce_77, 0, 134, :_reduce_none, 1, 137, :_reduce_none, 1, 137, :_reduce_none, 1, 99, :_reduce_none, 3, 99, :_reduce_82, 3, 99, :_reduce_83, 1, 138, :_reduce_none, 1, 138, :_reduce_none, 1, 138, :_reduce_none, 1, 138, :_reduce_none, 2, 130, :_reduce_88, 0, 130, :_reduce_89, 8, 95, :_reduce_90, 1, 140, :_reduce_91, 2, 140, :_reduce_92, 6, 141, :_reduce_93, 6, 141, :_reduce_94, 6, 141, :_reduce_95, 8, 141, :_reduce_96, 7, 141, :_reduce_97, 1, 143, :_reduce_none, 1, 143, :_reduce_none, 2, 143, :_reduce_100, 2, 146, :_reduce_101, 0, 146, :_reduce_none, 1, 114, :_reduce_none, 1, 114, :_reduce_none, 1, 145, :_reduce_none, 1, 145, :_reduce_none, 1, 144, :_reduce_none, 1, 144, :_reduce_none, 3, 142, :_reduce_109, 1, 142, :_reduce_110, 1, 96, :_reduce_111, 3, 93, :_reduce_112, 3, 139, :_reduce_113, 4, 139, :_reduce_114, 4, 139, :_reduce_115, 1, 125, :_reduce_none, 1, 125, :_reduce_none, 1, 148, :_reduce_118, 2, 148, :_reduce_119, 2, 149, :_reduce_120, 1, 150, :_reduce_121, 2, 150, :_reduce_122, 3, 152, :_reduce_123, 6, 152, :_reduce_124, 1, 151, :_reduce_125, 2, 151, :_reduce_126, 3, 153, :_reduce_127, 1, 115, :_reduce_none, 1, 115, :_reduce_none, 1, 154, :_reduce_130, 1, 154, :_reduce_none, 2, 154, :_reduce_132, 3, 155, :_reduce_133, 1, 157, :_reduce_134, 1, 157, :_reduce_135, 1, 157, :_reduce_136, 1, 157, :_reduce_137, 1, 157, :_reduce_138, 1, 157, :_reduce_139, 1, 157, :_reduce_140, 1, 157, :_reduce_141, 1, 157, :_reduce_142, 1, 157, :_reduce_143, 1, 157, :_reduce_144, 1, 157, :_reduce_145, 1, 157, :_reduce_146, 1, 157, :_reduce_147, 1, 156, :_reduce_none, 1, 156, :_reduce_none, 1, 156, :_reduce_none, 1, 156, :_reduce_none, 1, 156, :_reduce_none, 3, 159, :_reduce_153, 6, 128, :_reduce_154, 2, 158, :_reduce_155, 2, 158, :_reduce_156, 1, 160, :_reduce_157, 1, 124, :_reduce_none, 1, 124, :_reduce_159, 1, 132, :_reduce_160, 1, 147, :_reduce_none, 1, 147, :_reduce_none, 1, 147, :_reduce_none, 1, 147, :_reduce_none, 1, 147, :_reduce_none, 1, 147, :_reduce_none, 1, 147, :_reduce_none, 1, 147, :_reduce_none, 1, 147, :_reduce_none, 1, 147, :_reduce_none, 1, 147, :_reduce_none, 1, 147, :_reduce_none, 4, 170, :_reduce_173, 4, 169, :_reduce_174, 4, 168, :_reduce_175, 4, 167, :_reduce_176, 4, 166, :_reduce_177, 4, 165, :_reduce_178, 4, 161, :_reduce_179, 4, 164, :_reduce_180, 4, 162, :_reduce_181, 4, 163, :_reduce_182, 1, 97, :_reduce_183, 1, 92, :_reduce_184, 1, 89, :_reduce_185, 2, 89, :_reduce_186, 1, 89, :_reduce_none, 0, 89, :_reduce_none, 1, 119, :_reduce_189, 0, 119, :_reduce_none, 5, 108, :_reduce_191, 1, 171, :_reduce_none, 5, 172, :_reduce_193, 3, 172, :_reduce_194, 1, 173, :_reduce_195, 4, 173, :_reduce_196, 3, 174, :_reduce_197, 1, 175, :_reduce_none, 1, 175, :_reduce_none, 1, 175, :_reduce_none, 2, 175, :_reduce_201, 2, 175, :_reduce_202, 1, 175, :_reduce_203, 1, 177, :_reduce_none, 0, 177, :_reduce_none, 5, 176, :_reduce_206, 1, 178, :_reduce_207, 4, 178, :_reduce_208, 1, 179, :_reduce_none ] racc_reduce_n = 210 racc_shift_n = 393 racc_token_table = { false => 0, :error => 1, :ASSIGN => 2, :AT_SYM => 3, :COMMENT => 4, :JUMP => 5, :IO_METHOD => 6, :INPUT => 7, :OUTPUT => 8, :NUMREG => 9, :POSREG => 10, :VREG => 11, :SREG => 12, :TIME_SEGMENT => 13, :ARG => 14, :UALM => 15, :MOVE => 16, :DOT => 17, :TO => 18, :AT => 19, :TERM => 20, :OFFSET => 21, :SKIP => 22, :GROUP => 23, :SEMICOLON => 24, :NEWLINE => 25, :STRING => 26, :REAL => 27, :DIGIT => 28, :WORD => 29, :EQUAL => 30, :EEQUAL => 31, :NOTEQUAL => 32, :GTE => 33, :LTE => 34, :LT => 35, :GT => 36, :BANG => 37, :PLUS => 38, :MINUS => 39, :STAR => 40, :SLASH => 41, :DIV => 42, :AND => 43, :OR => 44, :MOD => 45, :IF => 46, :ELSE => 47, :END => 48, :UNLESS => 49, :FOR => 50, :IN => 51, :WHILE => 52, :WAIT_FOR => 53, :WAIT_UNTIL => 54, :TIMEOUT => 55, :AFTER => 56, :FANUC_USE => 57, :SET_SKIP_CONDITION => 58, :NAMESPACE => 59, :CASE => 60, :WHEN => 61, :INDIRECT => 62, :POSITION => 63, :EVAL => 64, :TIMER => 65, :TIMER_METHOD => 66, :RAISE => 67, :ABORT => 68, :POSITION_DATA => 69, :TRUE_FALSE => 70, :RUN => 71, :TP_HEADER => 72, :PAUSE => 73, :LPAREN => 74, :RPAREN => 75, :COLON => 76, :COMMA => 77, :LBRACK => 78, :RBRACK => 79, :LBRACE => 80, :RBRACE => 81, :LABEL => 82, :ADDRESS => 83, :false => 84 } racc_nt_base = 85 racc_use_result_var = true Racc_arg = [ racc_action_table, racc_action_check, racc_action_default, racc_action_pointer, racc_goto_table, racc_goto_check, racc_goto_default, racc_goto_pointer, racc_nt_base, racc_reduce_table, racc_token_table, racc_shift_n, racc_reduce_n, racc_use_result_var ] Racc_token_to_s_table = [ "$end", "error", "ASSIGN", "AT_SYM", "COMMENT", "JUMP", "IO_METHOD", "INPUT", "OUTPUT", "NUMREG", "POSREG", "VREG", "SREG", "TIME_SEGMENT", "ARG", "UALM", "MOVE", "DOT", "TO", "AT", "TERM", "OFFSET", "SKIP", "GROUP", "SEMICOLON", "NEWLINE", "STRING", "REAL", "DIGIT", "WORD", "EQUAL", "EEQUAL", "NOTEQUAL", "GTE", "LTE", "LT", "GT", "BANG", "PLUS", "MINUS", "STAR", "SLASH", "DIV", "AND", "OR", "MOD", "IF", "ELSE", "END", "UNLESS", "FOR", "IN", "WHILE", "WAIT_FOR", "WAIT_UNTIL", "TIMEOUT", "AFTER", "FANUC_USE", "SET_SKIP_CONDITION", "NAMESPACE", "CASE", "WHEN", "INDIRECT", "POSITION", "EVAL", "TIMER", "TIMER_METHOD", "RAISE", "ABORT", "POSITION_DATA", "TRUE_FALSE", "RUN", "TP_HEADER", "PAUSE", "LPAREN", "RPAREN", "COLON", "COMMA", "LBRACK", "RBRACK", "LBRACE", "RBRACE", "LABEL", "ADDRESS", "false", "$start", "program", "statements", "statement", "terminator", "block", "optional_newline", "comment", "definition", "namespace", "motion_statement", "label_definition", "address", "conditional", "inline_conditional", "forloop", "while_loop", "use_statement", "set_skip_statement", "wait_statement", "case_statement", "fanuc_eval", "timer_method", "position_data", "raise", "tp_header_definition", "empty_stmt", "tp_header_value", "var_or_indirect", "indirectable", "expression", "wait_modifier", "timeout_modifier", "after_modifier", "swallow_newlines", "label", "program_call", "args", "arg", "number", "var", "string", "io_method", "indirect_thing", "jump", "else_block", "minmax_val", "integer", "case_conditions", "case_else", "case_condition", "case_allowed_condition", "case_allowed_statement", "inlineable", "assignment", "motion_modifiers", "motion_modifier", "speed", "valid_terminations", "time", "time_seg_actions", "optional_lpos_arg", "definable", "var_without_namespaces", "var_with_namespaces", "var_method_modifiers", "namespaces", "var_method_modifier", "ns", "unary_expression", "binary_expression", "factor", "operator", "signed_number", "paren_expr", "sign", "numreg", "output", "input", "posreg", "position", "vreg", "argument", "timer", "ualm", "sreg", "sn", "hash", "hash_attributes", "hash_attribute", "hash_value", "array", "optional_sign", "array_values", "array_value" ] Racc_debug_parser = false ##### State transition tables end ##### # reduce 0 omitted module_eval(<<'.,.,', 'tp_plus.y', 35) def _reduce_1(val, _values, result) @interpreter.nodes = val[0] result end .,., # reduce 2 omitted module_eval(<<'.,.,', 'tp_plus.y', 42) def _reduce_3(val, _values, result) result = [val[0]] result << val[1] unless val[1].nil? result end .,., module_eval(<<'.,.,', 'tp_plus.y', 46) def _reduce_4(val, _values, result) result = val[0] << val[1] result << val[2] unless val[2].nil? result end .,., module_eval(<<'.,.,', 'tp_plus.y', 52) def _reduce_5(val, _values, result) result = val[1] result end .,., # reduce 6 omitted # reduce 7 omitted # reduce 8 omitted # reduce 9 omitted # reduce 10 omitted # reduce 11 omitted # reduce 12 omitted # reduce 13 omitted # reduce 14 omitted # reduce 15 omitted # reduce 16 omitted # reduce 17 omitted # reduce 18 omitted # reduce 19 omitted # reduce 20 omitted # reduce 21 omitted # reduce 22 omitted # reduce 23 omitted # reduce 24 omitted # reduce 25 omitted # reduce 26 omitted # reduce 27 omitted module_eval(<<'.,.,', 'tp_plus.y', 85) def _reduce_28(val, _values, result) result = PauseNode.new result end .,., module_eval(<<'.,.,', 'tp_plus.y', 86) def _reduce_29(val, _values, result) result = AbortNode.new result end .,., module_eval(<<'.,.,', 'tp_plus.y', 90) def _reduce_30(val, _values, result) result = EmptyStmtNode.new() result end .,., module_eval(<<'.,.,', 'tp_plus.y', 94) def _reduce_31(val, _values, result) result = HeaderNode.new(val[0],val[2]) result end .,., # reduce 32 omitted # reduce 33 omitted module_eval(<<'.,.,', 'tp_plus.y', 103) def _reduce_34(val, _values, result) result = RaiseNode.new(val[1]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 107) def _reduce_35(val, _values, result) result = TimerMethodNode.new(val[0],val[1]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 111) def _reduce_36(val, _values, result) result = EvalNode.new(val[1]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 116) def _reduce_37(val, _values, result) result = WaitForNode.new(val[2], val[4]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 118) def _reduce_38(val, _values, result) result = WaitUntilNode.new(val[2], nil) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 120) def _reduce_39(val, _values, result) result = WaitUntilNode.new(val[2],val[5]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 122) def _reduce_40(val, _values, result) result = WaitUntilNode.new(val[2],val[5].merge(val[7])) result end .,., # reduce 41 omitted # reduce 42 omitted module_eval(<<'.,.,', 'tp_plus.y', 132) def _reduce_43(val, _values, result) result = { label: val[3] } result end .,., module_eval(<<'.,.,', 'tp_plus.y', 137) def _reduce_44(val, _values, result) result = { timeout: [val[3],val[5]] } result end .,., module_eval(<<'.,.,', 'tp_plus.y', 141) def _reduce_45(val, _values, result) result = val[0] result end .,., module_eval(<<'.,.,', 'tp_plus.y', 145) def _reduce_46(val, _values, result) result = UseNode.new(val[0],val[1]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 150) def _reduce_47(val, _values, result) result = SetSkipNode.new(val[1]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 154) def _reduce_48(val, _values, result) result = CallNode.new(val[0],val[2]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 155) def _reduce_49(val, _values, result) result = CallNode.new(val[1],val[3],async: true) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 159) def _reduce_50(val, _values, result) result = [val[0]] result end .,., module_eval(<<'.,.,', 'tp_plus.y', 160) def _reduce_51(val, _values, result) result = val[0] << val[2] result end .,., module_eval(<<'.,.,', 'tp_plus.y', 161) def _reduce_52(val, _values, result) result = [] result end .,., # reduce 53 omitted # reduce 54 omitted # reduce 55 omitted # reduce 56 omitted module_eval(<<'.,.,', 'tp_plus.y', 172) def _reduce_57(val, _values, result) result = StringNode.new(val[0]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 176) def _reduce_58(val, _values, result) result = IOMethodNode.new(val[0],val[1]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 178) def _reduce_59(val, _values, result) result = IOMethodNode.new(val[0],val[2]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 180) def _reduce_60(val, _values, result) result = IOMethodNode.new(val[0],val[2],{ pulse_time: val[4], pulse_units: val[6] }) result end .,., # reduce 61 omitted # reduce 62 omitted module_eval(<<'.,.,', 'tp_plus.y', 190) def _reduce_63(val, _values, result) result = JumpNode.new(val[1]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 195) def _reduce_64(val, _values, result) result = ConditionalNode.new("if",val[1],val[2],val[3]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 197) def _reduce_65(val, _values, result) result = ConditionalNode.new("unless",val[1],val[2],val[3]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 202) def _reduce_66(val, _values, result) result = ForNode.new(val[1],val[4],val[6],val[8]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 206) def _reduce_67(val, _values, result) result = WhileNode.new(val[1],val[2]) result end .,., # reduce 68 omitted # reduce 69 omitted module_eval(<<'.,.,', 'tp_plus.y', 215) def _reduce_70(val, _values, result) result = NamespaceNode.new(val[1],val[2]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 222) def _reduce_71(val, _values, result) result = CaseNode.new(val[1],val[3],val[4]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 226) def _reduce_72(val, _values, result) result = val result end .,., module_eval(<<'.,.,', 'tp_plus.y', 228) def _reduce_73(val, _values, result) result = val[0] << val[1] << val[2] result end .,., module_eval(<<'.,.,', 'tp_plus.y', 233) def _reduce_74(val, _values, result) result = CaseConditionNode.new(val[1],val[3]) result end .,., # reduce 75 omitted # reduce 76 omitted module_eval(<<'.,.,', 'tp_plus.y', 243) def _reduce_77(val, _values, result) result = CaseConditionNode.new(nil,val[2]) result end .,., # reduce 78 omitted # reduce 79 omitted # reduce 80 omitted # reduce 81 omitted module_eval(<<'.,.,', 'tp_plus.y', 254) def _reduce_82(val, _values, result) result = InlineConditionalNode.new(val[1], val[2], val[0]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 255) def _reduce_83(val, _values, result) result = InlineConditionalNode.new(val[1], val[2], val[0]) result end .,., # reduce 84 omitted # reduce 85 omitted # reduce 86 omitted # reduce 87 omitted module_eval(<<'.,.,', 'tp_plus.y', 266) def _reduce_88(val, _values, result) result = val[1] result end .,., module_eval(<<'.,.,', 'tp_plus.y', 267) def _reduce_89(val, _values, result) result = [] result end .,., module_eval(<<'.,.,', 'tp_plus.y', 272) def _reduce_90(val, _values, result) result = MotionNode.new(val[0],val[5],val[7]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 276) def _reduce_91(val, _values, result) result = val result end .,., module_eval(<<'.,.,', 'tp_plus.y', 278) def _reduce_92(val, _values, result) result = val[0] << val[1] result end .,., module_eval(<<'.,.,', 'tp_plus.y', 283) def _reduce_93(val, _values, result) result = SpeedNode.new(val[4]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 285) def _reduce_94(val, _values, result) result = TerminationNode.new(val[4]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 287) def _reduce_95(val, _values, result) result = OffsetNode.new(val[2],val[4]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 289) def _reduce_96(val, _values, result) result = TimeNode.new(val[2],val[4],val[6]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 291) def _reduce_97(val, _values, result) result = SkipNode.new(val[4],val[5]) result end .,., # reduce 98 omitted # reduce 99 omitted module_eval(<<'.,.,', 'tp_plus.y', 298) def _reduce_100(val, _values, result) raise Racc::ParseError, sprintf("\ninvalid termination type: (%s)", val[1]) if val[1] != 1 result = DigitNode.new(val[1].to_i * -1) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 305) def _reduce_101(val, _values, result) result = val[1] result end .,., # reduce 102 omitted # reduce 103 omitted # reduce 104 omitted # reduce 105 omitted # reduce 106 omitted # reduce 107 omitted # reduce 108 omitted module_eval(<<'.,.,', 'tp_plus.y', 325) def _reduce_109(val, _values, result) result = { speed: val[0], units: val[2] } result end .,., module_eval(<<'.,.,', 'tp_plus.y', 326) def _reduce_110(val, _values, result) result = { speed: val[0], units: nil } result end .,., module_eval(<<'.,.,', 'tp_plus.y', 330) def _reduce_111(val, _values, result) result = LabelDefinitionNode.new(val[0]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 334) def _reduce_112(val, _values, result) result = DefinitionNode.new(val[0],val[2]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 338) def _reduce_113(val, _values, result) result = AssignmentNode.new(val[0],val[2]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 339) def _reduce_114(val, _values, result) result = AssignmentNode.new( val[0], ExpressionNode.new(val[0],"+",val[3]) ) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 344) def _reduce_115(val, _values, result) result = AssignmentNode.new( val[0], ExpressionNode.new(val[0],"-",val[3]) ) result end .,., # reduce 116 omitted # reduce 117 omitted module_eval(<<'.,.,', 'tp_plus.y', 357) def _reduce_118(val, _values, result) result = VarNode.new(val[0]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 358) def _reduce_119(val, _values, result) result = VarMethodNode.new(val[0],val[1]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 363) def _reduce_120(val, _values, result) result = NamespacedVarNode.new(val[0],val[1]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 367) def _reduce_121(val, _values, result) result = val[0] result end .,., module_eval(<<'.,.,', 'tp_plus.y', 369) def _reduce_122(val, _values, result) result = val[0].merge(val[1]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 373) def _reduce_123(val, _values, result) result = { method: val[2] } result end .,., module_eval(<<'.,.,', 'tp_plus.y', 375) def _reduce_124(val, _values, result) result = { group: val[4] } result end .,., module_eval(<<'.,.,', 'tp_plus.y', 379) def _reduce_125(val, _values, result) result = [val[0]] result end .,., module_eval(<<'.,.,', 'tp_plus.y', 380) def _reduce_126(val, _values, result) result = val[0] << val[1] result end .,., module_eval(<<'.,.,', 'tp_plus.y', 384) def _reduce_127(val, _values, result) result = val[0] result end .,., # reduce 128 omitted # reduce 129 omitted module_eval(<<'.,.,', 'tp_plus.y', 394) def _reduce_130(val, _values, result) result = val[0] result end .,., # reduce 131 omitted module_eval(<<'.,.,', 'tp_plus.y', 396) def _reduce_132(val, _values, result) result = ExpressionNode.new(val[1], "!", nil) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 401) def _reduce_133(val, _values, result) result = ExpressionNode.new(val[0], val[1], val[2]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 405) def _reduce_134(val, _values, result) result = "==" result end .,., module_eval(<<'.,.,', 'tp_plus.y', 406) def _reduce_135(val, _values, result) result = "<>" result end .,., module_eval(<<'.,.,', 'tp_plus.y', 407) def _reduce_136(val, _values, result) result = "<" result end .,., module_eval(<<'.,.,', 'tp_plus.y', 408) def _reduce_137(val, _values, result) result = ">" result end .,., module_eval(<<'.,.,', 'tp_plus.y', 409) def _reduce_138(val, _values, result) result = ">=" result end .,., module_eval(<<'.,.,', 'tp_plus.y', 410) def _reduce_139(val, _values, result) result = "<=" result end .,., module_eval(<<'.,.,', 'tp_plus.y', 411) def _reduce_140(val, _values, result) result = "+" result end .,., module_eval(<<'.,.,', 'tp_plus.y', 412) def _reduce_141(val, _values, result) result = "-" result end .,., module_eval(<<'.,.,', 'tp_plus.y', 413) def _reduce_142(val, _values, result) result = "||" result end .,., module_eval(<<'.,.,', 'tp_plus.y', 414) def _reduce_143(val, _values, result) result = "*" result end .,., module_eval(<<'.,.,', 'tp_plus.y', 415) def _reduce_144(val, _values, result) result = "/" result end .,., module_eval(<<'.,.,', 'tp_plus.y', 416) def _reduce_145(val, _values, result) result = "DIV" result end .,., module_eval(<<'.,.,', 'tp_plus.y', 417) def _reduce_146(val, _values, result) result = "%" result end .,., module_eval(<<'.,.,', 'tp_plus.y', 418) def _reduce_147(val, _values, result) result = "&&" result end .,., # reduce 148 omitted # reduce 149 omitted # reduce 150 omitted # reduce 151 omitted # reduce 152 omitted module_eval(<<'.,.,', 'tp_plus.y', 430) def _reduce_153(val, _values, result) result = ParenExpressionNode.new(val[1]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 435) def _reduce_154(val, _values, result) result = IndirectNode.new(val[2].to_sym, val[4]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 440) def _reduce_155(val, _values, result) val[1] = val[1].to_i * -1 if val[0] == "-" result = DigitNode.new(val[1]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 443) def _reduce_156(val, _values, result) val[1] = val[1].to_f * -1 if val[0] == "-"; result = RealNode.new(val[1]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 447) def _reduce_157(val, _values, result) result = "-" result end .,., # reduce 158 omitted module_eval(<<'.,.,', 'tp_plus.y', 452) def _reduce_159(val, _values, result) result = RealNode.new(val[0]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 456) def _reduce_160(val, _values, result) result = DigitNode.new(val[0]) result end .,., # reduce 161 omitted # reduce 162 omitted # reduce 163 omitted # reduce 164 omitted # reduce 165 omitted # reduce 166 omitted # reduce 167 omitted # reduce 168 omitted # reduce 169 omitted # reduce 170 omitted # reduce 171 omitted # reduce 172 omitted module_eval(<<'.,.,', 'tp_plus.y', 476) def _reduce_173(val, _values, result) result = StringRegisterNode.new(val[2].to_i) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 480) def _reduce_174(val, _values, result) result = UserAlarmNode.new(val[2].to_i) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 484) def _reduce_175(val, _values, result) result = TimerNode.new(val[2].to_i) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 488) def _reduce_176(val, _values, result) result = ArgumentNode.new(val[2].to_i) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 492) def _reduce_177(val, _values, result) result = VisionRegisterNode.new(val[2].to_i) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 496) def _reduce_178(val, _values, result) result = PositionNode.new(val[2].to_i) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 500) def _reduce_179(val, _values, result) result = NumregNode.new(val[2].to_i) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 504) def _reduce_180(val, _values, result) result = PosregNode.new(val[2].to_i) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 508) def _reduce_181(val, _values, result) result = IONode.new(val[0], val[2].to_i) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 512) def _reduce_182(val, _values, result) result = IONode.new(val[0], val[2].to_i) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 516) def _reduce_183(val, _values, result) result = AddressNode.new(val[0]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 520) def _reduce_184(val, _values, result) result = CommentNode.new(val[0]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 524) def _reduce_185(val, _values, result) result = TerminatorNode.new result end .,., module_eval(<<'.,.,', 'tp_plus.y', 525) def _reduce_186(val, _values, result) result = val[0] result end .,., # reduce 187 omitted # reduce 188 omitted module_eval(<<'.,.,', 'tp_plus.y', 532) def _reduce_189(val, _values, result) result = TerminatorNode.new result end .,., # reduce 190 omitted module_eval(<<'.,.,', 'tp_plus.y', 538) def _reduce_191(val, _values, result) result = PositionDataNode.new(val[2]) result end .,., # reduce 192 omitted module_eval(<<'.,.,', 'tp_plus.y', 546) def _reduce_193(val, _values, result) result = val[2] result end .,., module_eval(<<'.,.,', 'tp_plus.y', 547) def _reduce_194(val, _values, result) result = {} result end .,., module_eval(<<'.,.,', 'tp_plus.y', 551) def _reduce_195(val, _values, result) result = val[0] result end .,., module_eval(<<'.,.,', 'tp_plus.y', 553) def _reduce_196(val, _values, result) result = val[0].merge(val[3]) result end .,., module_eval(<<'.,.,', 'tp_plus.y', 557) def _reduce_197(val, _values, result) result = { val[0].to_sym => val[2] } result end .,., # reduce 198 omitted # reduce 199 omitted # reduce 200 omitted module_eval(<<'.,.,', 'tp_plus.y', 564) def _reduce_201(val, _values, result) val[1] = val[1].to_i * -1 if val[0] == "-"; result = val[1] result end .,., module_eval(<<'.,.,', 'tp_plus.y', 565) def _reduce_202(val, _values, result) val[1] = val[1].to_f * -1 if val[0] == "-"; result = val[1] result end .,., module_eval(<<'.,.,', 'tp_plus.y', 566) def _reduce_203(val, _values, result) result = val[0] == "true" result end .,., # reduce 204 omitted # reduce 205 omitted module_eval(<<'.,.,', 'tp_plus.y', 575) def _reduce_206(val, _values, result) result = val[2] result end .,., module_eval(<<'.,.,', 'tp_plus.y', 579) def _reduce_207(val, _values, result) result = val result end .,., module_eval(<<'.,.,', 'tp_plus.y', 580) def _reduce_208(val, _values, result) result = val[0] << val[3] result end .,., # reduce 209 omitted def _reduce_none(val, _values, result) val[0] end end # class Parser end # module TPPlus