# # DO NOT MODIFY!!!! # This file is automatically generated by Racc 1.4.14 # from Racc grammer file "". # require 'racc/parser.rb' require 'strscan' module EDTF class Parser < Racc::Parser module_eval(<<'...end parser.y/module_eval...', 'parser.y', 447) @defaults = { :level => 2, :debug => false }.freeze class << self; attr_reader :defaults; end attr_reader :options def initialize(options = {}) @options = Parser.defaults.merge(options) end def debug? !!(options[:debug] || ENV['DEBUG']) end def parse(input) parse!(input) rescue => e warn e.message if debug? nil end def parse!(input) @yydebug = debug? @src = StringScanner.new(input) do_parse end def on_error(tid, value, stack) raise ArgumentError, "failed to parse date: unexpected '#{value}' at #{stack.inspect}" end def apply_uncertainty(date, uncertainty, scope = nil) uncertainty.each do |u| scope.nil? ? date.send(u) : date.send(u, scope) end date end alias uoa apply_uncertainty def next_token case when @src.eos? nil # when @src.scan(/\s+/) # ignore whitespace when @src.scan(/\(/) ['(', @src.matched] # when @src.scan(/\)\?~-/) # [:PUA, [:uncertain!, :approximate!]] # when @src.scan(/\)\?-/) # [:PUA, [:uncertain!]] # when @src.scan(/\)~-/) # [:PUA, [:approximate!]] when @src.scan(/\)/) [')', @src.matched] when @src.scan(/\[/) ['[', @src.matched] when @src.scan(/\]/) [']', @src.matched] when @src.scan(/\{/) ['{', @src.matched] when @src.scan(/\}/) ['}', @src.matched] when @src.scan(/T/) [:T, @src.matched] when @src.scan(/Z/) [:Z, @src.matched] when @src.scan(/\?~/) [:UA, [:uncertain!, :approximate!]] when @src.scan(/\?/) [:UA, [:uncertain!]] when @src.scan(/~/) [:UA, [:approximate!]] when @src.scan(/open/i) [:OPEN, :open] when @src.scan(/unkn?own/i) # matches 'unkown' typo too [:UNKNOWN, :unknown] when @src.scan(/u/) [:U, @src.matched] when @src.scan(/x/i) [:X, @src.matched] when @src.scan(/y/) [:LONGYEAR, @src.matched] when @src.scan(/e/) [:E, @src.matched] when @src.scan(/\+/) ['+', @src.matched] when @src.scan(/-\(/) ['-(', @src.matched] when @src.scan(/-/) ['-', @src.matched] when @src.scan(/:/) [':', @src.matched] when @src.scan(/\//) ['/', @src.matched] when @src.scan(/\s*\.\.\s*/) [:DOTS, '..'] when @src.scan(/\s*,\s*/) [',', ','] when @src.scan(/\^\w+/) ['^', @src.matched[1..-1]] when @src.scan(/\d/) [@src.matched, @src.matched.to_i] else @src.scan(/./) [:UNMATCHED, @src.rest] end end # -*- racc -*- ...end parser.y/module_eval... ##### State transition tables begin ### racc_action_table = [ 130, 129, 114, 54, 53, 115, 150, 57, 210, 209, 45, 47, 42, 149, 151, 44, -53, 46, 45, 47, 42, 59, -51, 44, 55, 46, 58, 48, 49, 50, 51, 52, 59, 135, 60, 48, 49, 50, 51, 52, 18, 27, 57, 28, 114, 60, 65, 115, 56, 45, 47, 42, 11, 66, 44, 67, 46, 68, 35, 169, 36, 58, 129, 38, 69, -68, 48, 49, 50, 51, 52, 45, 47, 42, 170, 171, 44, 57, 46, 114, 57, -69, 115, 161, 209, 99, 217, 133, 48, 49, 50, 51, 52, 45, 47, 42, 58, 148, 44, 58, 46, 104, 114, 106, 152, 115, 107, 27, 143, 153, 48, 49, 50, 51, 52, 45, 47, 42, 11, 88, 44, 154, 46, 45, 47, 42, 11, 155, 44, 38, 46, 159, 48, 49, 50, 51, 52, 38, 162, 172, 48, 49, 50, 51, 52, 88, 181, 95, 97, 45, 47, 42, 11, 182, 44, 184, 46, 45, 47, 42, 96, 98, 44, 38, 46, 196, 48, 49, 50, 51, 52, 221, 197, 206, 48, 49, 50, 51, 52, 45, 47, 42, 114, 211, 44, 115, 46, 45, 47, 163, 71, 212, 44, 214, 46, 215, 48, 49, 50, 51, 52, 216, 60, 218, 48, 49, 50, 51, 52, 45, 47, 42, 90, 231, 44, 232, 46, 45, 47, 42, 194, 234, 44, 184, 46, 184, 48, 49, 50, 51, 52, 111, 193, 195, 48, 49, 50, 51, 52, 45, 47, 241, 114, 258, 44, 115, 46, 45, 47, 42, 238, 259, 44, 260, 46, 263, 48, 49, 50, 51, 52, 266, 237, 239, 48, 49, 50, 51, 52, 45, 47, 269, 204, 231, 44, 205, 46, 45, 47, 42, 114, 232, 44, 115, 46, 270, 48, 49, 50, 51, 52, 196, 273, 276, 48, 49, 50, 51, 52, 45, 47, 42, 90, 277, 44, 282, 46, 45, 47, 42, 245, 287, 44, 244, 46, 291, 48, 49, 50, 51, 52, 292, 293, 297, 48, 49, 50, 51, 52, 45, 47, 42, 249, 299, 44, 244, 46, 45, 47, 179, 114, 300, 44, 115, 46, 302, 48, 49, 50, 51, 52, 303, 304, 307, 48, 49, 50, 51, 52, 45, 47, 42, 308, 184, 44, 310, 46, 45, 47, 311, 312, 288, 44, 313, 46, 314, 48, 49, 50, 51, 52, 315, 318, 319, 48, 49, 50, 51, 52, 45, 47, 320, 321, 323, 44, 324, 46, 176, 198, 174, 325, 326, 175, nil, 177, nil, 48, 49, 50, 51, 52, nil, nil, nil, 199, 200, 201, 202, 203, 45, 47, 42, nil, nil, 44, nil, 46, 45, 47, 42, nil, nil, 44, nil, 46, nil, 48, 49, 50, 51, 52, nil, nil, nil, 48, 49, 50, 51, 52, 45, 47, 42, nil, nil, 44, nil, 46, 45, 47, nil, nil, nil, 44, nil, 46, nil, 48, 49, 50, 51, 52, nil, nil, nil, 48, 49, 50, 51, 52, 45, 47, 42, 90, nil, 44, nil, 46, 45, 47, 42, 90, nil, 44, nil, 46, nil, 48, 49, 50, 51, 52, nil, nil, nil, 48, 49, 50, 51, 52, 45, 47, 42, 90, nil, 44, nil, 46, 45, 47, 42, 11, nil, 44, nil, 46, nil, 48, 49, 50, 51, 52, 38, nil, nil, 48, 49, 50, 51, 52, 45, 47, 42, 11, nil, 44, nil, 46, 45, 47, 42, nil, nil, 44, 38, 46, nil, 48, 49, 50, 51, 52, nil, nil, nil, 48, 49, 50, 51, 52, 45, 47, nil, nil, nil, 44, nil, 46, 45, 47, 42, nil, nil, 44, nil, 46, nil, 48, 49, 50, 51, 52, nil, nil, nil, 48, 49, 50, 51, 52, 45, 47, 42, nil, nil, 44, nil, 46, 45, 47, 42, nil, nil, 44, nil, 46, nil, 48, 49, 50, 51, 52, nil, nil, nil, 48, 49, 50, 51, 52, 45, 47, 280, nil, nil, 44, nil, 46, 45, 47, 281, nil, nil, 44, nil, 46, nil, 48, 49, 50, 51, 52, nil, nil, nil, 48, 49, 50, 51, 52, 45, 47, 283, nil, nil, 44, nil, 46, 45, 47, 42, nil, nil, 44, nil, 46, nil, 48, 49, 50, 51, 52, nil, nil, nil, 48, 49, 50, 51, 52, 45, 47, 42, nil, nil, 44, nil, 46, 45, 47, 42, nil, nil, 44, nil, 46, nil, 48, 49, 50, 51, 52, nil, nil, nil, 48, 49, 50, 51, 52, 45, 47, 42, nil, nil, 44, nil, 46, 45, 47, 42, nil, nil, 44, nil, 46, nil, 48, 49, 50, 51, 52, nil, nil, nil, 48, 49, 50, 51, 52, 45, 47, 42, 11, nil, 44, nil, 46, 45, 47, 322, nil, nil, 44, 38, 46, nil, 48, 49, 50, 51, 52, nil, nil, nil, 48, 49, 50, 51, 52, 121, 255, 252, nil, nil, 107, nil, 254, 121, 255, 252, 186, 188, 107, nil, 254, 185, 256, 187, 121, 255, 252, nil, nil, 107, 256, 254, 121, 255, 120, nil, nil, 107, nil, 254, nil, 256, 119, 121, 255, 317, nil, nil, 107, 256, 254, 121, 265, 120, nil, nil, 107, nil, 124, nil, 256, 121, 288, 120, nil, nil, 107, 192, 124, 190, 295, 121, 191, 120, 111, 121, 107, 120, 124, 121, 107, 120, 124, 113, 107, 114, 124, 121, 115, 120, nil, 121, 107, 120, 124, nil, 107, nil, 124, 176, 173, 174, nil, 121, 175, 120, 177, 121, 107, 120, 124, 121, 107, 120, 124, 121, 107, 120, 124, 121, 107, 120, 124, 121, 107, 120, 124, nil, 107, nil, 124, 192, 278, 190, nil, 121, 191, 120, 279, nil, 107, nil, 124 ] racc_action_check = [ 64, 64, 58, 5, 1, 58, 74, 74, 128, 128, 64, 64, 64, 74, 75, 64, 14, 64, 128, 128, 128, 75, 5, 128, 5, 128, 74, 64, 64, 64, 64, 64, 8, 68, 75, 128, 128, 128, 128, 128, 0, 0, 7, 0, 68, 8, 16, 68, 7, 0, 0, 0, 0, 17, 0, 18, 0, 19, 0, 101, 0, 7, 127, 0, 24, 25, 0, 0, 0, 0, 0, 127, 127, 127, 101, 101, 127, 92, 127, 95, 136, 26, 95, 92, 207, 53, 136, 67, 127, 127, 127, 127, 127, 207, 207, 207, 92, 73, 207, 136, 207, 54, 96, 54, 76, 96, 54, 69, 69, 78, 207, 207, 207, 207, 207, 69, 69, 69, 69, 35, 69, 79, 69, 35, 35, 35, 35, 80, 35, 69, 35, 89, 69, 69, 69, 69, 69, 35, 93, 102, 35, 35, 35, 35, 35, 36, 110, 39, 40, 36, 36, 36, 36, 111, 36, 112, 36, 11, 11, 11, 39, 40, 11, 36, 11, 118, 36, 36, 36, 36, 36, 149, 119, 126, 11, 11, 11, 11, 11, 12, 12, 12, 149, 129, 12, 149, 12, 28, 28, 94, 28, 130, 28, 133, 28, 134, 12, 12, 12, 12, 12, 135, 94, 146, 28, 28, 28, 28, 28, 38, 38, 38, 38, 156, 38, 157, 38, 62, 62, 62, 116, 162, 62, 164, 62, 166, 38, 38, 38, 38, 38, 217, 116, 116, 62, 62, 62, 62, 62, 65, 65, 167, 217, 173, 65, 217, 65, 70, 70, 70, 165, 182, 70, 193, 70, 206, 65, 65, 65, 65, 65, 216, 165, 165, 70, 70, 70, 70, 70, 71, 71, 221, 124, 223, 71, 124, 71, 72, 72, 72, 161, 225, 72, 161, 72, 227, 71, 71, 71, 71, 71, 235, 237, 241, 72, 72, 72, 72, 72, 88, 88, 88, 88, 243, 88, 250, 88, 90, 90, 90, 170, 258, 90, 170, 90, 261, 88, 88, 88, 88, 88, 262, 265, 269, 90, 90, 90, 90, 90, 91, 91, 91, 171, 274, 91, 171, 91, 106, 106, 106, 231, 275, 106, 231, 106, 278, 91, 91, 91, 91, 91, 280, 281, 287, 106, 106, 106, 106, 106, 107, 107, 107, 288, 290, 107, 291, 107, 114, 114, 292, 295, 297, 114, 299, 114, 300, 107, 107, 107, 107, 107, 302, 307, 311, 114, 114, 114, 114, 114, 120, 120, 314, 315, 318, 120, 319, 120, 121, 121, 121, 320, 323, 121, nil, 121, nil, 120, 120, 120, 120, 120, nil, nil, nil, 121, 121, 121, 121, 121, 131, 131, 131, nil, nil, 131, nil, 131, 145, 145, 145, nil, nil, 145, nil, 145, nil, 131, 131, 131, 131, 131, nil, nil, nil, 145, 145, 145, 145, 145, 147, 147, 147, nil, nil, 147, nil, 147, 148, 148, nil, nil, nil, 148, nil, 148, nil, 147, 147, 147, 147, 147, nil, nil, nil, 148, 148, 148, 148, 148, 150, 150, 150, 150, nil, 150, nil, 150, 151, 151, 151, 151, nil, 151, nil, 151, nil, 150, 150, 150, 150, 150, nil, nil, nil, 151, 151, 151, 151, 151, 152, 152, 152, 152, nil, 152, nil, 152, 154, 154, 154, 154, nil, 154, nil, 154, nil, 152, 152, 152, 152, 152, 154, nil, nil, 154, 154, 154, 154, 154, 155, 155, 155, 155, nil, 155, nil, 155, 160, 160, 160, nil, nil, 160, 155, 160, nil, 155, 155, 155, 155, 155, nil, nil, nil, 160, 160, 160, 160, 160, 218, 218, nil, nil, nil, 218, nil, 218, 219, 219, 219, nil, nil, 219, nil, 219, nil, 218, 218, 218, 218, 218, nil, nil, nil, 219, 219, 219, 219, 219, 220, 220, 220, nil, nil, 220, nil, 220, 233, 233, 233, nil, nil, 233, nil, 233, nil, 220, 220, 220, 220, 220, nil, nil, nil, 233, 233, 233, 233, 233, 245, 245, 245, nil, nil, 245, nil, 245, 249, 249, 249, nil, nil, 249, nil, 249, nil, 245, 245, 245, 245, 245, nil, nil, nil, 249, 249, 249, 249, 249, 252, 252, 252, nil, nil, 252, nil, 252, 254, 254, 254, nil, nil, 254, nil, 254, nil, 252, 252, 252, 252, 252, nil, nil, nil, 254, 254, 254, 254, 254, 255, 255, 255, nil, nil, 255, nil, 255, 256, 256, 256, nil, nil, 256, nil, 256, nil, 255, 255, 255, 255, 255, nil, nil, nil, 256, 256, 256, 256, 256, 267, 267, 267, nil, nil, 267, nil, 267, 268, 268, 268, nil, nil, 268, nil, 268, nil, 267, 267, 267, 267, 267, nil, nil, nil, 268, 268, 268, 268, 268, 270, 270, 270, 270, nil, 270, nil, 270, 317, 317, 317, nil, nil, 317, 270, 317, nil, 270, 270, 270, 270, 270, nil, nil, nil, 317, 317, 317, 317, 317, 172, 172, 172, nil, nil, 172, nil, 172, 277, 277, 277, 113, 113, 277, nil, 277, 113, 172, 113, 282, 282, 282, nil, nil, 282, 277, 282, 303, 303, 303, nil, nil, 303, nil, 303, nil, 282, 59, 304, 304, 304, nil, nil, 304, 303, 304, 59, 215, 59, nil, nil, 59, nil, 59, nil, 304, 215, 259, 215, nil, nil, 215, 115, 215, 115, 266, 259, 115, 259, 56, 60, 259, 60, 259, 266, 60, 266, 60, 56, 266, 56, 266, 97, 56, 97, nil, 98, 97, 98, 97, nil, 98, nil, 98, 104, 104, 104, nil, 163, 104, 163, 104, 194, 163, 194, 163, 195, 194, 195, 194, 232, 195, 232, 195, 238, 232, 238, 232, 239, 238, 239, 238, nil, 239, nil, 239, 244, 244, 244, nil, 260, 244, 260, 244, nil, 260, nil, 260 ] racc_action_pointer = [ 34, 4, nil, nil, nil, 1, nil, 30, 14, nil, nil, 142, 164, nil, -5, nil, 42, 30, 49, 39, nil, nil, nil, nil, 43, 65, 81, nil, 172, nil, nil, nil, nil, nil, nil, 108, 134, nil, 194, 129, 130, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 85, 86, nil, 842, nil, -15, 810, 834, nil, 202, nil, -5, 224, nil, 81, 27, 100, 232, 254, 262, 93, -5, 3, 93, nil, 84, 93, 99, nil, nil, nil, nil, nil, nil, nil, 284, 104, 292, 314, 65, 108, 171, 62, 85, 846, 850, nil, nil, 56, 125, nil, 858, nil, 322, 344, nil, nil, 134, 147, 143, 775, 352, 826, 202, nil, 153, 166, 374, 382, nil, nil, 255, nil, 143, 56, 3, 177, 186, 404, nil, 187, 177, 195, 68, nil, nil, nil, nil, nil, nil, nil, nil, 412, 199, 434, 442, 165, 464, 472, 494, nil, 502, 524, 195, 197, nil, nil, 532, 263, 209, 862, 211, 232, 213, 211, nil, nil, 293, 315, 764, 229, nil, nil, nil, nil, nil, nil, nil, nil, 233, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 241, 866, 870, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 243, 78, nil, nil, nil, nil, nil, nil, nil, 820, 243, 225, 554, 562, 584, 265, nil, 255, nil, 263, nil, 257, nil, nil, nil, 323, 874, 592, nil, 279, nil, 280, 878, 882, nil, 281, nil, 289, 890, 614, nil, nil, nil, 622, 291, nil, 644, nil, 652, 674, 682, nil, 294, 830, 894, 285, 291, nil, nil, 316, 838, 704, 712, 305, 734, nil, nil, nil, 303, 311, nil, 772, 331, nil, 337, 338, 783, nil, nil, nil, nil, 336, 356, nil, 351, 353, 357, nil, nil, 364, nil, 365, nil, 361, 363, nil, 364, 791, 802, nil, nil, 368, nil, nil, nil, 353, nil, nil, 361, 375, nil, 742, 376, 383, 388, nil, nil, 384, nil, nil, nil ] racc_action_default = [ -179, -179, -1, -2, -3, -4, -5, -6, -7, -8, -23, -179, -179, -33, -34, -35, -36, -37, -179, -39, -40, -41, -42, -43, -179, -52, -54, -55, -179, -67, -70, -71, -72, -73, -74, -179, -179, -110, -179, -112, -113, -114, -131, -132, -133, -134, -135, -136, -137, -138, -139, -140, -141, -179, -179, -79, -179, -115, -179, -179, -179, -24, -179, -44, -179, -179, -75, -179, -179, -179, -58, -179, -173, -179, -6, -7, -8, -39, -179, -84, -89, -90, -91, -93, -94, -95, -96, -97, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, 327, -9, -10, -179, -13, -179, -30, -179, -179, -155, -26, -28, -179, -129, -179, -179, -179, -179, -27, -29, -179, -179, -179, -156, -163, -179, -165, -179, -179, -179, -179, -179, -76, -177, -179, -179, -179, -6, -50, -51, -52, -53, -54, -56, -57, -61, -59, -179, -174, -179, -179, -101, -100, -99, -82, -179, -179, -6, -7, -98, -83, -179, -179, -179, -179, -129, -179, -129, -179, -11, -15, -179, -179, -179, -179, -150, -151, -152, -153, -148, -154, -149, -117, -47, -62, -130, -63, -64, -65, -66, -142, -143, -144, -145, -179, -179, -179, -123, -48, -157, -158, -159, -160, -161, -162, -164, -166, -179, -179, -25, -45, -80, -46, -81, -178, -38, -179, -179, -179, -179, -175, -77, -179, -104, -179, -103, -179, -102, -86, -87, -88, -92, -179, -179, -179, -111, -179, -116, -179, -179, -179, -120, -179, -16, -179, -179, -179, -146, -17, -18, -179, -179, -31, -179, -167, -179, -179, -179, -172, -179, -179, -118, -179, -179, -124, -105, -179, -179, -78, -176, -47, -179, -28, -29, -119, -179, -179, -121, -179, -179, -147, -179, -179, -179, -171, -168, -169, -170, -179, -179, -109, -129, -179, -179, -108, -106, -179, -60, -179, -85, -179, -179, -20, -179, -179, -179, -12, -32, -179, -49, -122, -125, -179, -107, -127, -179, -179, -22, -179, -179, -179, -179, -21, -19, -179, -126, -128, -14 ] racc_goto_table = [ 72, 118, 126, 12, 183, 131, 230, 253, 8, 250, 116, 228, 229, 5, 7, 64, 9, 70, 61, 73, 134, 14, 242, 248, 316, 316, 19, 246, 246, 24, 25, 26, 78, 89, 1, 2, 3, 132, 4, 166, 167, 91, 6, 72, 100, 101, 94, 164, 165, 168, 102, 305, 92, 103, 247, 105, 236, 306, 240, 13, 145, 15, 146, 16, 17, 127, 63, 128, 137, 112, 29, 30, 31, 144, 32, 147, 33, 8, 178, 34, 227, 93, 138, 136, 108, 9, 189, nil, 220, nil, 140, 91, 178, 91, 160, 19, 157, 61, 142, 139, 141, 158, 156, nil, 9, 235, nil, nil, nil, nil, 180, nil, 253, nil, 301, nil, nil, 253, nil, nil, 132, 230, nil, nil, nil, nil, nil, 298, nil, nil, 207, 208, nil, nil, 213, nil, 261, 262, 253, 253, nil, nil, nil, nil, nil, nil, nil, nil, 144, nil, 219, nil, nil, 91, 91, 91, nil, 264, 267, 224, 225, nil, nil, 233, 222, 223, 223, nil, 226, nil, nil, nil, nil, nil, 272, nil, nil, nil, nil, nil, 274, 275, 309, 271, nil, nil, nil, nil, nil, nil, 132, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 289, 290, nil, nil, nil, nil, nil, 294, nil, 208, nil, nil, nil, nil, nil, nil, 189, nil, nil, nil, 189, 268, 213, 178, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 208, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 284, 285, 286, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 213, 296, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 178 ] racc_goto_check = [ 44, 25, 25, 22, 46, 53, 59, 67, 8, 14, 23, 58, 58, 5, 7, 22, 9, 43, 21, 54, 23, 30, 17, 17, 20, 20, 34, 24, 24, 39, 41, 42, 55, 55, 1, 2, 3, 44, 4, 25, 25, 22, 6, 44, 10, 11, 8, 23, 23, 12, 13, 15, 7, 16, 18, 27, 46, 28, 46, 29, 43, 31, 54, 32, 33, 22, 38, 22, 40, 45, 47, 48, 49, 22, 50, 22, 51, 8, 44, 52, 57, 62, 5, 7, 66, 9, 44, nil, 53, nil, 30, 22, 44, 22, 22, 34, 8, 21, 39, 41, 42, 5, 7, nil, 9, 25, nil, nil, nil, nil, 22, nil, 67, nil, 14, nil, nil, 67, nil, nil, 44, 59, nil, nil, nil, nil, nil, 58, nil, nil, 22, 22, nil, nil, 22, nil, 25, 25, 67, 67, nil, nil, nil, nil, nil, nil, nil, nil, 22, nil, 22, nil, nil, 22, 22, 22, nil, 25, 53, 8, 8, nil, nil, 22, 7, 7, 7, nil, 9, nil, nil, nil, nil, nil, 25, nil, nil, nil, nil, nil, 25, 25, 46, 23, nil, nil, nil, nil, nil, nil, 44, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 25, 25, nil, nil, nil, nil, nil, 25, nil, 22, nil, nil, nil, nil, nil, nil, 44, nil, nil, nil, 44, 22, 22, 44, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 22, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 22, 22, 22, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 22, 22, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 44 ] racc_goto_pointer = [ nil, 34, 35, 36, 38, 13, 42, 14, 8, 16, -10, -9, -52, -4, -163, -231, -1, -148, -117, nil, -279, 7, 3, -48, -143, -58, nil, 1, -225, 59, 21, 61, 63, 64, 26, nil, nil, nil, 55, 29, -1, 30, 31, -11, -28, 13, -108, 70, 71, 72, 74, 76, 79, -60, -9, -3, nil, -74, -143, -149, nil, nil, 43, nil, nil, nil, 30, -165, nil ] racc_goto_default = [ nil, nil, nil, nil, nil, 85, nil, 74, 75, 76, nil, nil, nil, nil, nil, nil, nil, nil, nil, 243, 257, 10, 62, 110, 109, nil, 117, nil, 251, nil, 87, nil, nil, nil, 77, 20, 21, 22, 23, nil, nil, 86, nil, nil, 43, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 79, 80, 81, 82, 83, 84, 37, 39, 40, 41, 122, 123, 125 ] racc_reduce_table = [ 0, 0, :racc_error, 1, 38, :_reduce_none, 1, 38, :_reduce_none, 1, 38, :_reduce_none, 1, 39, :_reduce_none, 1, 39, :_reduce_none, 1, 42, :_reduce_6, 1, 42, :_reduce_7, 1, 42, :_reduce_8, 3, 43, :_reduce_9, 1, 47, :_reduce_none, 2, 47, :_reduce_11, 5, 48, :_reduce_12, 1, 48, :_reduce_none, 8, 53, :_reduce_14, 1, 49, :_reduce_15, 2, 49, :_reduce_16, 2, 49, :_reduce_17, 1, 55, :_reduce_none, 5, 55, :_reduce_19, 3, 54, :_reduce_20, 5, 54, :_reduce_21, 4, 54, :_reduce_22, 1, 44, :_reduce_none, 2, 44, :_reduce_24, 4, 58, :_reduce_25, 1, 60, :_reduce_none, 1, 62, :_reduce_none, 3, 45, :_reduce_28, 3, 46, :_reduce_29, 1, 50, :_reduce_none, 1, 51, :_reduce_none, 1, 52, :_reduce_none, 1, 40, :_reduce_none, 1, 40, :_reduce_none, 1, 40, :_reduce_none, 1, 40, :_reduce_none, 1, 40, :_reduce_none, 4, 66, :_reduce_38, 1, 67, :_reduce_39, 1, 67, :_reduce_none, 1, 67, :_reduce_none, 1, 67, :_reduce_none, 1, 71, :_reduce_none, 2, 71, :_reduce_44, 4, 75, :_reduce_45, 4, 75, :_reduce_46, 4, 72, :_reduce_47, 4, 73, :_reduce_48, 7, 74, :_reduce_49, 3, 68, :_reduce_50, 1, 76, :_reduce_none, 1, 76, :_reduce_none, 1, 76, :_reduce_none, 1, 76, :_reduce_none, 1, 76, :_reduce_none, 1, 77, :_reduce_none, 1, 77, :_reduce_none, 2, 69, :_reduce_58, 3, 69, :_reduce_59, 5, 80, :_reduce_60, 2, 80, :_reduce_61, 4, 70, :_reduce_62, 2, 82, :_reduce_63, 2, 82, :_reduce_64, 2, 82, :_reduce_65, 2, 82, :_reduce_66, 1, 41, :_reduce_none, 1, 41, :_reduce_none, 1, 41, :_reduce_none, 1, 41, :_reduce_none, 1, 41, :_reduce_none, 1, 41, :_reduce_none, 1, 41, :_reduce_none, 1, 41, :_reduce_none, 2, 84, :_reduce_75, 3, 89, :_reduce_76, 4, 89, :_reduce_77, 5, 89, :_reduce_78, 2, 88, :_reduce_79, 4, 87, :_reduce_80, 4, 87, :_reduce_81, 3, 85, :_reduce_82, 3, 86, :_reduce_83, 1, 92, :_reduce_84, 5, 92, :_reduce_85, 3, 92, :_reduce_86, 3, 92, :_reduce_87, 3, 92, :_reduce_88, 1, 92, :_reduce_89, 1, 92, :_reduce_90, 1, 94, :_reduce_91, 3, 94, :_reduce_92, 1, 96, :_reduce_none, 1, 96, :_reduce_none, 1, 97, :_reduce_none, 1, 97, :_reduce_none, 1, 97, :_reduce_none, 2, 93, :_reduce_98, 2, 95, :_reduce_99, 2, 95, :_reduce_100, 2, 95, :_reduce_101, 3, 98, :_reduce_102, 3, 98, :_reduce_103, 3, 98, :_reduce_104, 5, 79, :_reduce_105, 6, 79, :_reduce_106, 7, 79, :_reduce_107, 6, 79, :_reduce_108, 6, 79, :_reduce_109, 1, 78, :_reduce_none, 4, 78, :_reduce_111, 1, 99, :_reduce_112, 1, 99, :_reduce_113, 1, 99, :_reduce_114, 2, 100, :_reduce_115, 4, 101, :_reduce_116, 4, 101, :_reduce_117, 5, 101, :_reduce_118, 5, 101, :_reduce_119, 4, 102, :_reduce_120, 5, 102, :_reduce_121, 7, 102, :_reduce_122, 4, 102, :_reduce_123, 5, 102, :_reduce_124, 7, 102, :_reduce_125, 9, 102, :_reduce_126, 7, 102, :_reduce_127, 9, 102, :_reduce_128, 0, 83, :_reduce_129, 1, 83, :_reduce_none, 1, 59, :_reduce_131, 1, 59, :_reduce_none, 1, 81, :_reduce_none, 1, 81, :_reduce_none, 1, 81, :_reduce_none, 1, 81, :_reduce_none, 1, 81, :_reduce_none, 1, 81, :_reduce_none, 1, 81, :_reduce_none, 1, 81, :_reduce_none, 1, 81, :_reduce_none, 2, 61, :_reduce_142, 2, 61, :_reduce_143, 2, 61, :_reduce_144, 2, 61, :_reduce_145, 1, 56, :_reduce_none, 2, 56, :_reduce_147, 2, 103, :_reduce_148, 2, 103, :_reduce_149, 2, 103, :_reduce_150, 2, 103, :_reduce_151, 2, 103, :_reduce_152, 2, 103, :_reduce_153, 2, 64, :_reduce_none, 1, 64, :_reduce_none, 1, 104, :_reduce_none, 2, 104, :_reduce_157, 2, 104, :_reduce_158, 2, 104, :_reduce_159, 2, 104, :_reduce_160, 2, 104, :_reduce_161, 2, 104, :_reduce_162, 1, 105, :_reduce_none, 2, 105, :_reduce_164, 1, 63, :_reduce_none, 2, 63, :_reduce_166, 1, 57, :_reduce_none, 2, 57, :_reduce_168, 2, 57, :_reduce_169, 2, 57, :_reduce_170, 2, 65, :_reduce_none, 1, 65, :_reduce_none, 1, 91, :_reduce_173, 2, 91, :_reduce_174, 3, 91, :_reduce_175, 4, 91, :_reduce_176, 1, 90, :_reduce_177, 2, 90, :_reduce_178 ] racc_reduce_n = 179 racc_shift_n = 327 racc_token_table = { false => 0, :error => 1, :T => 2, :Z => 3, :E => 4, :X => 5, :U => 6, :UNKNOWN => 7, :OPEN => 8, :LONGYEAR => 9, :UNMATCHED => 10, :DOTS => 11, :UA => 12, :PUA => 13, ":" => 14, "2" => 15, "4" => 16, "0" => 17, "-" => 18, "+" => 19, "1" => 20, "/" => 21, "3" => 22, "^" => 23, "[" => 24, "]" => 25, "{" => 26, "}" => 27, "," => 28, "(" => 29, ")" => 30, "-(" => 31, "5" => 32, "6" => 33, "7" => 34, "8" => 35, "9" => 36 } racc_nt_base = 37 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", "T", "Z", "E", "X", "U", "UNKNOWN", "OPEN", "LONGYEAR", "UNMATCHED", "DOTS", "UA", "PUA", "\":\"", "\"2\"", "\"4\"", "\"0\"", "\"-\"", "\"+\"", "\"1\"", "\"/\"", "\"3\"", "\"^\"", "\"[\"", "\"]\"", "\"{\"", "\"}\"", "\",\"", "\"(\"", "\")\"", "\"-(\"", "\"5\"", "\"6\"", "\"7\"", "\"8\"", "\"9\"", "$start", "edtf", "level_0_expression", "level_1_expression", "level_2_expression", "date", "date_time", "year", "year_month", "year_month_day", "time", "base_time", "zone_offset", "hour", "minute", "second", "midnight", "zone_offset_hour", "positive_zone_offset", "d01_13", "d01_59", "positive_year", "digit", "month", "d01_12", "day", "d01_31", "d00_23", "d00_59", "unknown", "unspecified", "level_1_interval", "long_year_simple", "season", "unspecified_year", "unspecified_month", "unspecified_day", "unspecified_day_and_month", "positive_unspecified_year", "level_1_start", "level_1_end", "partial_uncertain_or_approximate", "partial_unspecified", "long_year", "positive_digit", "season_number", "ua", "season_qualified", "choice_list", "inclusive_list", "masked_precision", "date_and_calendar", "long_year_scientific", "integer", "int1_4", "list", "earlier", "list_elements", "later", "list_element", "atomic", "consecutives", "pua_base", "pua_year", "pua_year_month", "pua_year_month_day", "d01_23", "d01_29", "d01_30" ] Racc_debug_parser = false ##### State transition tables end ##### # reduce 0 omitted # reduce 1 omitted # reduce 2 omitted # reduce 3 omitted # reduce 4 omitted # reduce 5 omitted module_eval(<<'.,.,', 'parser.y', 23) def _reduce_6(val, _values, result) result = Date.new(val[0]).year_precision! result end .,., module_eval(<<'.,.,', 'parser.y', 24) def _reduce_7(val, _values, result) result = Date.new(*val.flatten).month_precision! result end .,., module_eval(<<'.,.,', 'parser.y', 25) def _reduce_8(val, _values, result) result = Date.new(*val.flatten).day_precision! result end .,., module_eval(<<'.,.,', 'parser.y', 30) def _reduce_9(val, _values, result) result = DateTime.new(val[0].year, val[0].month, val[0].day, *val[2]) result.skip_timezone = (val[2].length == 3) result end .,., # reduce 10 omitted module_eval(<<'.,.,', 'parser.y', 35) def _reduce_11(val, _values, result) result = val.flatten result end .,., module_eval(<<'.,.,', 'parser.y', 37) def _reduce_12(val, _values, result) result = val.values_at(0, 2, 4) result end .,., # reduce 13 omitted module_eval(<<'.,.,', 'parser.y', 40) def _reduce_14(val, _values, result) result = [24, 0, 0] result end .,., module_eval(<<'.,.,', 'parser.y', 42) def _reduce_15(val, _values, result) result = 0 result end .,., module_eval(<<'.,.,', 'parser.y', 43) def _reduce_16(val, _values, result) result = -1 * val[1] result end .,., module_eval(<<'.,.,', 'parser.y', 44) def _reduce_17(val, _values, result) result = val[1] result end .,., # reduce 18 omitted module_eval(<<'.,.,', 'parser.y', 48) def _reduce_19(val, _values, result) result = 0 result end .,., module_eval(<<'.,.,', 'parser.y', 52) def _reduce_20(val, _values, result) result = Rational(val[0] * 60 + val[2], 1440) result end .,., module_eval(<<'.,.,', 'parser.y', 53) def _reduce_21(val, _values, result) result = Rational(840, 1440) result end .,., module_eval(<<'.,.,', 'parser.y', 54) def _reduce_22(val, _values, result) result = Rational(val[3], 1440) result end .,., # reduce 23 omitted module_eval(<<'.,.,', 'parser.y', 58) def _reduce_24(val, _values, result) result = -val[1] result end .,., module_eval(<<'.,.,', 'parser.y', 61) def _reduce_25(val, _values, result) result = val.zip([1000,100,10,1]).reduce(0) { |s,(a,b)| s += a * b } result end .,., # reduce 26 omitted # reduce 27 omitted module_eval(<<'.,.,', 'parser.y', 67) def _reduce_28(val, _values, result) result = [val[0], val[2]] result end .,., module_eval(<<'.,.,', 'parser.y', 74) def _reduce_29(val, _values, result) result = val[0] << val[2] if result[2] > 31 || (result[2] > 30 && [2,4,6,9,11].include?(result[1])) || (result[2] > 29 && result[1] == 2) raise ArgumentError, "invalid date (invalid days #{result[2]} for month #{result[1]})" end result end .,., # reduce 30 omitted # reduce 31 omitted # reduce 32 omitted # reduce 33 omitted # reduce 34 omitted # reduce 35 omitted # reduce 36 omitted # reduce 37 omitted module_eval(<<'.,.,', 'parser.y', 93) def _reduce_38(val, _values, result) result = EDTF::Unknown.new result end .,., module_eval(<<'.,.,', 'parser.y', 99) def _reduce_39(val, _values, result) result = Date.new(val[0][0]).year_precision! result.unspecified.year[2,2] = val[0][1] result end .,., # reduce 40 omitted # reduce 41 omitted # reduce 42 omitted # reduce 43 omitted module_eval(<<'.,.,', 'parser.y', 110) def _reduce_44(val, _values, result) result = val[1] result[0] = -result[0] result end .,., module_eval(<<'.,.,', 'parser.y', 117) def _reduce_45(val, _values, result) result = [val[0,3].zip([1000,100,10]).reduce(0) { |s,(a,b)| s += a * b }, [false,true]] result end .,., module_eval(<<'.,.,', 'parser.y', 121) def _reduce_46(val, _values, result) result = [val[0,2].zip([1000,100]).reduce(0) { |s,(a,b)| s += a * b }, [true, true]] result end .,., module_eval(<<'.,.,', 'parser.y', 125) def _reduce_47(val, _values, result) result = Date.new(val[0]).unspecified!(:month) result.precision = :month result end .,., module_eval(<<'.,.,', 'parser.y', 130) def _reduce_48(val, _values, result) result = Date.new(*val[0]).unspecified!(:day) result end .,., module_eval(<<'.,.,', 'parser.y', 134) def _reduce_49(val, _values, result) result = Date.new(val[0]).unspecified!([:day,:month]) result end .,., module_eval(<<'.,.,', 'parser.y', 139) def _reduce_50(val, _values, result) result = Interval.new(val[0], val[2]) result end .,., # reduce 51 omitted # reduce 52 omitted # reduce 53 omitted # reduce 54 omitted # reduce 55 omitted # reduce 56 omitted # reduce 57 omitted module_eval(<<'.,.,', 'parser.y', 150) def _reduce_58(val, _values, result) result = Date.new(val[1]) result.precision = :year result end .,., module_eval(<<'.,.,', 'parser.y', 155) def _reduce_59(val, _values, result) result = Date.new(-1 * val[2]) result.precision = :year result end .,., module_eval(<<'.,.,', 'parser.y', 162) def _reduce_60(val, _values, result) result = val.zip([10000,1000,100,10,1]).reduce(0) { |s,(a,b)| s += a * b } result end .,., module_eval(<<'.,.,', 'parser.y', 164) def _reduce_61(val, _values, result) result = 10 * val[0] + val[1] result end .,., module_eval(<<'.,.,', 'parser.y', 169) def _reduce_62(val, _values, result) result = Season.new(val[0], val[2]) val[3].each { |ua| result.send(ua) } result end .,., module_eval(<<'.,.,', 'parser.y', 173) def _reduce_63(val, _values, result) result = 21 result end .,., module_eval(<<'.,.,', 'parser.y', 174) def _reduce_64(val, _values, result) result = 22 result end .,., module_eval(<<'.,.,', 'parser.y', 175) def _reduce_65(val, _values, result) result = 23 result end .,., module_eval(<<'.,.,', 'parser.y', 176) def _reduce_66(val, _values, result) result = 24 result end .,., # reduce 67 omitted # reduce 68 omitted # reduce 69 omitted # reduce 70 omitted # reduce 71 omitted # reduce 72 omitted # reduce 73 omitted # reduce 74 omitted module_eval(<<'.,.,', 'parser.y', 194) def _reduce_75(val, _values, result) result = val[0]; result.qualifier = val[1] result end .,., module_eval(<<'.,.,', 'parser.y', 200) def _reduce_76(val, _values, result) result = Date.new(val[0].year * 10 ** val[2]).year_precision! result end .,., module_eval(<<'.,.,', 'parser.y', 204) def _reduce_77(val, _values, result) result = Date.new(val[1] * 10 ** val[3]).year_precision! result end .,., module_eval(<<'.,.,', 'parser.y', 208) def _reduce_78(val, _values, result) result = Date.new(-1 * val[2] * 10 ** val[4]).year_precision! result end .,., module_eval(<<'.,.,', 'parser.y', 213) def _reduce_79(val, _values, result) result = val[0]; result.calendar = val[1] result end .,., module_eval(<<'.,.,', 'parser.y', 219) def _reduce_80(val, _values, result) d = val[0,3].zip([1000,100,10]).reduce(0) { |s,(a,b)| s += a * b } result = EDTF::Decade.new(d) result end .,., module_eval(<<'.,.,', 'parser.y', 224) def _reduce_81(val, _values, result) d = val[0,2].zip([1000,100]).reduce(0) { |s,(a,b)| s += a * b } result = EDTF::Century.new(d) result end .,., module_eval(<<'.,.,', 'parser.y', 230) def _reduce_82(val, _values, result) result = val[1].choice! result end .,., module_eval(<<'.,.,', 'parser.y', 232) def _reduce_83(val, _values, result) result = val[1] result end .,., module_eval(<<'.,.,', 'parser.y', 234) def _reduce_84(val, _values, result) result = EDTF::Set.new(val[0]).earlier! result end .,., module_eval(<<'.,.,', 'parser.y', 235) def _reduce_85(val, _values, result) result = EDTF::Set.new([val[0]] + val[2] + [val[4]]).earlier!.later! result end .,., module_eval(<<'.,.,', 'parser.y', 236) def _reduce_86(val, _values, result) result = EDTF::Set.new([val[0]] + val[2]).earlier! result end .,., module_eval(<<'.,.,', 'parser.y', 237) def _reduce_87(val, _values, result) result = EDTF::Set.new([val[0]] + [val[2]]).earlier!.later! result end .,., module_eval(<<'.,.,', 'parser.y', 238) def _reduce_88(val, _values, result) result = EDTF::Set.new(val[0] + [val[2]]).later! result end .,., module_eval(<<'.,.,', 'parser.y', 239) def _reduce_89(val, _values, result) result = EDTF::Set.new(*val[0]) result end .,., module_eval(<<'.,.,', 'parser.y', 240) def _reduce_90(val, _values, result) result = EDTF::Set.new(val[0]).later! result end .,., module_eval(<<'.,.,', 'parser.y', 243) def _reduce_91(val, _values, result) result = [val[0]].flatten result end .,., module_eval(<<'.,.,', 'parser.y', 244) def _reduce_92(val, _values, result) result = val[0] + [val[2]].flatten result end .,., # reduce 93 omitted # reduce 94 omitted # reduce 95 omitted # reduce 96 omitted # reduce 97 omitted module_eval(<<'.,.,', 'parser.y', 256) def _reduce_98(val, _values, result) result = val[1] result end .,., module_eval(<<'.,.,', 'parser.y', 258) def _reduce_99(val, _values, result) result = Date.new(*val[0]).day_precision! result end .,., module_eval(<<'.,.,', 'parser.y', 259) def _reduce_100(val, _values, result) result = Date.new(*val[0]).month_precision! result end .,., module_eval(<<'.,.,', 'parser.y', 260) def _reduce_101(val, _values, result) result = Date.new(val[0]).year_precision! result end .,., module_eval(<<'.,.,', 'parser.y', 263) def _reduce_102(val, _values, result) result = (Date.new(val[0]).day_precision! .. Date.new(val[2]).day_precision!) result end .,., module_eval(<<'.,.,', 'parser.y', 264) def _reduce_103(val, _values, result) result = (Date.new(val[0]).month_precision! .. Date.new(val[2]).month_precision!) result end .,., module_eval(<<'.,.,', 'parser.y', 265) def _reduce_104(val, _values, result) result = (Date.new(val[0]).year_precision! .. Date.new(val[2]).year_precision!) result end .,., module_eval(<<'.,.,', 'parser.y', 271) def _reduce_105(val, _values, result) result = Date.new(val[0][0], val[2], val[4]) result.unspecified.year[2,2] = val[0][1] result end .,., module_eval(<<'.,.,', 'parser.y', 276) def _reduce_106(val, _values, result) result = Date.new(val[0][0], 1, val[5]) result.unspecified.year[2,2] = val[0][1] result.unspecified!(:month) result end .,., module_eval(<<'.,.,', 'parser.y', 282) def _reduce_107(val, _values, result) result = Date.new(val[0][0], 1, 1) result.unspecified.year[2,2] = val[0][1] result.unspecified!([:month, :day]) result end .,., module_eval(<<'.,.,', 'parser.y', 288) def _reduce_108(val, _values, result) result = Date.new(val[0][0], val[2], 1) result.unspecified.year[2,2] = val[0][1] result.unspecified!(:day) result end .,., module_eval(<<'.,.,', 'parser.y', 294) def _reduce_109(val, _values, result) result = Date.new(val[0], 1, val[5]) result.unspecified!(:month) result end .,., # reduce 110 omitted module_eval(<<'.,.,', 'parser.y', 301) def _reduce_111(val, _values, result) result = uoa(val[1], val[3]) result end .,., module_eval(<<'.,.,', 'parser.y', 304) def _reduce_112(val, _values, result) result = val[0].year_precision! result end .,., module_eval(<<'.,.,', 'parser.y', 305) def _reduce_113(val, _values, result) result = val[0][0].month_precision! result end .,., module_eval(<<'.,.,', 'parser.y', 306) def _reduce_114(val, _values, result) result = val[0].day_precision! result end .,., module_eval(<<'.,.,', 'parser.y', 308) def _reduce_115(val, _values, result) result = uoa(Date.new(val[0]), val[1], :year) result end .,., module_eval(<<'.,.,', 'parser.y', 312) def _reduce_116(val, _values, result) result = [uoa(val[0].change(:month => val[2]), val[3], [:month, :year])] result end .,., module_eval(<<'.,.,', 'parser.y', 315) def _reduce_117(val, _values, result) result = [uoa(Date.new(val[0], val[2]), val[3], [:year, :month])] result end .,., module_eval(<<'.,.,', 'parser.y', 318) def _reduce_118(val, _values, result) result = [uoa(Date.new(val[0], val[2]), val[4], [:month]), true] result end .,., module_eval(<<'.,.,', 'parser.y', 321) def _reduce_119(val, _values, result) result = [uoa(val[0].change(:month => val[2]), val[4], [:month]), true] result end .,., module_eval(<<'.,.,', 'parser.y', 327) def _reduce_120(val, _values, result) result = uoa(val[0][0].change(:day => val[2]), val[3], val[0][1] ? [:day] : nil) result end .,., module_eval(<<'.,.,', 'parser.y', 330) def _reduce_121(val, _values, result) result = uoa(val[0][0].change(:day => val[2]), val[4], [:day]) result end .,., module_eval(<<'.,.,', 'parser.y', 333) def _reduce_122(val, _values, result) result = uoa(uoa(Date.new(val[0], val[2], val[5]), val[4], :month), val[6], :day) result end .,., module_eval(<<'.,.,', 'parser.y', 336) def _reduce_123(val, _values, result) result = uoa(Date.new(val[0][0], val[0][1], val[2]), val[3]) result end .,., module_eval(<<'.,.,', 'parser.y', 339) def _reduce_124(val, _values, result) result = uoa(Date.new(val[0][0], val[0][1], val[2]), val[4], [:day]) result end .,., module_eval(<<'.,.,', 'parser.y', 342) def _reduce_125(val, _values, result) result = uoa(Date.new(val[0], val[2], val[4]), val[6], [:month, :day]) result end .,., module_eval(<<'.,.,', 'parser.y', 345) def _reduce_126(val, _values, result) result = Date.new(val[0], val[2], val[4]) result = uoa(result, val[6], [:day]) result = uoa(result, val[8], [:month, :day]) result end .,., module_eval(<<'.,.,', 'parser.y', 350) def _reduce_127(val, _values, result) result = val[0].change(:month => val[2], :day => val[4]) result = uoa(result, val[6], [:month, :day]) result end .,., module_eval(<<'.,.,', 'parser.y', 354) def _reduce_128(val, _values, result) result = val[0].change(:month => val[2], :day => val[4]) result = uoa(result, val[6], [:day]) result = uoa(result, val[8], [:month, :day]) result end .,., module_eval(<<'.,.,', 'parser.y', 365) def _reduce_129(val, _values, result) result = [] result end .,., # reduce 130 omitted module_eval(<<'.,.,', 'parser.y', 369) def _reduce_131(val, _values, result) result = 0 result end .,., # reduce 132 omitted # reduce 133 omitted # reduce 134 omitted # reduce 135 omitted # reduce 136 omitted # reduce 137 omitted # reduce 138 omitted # reduce 139 omitted # reduce 140 omitted # reduce 141 omitted module_eval(<<'.,.,', 'parser.y', 375) def _reduce_142(val, _values, result) result = val[1] result end .,., module_eval(<<'.,.,', 'parser.y', 376) def _reduce_143(val, _values, result) result = 10 result end .,., module_eval(<<'.,.,', 'parser.y', 377) def _reduce_144(val, _values, result) result = 11 result end .,., module_eval(<<'.,.,', 'parser.y', 378) def _reduce_145(val, _values, result) result = 12 result end .,., # reduce 146 omitted module_eval(<<'.,.,', 'parser.y', 382) def _reduce_147(val, _values, result) result = 13 result end .,., module_eval(<<'.,.,', 'parser.y', 385) def _reduce_148(val, _values, result) result = val[1] result end .,., module_eval(<<'.,.,', 'parser.y', 386) def _reduce_149(val, _values, result) result = 10 + val[1] result end .,., module_eval(<<'.,.,', 'parser.y', 387) def _reduce_150(val, _values, result) result = 20 result end .,., module_eval(<<'.,.,', 'parser.y', 388) def _reduce_151(val, _values, result) result = 21 result end .,., module_eval(<<'.,.,', 'parser.y', 389) def _reduce_152(val, _values, result) result = 22 result end .,., module_eval(<<'.,.,', 'parser.y', 390) def _reduce_153(val, _values, result) result = 23 result end .,., # reduce 154 omitted # reduce 155 omitted # reduce 156 omitted module_eval(<<'.,.,', 'parser.y', 398) def _reduce_157(val, _values, result) result = 24 result end .,., module_eval(<<'.,.,', 'parser.y', 399) def _reduce_158(val, _values, result) result = 25 result end .,., module_eval(<<'.,.,', 'parser.y', 400) def _reduce_159(val, _values, result) result = 26 result end .,., module_eval(<<'.,.,', 'parser.y', 401) def _reduce_160(val, _values, result) result = 27 result end .,., module_eval(<<'.,.,', 'parser.y', 402) def _reduce_161(val, _values, result) result = 28 result end .,., module_eval(<<'.,.,', 'parser.y', 403) def _reduce_162(val, _values, result) result = 29 result end .,., # reduce 163 omitted module_eval(<<'.,.,', 'parser.y', 407) def _reduce_164(val, _values, result) result = 30 result end .,., # reduce 165 omitted module_eval(<<'.,.,', 'parser.y', 411) def _reduce_166(val, _values, result) result = 31 result end .,., # reduce 167 omitted module_eval(<<'.,.,', 'parser.y', 415) def _reduce_168(val, _values, result) result = 30 + val[1] result end .,., module_eval(<<'.,.,', 'parser.y', 416) def _reduce_169(val, _values, result) result = 40 + val[1] result end .,., module_eval(<<'.,.,', 'parser.y', 417) def _reduce_170(val, _values, result) result = 50 + val[1] result end .,., # reduce 171 omitted # reduce 172 omitted module_eval(<<'.,.,', 'parser.y', 424) def _reduce_173(val, _values, result) result = val[0] result end .,., module_eval(<<'.,.,', 'parser.y', 425) def _reduce_174(val, _values, result) result = 10 * val[0] + val[1] result end .,., module_eval(<<'.,.,', 'parser.y', 428) def _reduce_175(val, _values, result) result = val.zip([100,10,1]).reduce(0) { |s,(a,b)| s += a * b } result end .,., module_eval(<<'.,.,', 'parser.y', 432) def _reduce_176(val, _values, result) result = val.zip([1000,100,10,1]).reduce(0) { |s,(a,b)| s += a * b } result end .,., module_eval(<<'.,.,', 'parser.y', 436) def _reduce_177(val, _values, result) result = val[0] result end .,., module_eval(<<'.,.,', 'parser.y', 437) def _reduce_178(val, _values, result) result = 10 * val[0] + val[1] result end .,., def _reduce_none(val, _values, result) val[0] end end # class Parser end # module EDTF