myson 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore ADDED
@@ -0,0 +1,17 @@
1
+ *.gem
2
+ *.rbc
3
+ .bundle
4
+ .config
5
+ .yardoc
6
+ Gemfile.lock
7
+ InstalledFiles
8
+ _yardoc
9
+ coverage
10
+ doc/
11
+ lib/bundler/man
12
+ pkg
13
+ rdoc
14
+ spec/reports
15
+ test/tmp
16
+ test/version_tmp
17
+ tmp
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --color
2
+ --format progress
data/.travis.yml ADDED
@@ -0,0 +1,5 @@
1
+ language: ruby
2
+ rvm:
3
+ - 1.8.7
4
+ - 1.9.2
5
+ script: bundle exec rspec spec
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in myson.gemspec
4
+ gemspec
data/LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2012 Jacob Dam
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,34 @@
1
+ # Myson
2
+
3
+ A JSON parser using [racc](http://i.loveruby.net/en/projects/racc/)
4
+
5
+ ## Installation
6
+
7
+ Add this line to your application's Gemfile:
8
+
9
+ gem 'myson'
10
+
11
+ And then execute:
12
+
13
+ $ bundle
14
+
15
+ Or install it yourself as:
16
+
17
+ $ gem install myson
18
+
19
+ ## Usage
20
+
21
+ ruby
22
+ ```
23
+ require 'myson'
24
+
25
+ Myson.parse(json_string)
26
+ ```
27
+
28
+ ## Contributing
29
+
30
+ 1. Fork it
31
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
32
+ 3. Commit your changes (`git commit -am 'Added some feature'`)
33
+ 4. Push to the branch (`git push origin my-new-feature`)
34
+ 5. Create new Pull Request
data/Rakefile ADDED
@@ -0,0 +1,14 @@
1
+ #!/usr/bin/env rake
2
+ require "bundler/gem_tasks"
3
+
4
+ namespace :build do
5
+ task :parser do
6
+ system "racc lib/myson.y -o lib/myson/generated_parser.rb -t"
7
+ end
8
+ end
9
+
10
+ task :spec do
11
+ system "rspec"
12
+ end
13
+
14
+ task :default => ["build:parser", "spec"]
data/TODO.md ADDED
@@ -0,0 +1,5 @@
1
+ # TODO
2
+
3
+ - utf-8 support in ruby 1.8.7
4
+ - JSON serializer
5
+ - better lexer
data/lib/myson.rb ADDED
@@ -0,0 +1,9 @@
1
+ require "myson/version"
2
+ require "myson/parser"
3
+
4
+ module Myson
5
+ def self.parse(json)
6
+ parser = Parser.new(json)
7
+ parser.parse()
8
+ end
9
+ end
data/lib/myson.y ADDED
@@ -0,0 +1,106 @@
1
+ class Myson::GeneratedParser
2
+ rule
3
+ start: document;
4
+
5
+ empty: ;
6
+ os: opt_token_separator;
7
+ opt_token_separator: token_separator | empty;
8
+ token_separator: token_separator_chars;
9
+ token_separator_chars: token_separator_char
10
+ | token_separator_char token_separator_chars
11
+ ;
12
+ token_separator_char: whitespace_char | newline_char;
13
+ whitespace_char: ' ' | "\t";
14
+ newline_char: "\n" | "\r";
15
+
16
+ document: object | array | primitive;
17
+ literal: object | array | primitive;
18
+ primitive: null | boolean | number | string;
19
+
20
+ # constant
21
+ null: 'n' 'u' 'l' 'l' { result = nil };
22
+ boolean: 't' 'r' 'u' 'e' { result = true }
23
+ | 'f' 'a' 'l' 's' 'e' { result = false }
24
+ ;
25
+
26
+ # number
27
+ number: integer | float;
28
+ integer: positive_integer
29
+ | '-' positive_integer { result = -val[1] }
30
+ ;
31
+ positive_integer: integer_digits { result = val[0].to_i };
32
+ integer_digits: non_zero_digit digits_opt { result = val.join('') }
33
+ | '0'
34
+ ;
35
+ non_zero_digit: '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9';
36
+ digit: non_zero_digit | '0';
37
+ digits_opt: digits | empty;
38
+ digits: digit
39
+ | digit digits { result = val[0] + val[1] }
40
+ ;
41
+ float: positive_float
42
+ | '-' positive_float { result = -val[1] }
43
+ ;
44
+ positive_float: float_digits { result = val[0].to_f }
45
+ float_digits: simple_float_digits | exp_float_digits;
46
+ simple_float_digits: integer_digits '.' digits { result = val.join('') };
47
+ exp_float_digits: integer_digits float_exp_digits { result = val.join('') }
48
+ | simple_float_digits float_exp_digits { result = val.join('') }
49
+ ;
50
+ float_exp_digits: 'e' integer_digits { result = val.join('') }
51
+ | 'e' '-' integer_digits { result = val.join('') }
52
+ | 'e' '+' integer_digits { result = val.join('') }
53
+ ;
54
+
55
+ # string
56
+ string: '"' string_items_opt '"' { result = val[1] };
57
+ string_items_opt: string_items
58
+ | empty { result = '' };
59
+ string_items: string_item
60
+ | string_item string_items { result = val.join('') }
61
+ ;
62
+ string_item: escaped_char | escaped_unicode_char | slash_and_char | unescaped_char;
63
+ escaped_char: '\\' 'n' { result = "\n" }
64
+ | '\\' 'r' { result = "\r" }
65
+ | '\\' 't' { result = "\t" }
66
+ | '\\' 'b' { result = "\b" }
67
+ | '\\' 'f' { result = "\f" }
68
+ ;
69
+ escaped_unicode_char: '\\' 'u' hexa_digit hexa_digit hexa_digit hexa_digit { result = make_unicode_char(val[2..-1].join('').hex) };
70
+ hexa_digit: digit | 'a' | 'b' | 'c' | 'd' | 'e' | 'f' | 'A' | 'B' | 'C' | 'D' | 'E' | 'F';
71
+ slash_and_char: "\\" ignore_slash_char { result = val[1] };
72
+
73
+ # any_char: "\t" | "\n" | "\r" | " " | "\"" | "+" | "," | "-" | "." | "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" | "A" | "B" | "C" | "D" | "E" | "F" | "[" | "\\" | "]" | "a" | "b" | "c" | "d" | "e" | "f" | "l" | "n" | "r" | "s" | "t" | "u";
74
+ # ignore_slash_char = [^bfnrtu]
75
+ ignore_slash_char: known_ignore_slash_char | OTHER;
76
+ known_ignore_slash_char: "\t" | "\n" | "\r" | " " | "\"" | "+" | "," | "-" | "." | "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" | "A" | "B" | "C" | "D" | "E" | "F" | "[" | "\\" | "]" | "a" | "c" | "d" | "e" | "l" | "s";
77
+
78
+ # unescaped_char = [^\"\\]
79
+ unescaped_char: known_unescaped_char | OTHER;
80
+ known_unescaped_char: "\t" | "\n" | "\r" | " " | "+" | "," | "-" | "." | "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" | "A" | "B" | "C" | "D" | "E" | "F" | "[" | "]" | "a" | "b" | "c" | "d" | "e" | "f" | "l" | "n" | "r" | "s" | "t" | "u";
81
+
82
+ # array
83
+ array: '[' os ']' { result = [] }
84
+ | '[' array_items ']' { result = val[1] }
85
+ ;
86
+ array_items: array_item { result = [val[0]] }
87
+ | array_item comma_array_items { result = [val[0]] + val[1] }
88
+ ;
89
+ array_item: os literal os { result = val[1] }
90
+ comma_array_items: comma_array_item { result = [val[0]] }
91
+ | comma_array_item comma_array_items { result = [val[0]] + val[1] }
92
+ ;
93
+ comma_array_item: ',' array_item { result = val[1] };
94
+
95
+ # object
96
+ object: '{' os '}' { result = {} }
97
+ | '{' object_items '}' { result = Hash[val[1]] };
98
+ object_items: object_item { result = [val[0]] }
99
+ | object_item comma_object_items { result = [val[0]] + val[1] }
100
+ ;
101
+ object_item: os string os ':' os literal os { result = [val[1], val[5]] };
102
+ comma_object_items: comma_object_item { result = [val[0]] }
103
+ | comma_object_item comma_object_items { result = [val[0]] + val[1] }
104
+ ;
105
+ comma_object_item: ',' object_item { result = val[1] };
106
+ end
@@ -0,0 +1,1149 @@
1
+ #
2
+ # DO NOT MODIFY!!!!
3
+ # This file is automatically generated by Racc 1.4.8
4
+ # from Racc grammer file "".
5
+ #
6
+
7
+ require 'racc/parser.rb'
8
+ module Myson
9
+ class GeneratedParser < Racc::Parser
10
+ ##### State transition tables begin ###
11
+
12
+ racc_action_table = [
13
+ 66, 63, 64, 65, 96, 100, 95, 99, 97, 93,
14
+ 94, 89, 98, 69, 71, 72, 73, 74, 75, 76,
15
+ 77, 78, 79, 80, 70, 67, 188, 60, 90, 91,
16
+ 92, 81, 82, 83, 84, 85, 86, 62, 68, 87,
17
+ 88, 141, 138, 139, 140, 129, 134, 170, 131, 130,
18
+ 169, 133, 166, 171, 145, 147, 148, 149, 150, 151,
19
+ 152, 153, 154, 155, 156, 146, 143, 142, 164, 132,
20
+ 167, 168, 157, 158, 159, 160, 161, 162, 137, 144,
21
+ 163, 165, 66, 63, 64, 65, 96, 100, 95, 99,
22
+ 97, 93, 94, 89, 98, 69, 71, 72, 73, 74,
23
+ 75, 76, 77, 78, 79, 80, 70, 67, 33, 60,
24
+ 90, 91, 92, 81, 82, 83, 84, 85, 86, 62,
25
+ 68, 87, 88, 10, 182, 189, 11, 190, 44, 12,
26
+ 187, 184, 16, 19, 20, 21, 22, 23, 24, 25,
27
+ 26, 27, 28, 42, 178, 33, 108, 109, 110, 111,
28
+ 127, 181, 121, 10, 120, 187, 11, 119, 34, 12,
29
+ 35, 215, 16, 19, 20, 21, 22, 23, 24, 25,
30
+ 26, 27, 28, 118, 44, 33, 19, 20, 21, 22,
31
+ 23, 24, 25, 26, 27, 28, 217, 33, 34, 176,
32
+ 35, 10, 39, 38, 11, 37, 36, 12, 181, nil,
33
+ 16, 19, 20, 21, 22, 23, 24, 25, 26, 27,
34
+ 28, nil, nil, 33, 108, 109, 110, 111, nil, nil,
35
+ nil, 10, nil, nil, 11, nil, 34, 12, 35, nil,
36
+ 16, 19, 20, 21, 22, 23, 24, 25, 26, 27,
37
+ 28, nil, nil, 33, nil, 124, 19, 20, 21, 22,
38
+ 23, 24, 25, 26, 27, 28, 34, 125, 35, 199,
39
+ 200, 195, nil, nil, 47, 20, 21, 22, 23, 24,
40
+ 25, 26, 27, 28, 108, 109, 110, 111, 196, 197,
41
+ 198, 201, 202, 203, 204, 205, 206, 199, 200, 195,
42
+ nil, nil, 47, 20, 21, 22, 23, 24, 25, 26,
43
+ 27, 28, 108, 109, 110, 111, 196, 197, 198, 201,
44
+ 202, 203, 204, 205, 206, 199, 200, 195, nil, nil,
45
+ 47, 20, 21, 22, 23, 24, 25, 26, 27, 28,
46
+ 108, 109, 110, 111, 196, 197, 198, 201, 202, 203,
47
+ 204, 205, 206, 199, 200, 195, nil, nil, 47, 20,
48
+ 21, 22, 23, 24, 25, 26, 27, 28, 108, 109,
49
+ 110, 111, 196, 197, 198, 201, 202, 203, 204, 205,
50
+ 206, 47, 20, 21, 22, 23, 24, 25, 26, 27,
51
+ 28, 47, 20, 21, 22, 23, 24, 25, 26, 27,
52
+ 28, 19, 20, 21, 22, 23, 24, 25, 26, 27,
53
+ 28, 47, 20, 21, 22, 23, 24, 25, 26, 27,
54
+ 28, 19, 20, 21, 22, 23, 24, 25, 26, 27,
55
+ 28, 108, 109, 110, 111, 108, 109, 110, 111, 108,
56
+ 109, 110, 111 ]
57
+
58
+ racc_action_check = [
59
+ 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
60
+ 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
61
+ 33, 33, 33, 33, 33, 33, 119, 33, 33, 33,
62
+ 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
63
+ 33, 60, 60, 60, 60, 60, 60, 60, 60, 60,
64
+ 60, 60, 60, 60, 60, 60, 60, 60, 60, 60,
65
+ 60, 60, 60, 60, 60, 60, 60, 60, 60, 60,
66
+ 60, 60, 60, 60, 60, 60, 60, 60, 60, 60,
67
+ 60, 60, 55, 55, 55, 55, 55, 55, 55, 55,
68
+ 55, 55, 55, 55, 55, 55, 55, 55, 55, 55,
69
+ 55, 55, 55, 55, 55, 55, 55, 55, 115, 55,
70
+ 55, 55, 55, 55, 55, 55, 55, 55, 55, 55,
71
+ 55, 55, 55, 0, 115, 120, 0, 121, 17, 0,
72
+ 117, 116, 0, 0, 0, 0, 0, 0, 0, 0,
73
+ 0, 0, 0, 17, 113, 0, 177, 177, 177, 177,
74
+ 52, 180, 39, 112, 38, 186, 112, 37, 0, 112,
75
+ 0, 190, 112, 112, 112, 112, 112, 112, 112, 112,
76
+ 112, 112, 112, 36, 31, 112, 16, 16, 16, 16,
77
+ 16, 16, 16, 16, 16, 16, 211, 213, 112, 112,
78
+ 112, 219, 12, 11, 219, 10, 1, 219, 114, nil,
79
+ 219, 219, 219, 219, 219, 219, 219, 219, 219, 219,
80
+ 219, nil, nil, 219, 181, 181, 181, 181, nil, nil,
81
+ nil, 209, nil, nil, 209, nil, 219, 209, 219, nil,
82
+ 209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
83
+ 209, nil, nil, 209, nil, 44, 44, 44, 44, 44,
84
+ 44, 44, 44, 44, 44, 44, 209, 44, 209, 216,
85
+ 216, 216, nil, nil, 216, 216, 216, 216, 216, 216,
86
+ 216, 216, 216, 216, 105, 105, 105, 105, 216, 216,
87
+ 216, 216, 216, 216, 216, 216, 216, 218, 218, 218,
88
+ nil, nil, 218, 218, 218, 218, 218, 218, 218, 218,
89
+ 218, 218, 187, 187, 187, 187, 218, 218, 218, 218,
90
+ 218, 218, 218, 218, 218, 193, 193, 193, nil, nil,
91
+ 193, 193, 193, 193, 193, 193, 193, 193, 193, 193,
92
+ 35, 35, 35, 35, 193, 193, 193, 193, 193, 193,
93
+ 193, 193, 193, 134, 134, 134, nil, nil, 134, 134,
94
+ 134, 134, 134, 134, 134, 134, 134, 134, 34, 34,
95
+ 34, 34, 134, 134, 134, 134, 134, 134, 134, 134,
96
+ 134, 18, 18, 18, 18, 18, 18, 18, 18, 18,
97
+ 18, 42, 42, 42, 42, 42, 42, 42, 42, 42,
98
+ 42, 124, 124, 124, 124, 124, 124, 124, 124, 124,
99
+ 124, 50, 50, 50, 50, 50, 50, 50, 50, 50,
100
+ 50, 125, 125, 125, 125, 125, 125, 125, 125, 125,
101
+ 125, 217, 217, 217, 217, 183, 183, 183, 183, 221,
102
+ 221, 221, 221 ]
103
+
104
+ racc_action_pointer = [
105
+ 117, 196, nil, nil, nil, nil, nil, nil, nil, nil,
106
+ 188, 183, 179, nil, nil, nil, 160, 117, 355, nil,
107
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
108
+ nil, 163, nil, -2, 356, 328, 173, 149, 147, 144,
109
+ nil, nil, 365, nil, 230, nil, nil, nil, nil, nil,
110
+ 385, nil, 122, nil, nil, 80, nil, nil, nil, nil,
111
+ 39, nil, nil, nil, nil, nil, nil, nil, nil, nil,
112
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
113
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
114
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
115
+ nil, nil, nil, nil, nil, 272, nil, nil, nil, nil,
116
+ nil, nil, 147, 102, 158, 80, 87, 90, nil, 18,
117
+ 114, 113, nil, nil, 375, 395, nil, nil, nil, nil,
118
+ nil, nil, nil, nil, 332, nil, nil, nil, nil, nil,
119
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
120
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
121
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
122
+ nil, nil, nil, nil, nil, nil, nil, 144, nil, nil,
123
+ 111, 212, nil, 423, nil, nil, 115, 300, nil, nil,
124
+ 150, nil, nil, 304, nil, nil, nil, nil, nil, nil,
125
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 215,
126
+ nil, 141, nil, 159, nil, nil, 248, 419, 276, 185,
127
+ nil, 427, nil ]
128
+
129
+ racc_action_default = [
130
+ -182, -182, -1, -15, -16, -17, -21, -22, -23, -24,
131
+ -182, -182, -182, -28, -29, -30, -182, -32, -2, -34,
132
+ -35, -36, -37, -38, -39, -40, -41, -42, -43, -50,
133
+ -52, -53, -54, -2, -2, -2, -182, -182, -182, -182,
134
+ -31, -51, -182, -56, -182, -33, -44, -45, -46, -47,
135
+ -48, -57, -182, -62, -63, -64, -66, -67, -68, -69,
136
+ -182, -126, -127, -128, -129, -130, -131, -132, -133, -134,
137
+ -135, -136, -137, -138, -139, -140, -141, -142, -143, -144,
138
+ -145, -146, -147, -148, -149, -150, -151, -152, -153, -154,
139
+ -155, -156, -157, -158, -159, -160, -161, -162, -163, -164,
140
+ -165, -3, -4, -5, -6, -7, -9, -10, -11, -12,
141
+ -13, -14, -182, -182, -168, -182, -182, -176, 223, -182,
142
+ -182, -182, -55, -58, -182, -182, -49, -61, -65, -70,
143
+ -71, -72, -73, -74, -182, -89, -90, -91, -92, -93,
144
+ -94, -95, -96, -97, -98, -99, -100, -101, -102, -103,
145
+ -104, -105, -106, -107, -108, -109, -110, -111, -112, -113,
146
+ -114, -115, -116, -117, -118, -119, -120, -121, -122, -123,
147
+ -124, -125, -8, -18, -19, -20, -166, -2, -167, -169,
148
+ -171, -2, -174, -2, -175, -177, -179, -2, -25, -26,
149
+ -182, -59, -60, -182, -76, -77, -78, -79, -80, -81,
150
+ -82, -83, -84, -85, -86, -87, -88, -170, -172, -182,
151
+ -173, -182, -180, -182, -181, -27, -182, -2, -182, -182,
152
+ -75, -2, -178 ]
153
+
154
+ racc_goto_table = [
155
+ 46, 112, 115, 117, 114, 183, 193, 185, 179, 48,
156
+ 50, 123, 49, 53, 43, 3, 4, 41, 40, 52,
157
+ 45, 5, 135, 136, 46, 113, 172, 54, 51, 221,
158
+ 116, 2, 46, 122, 50, 128, 1, nil, nil, nil,
159
+ nil, 126, 50, nil, nil, nil, nil, nil, nil, nil,
160
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
161
+ nil, nil, nil, nil, nil, 216, nil, nil, nil, nil,
162
+ nil, nil, nil, nil, 208, nil, 212, nil, nil, nil,
163
+ nil, nil, nil, nil, nil, nil, nil, nil, 218, nil,
164
+ 220, 191, 192, nil, nil, nil, nil, nil, nil, nil,
165
+ nil, nil, nil, 183, nil, nil, nil, nil, nil, nil,
166
+ nil, nil, nil, nil, nil, nil, 46, nil, nil, nil,
167
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
168
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
169
+ nil, nil, nil, nil, 207, nil, nil, nil, 209, nil,
170
+ 211, 210, nil, nil, 213, 214, nil, nil, nil, nil,
171
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
172
+ nil, nil, nil, nil, nil, 46, nil, nil, nil, nil,
173
+ nil, nil, nil, nil, 219, nil, nil, nil, 222, nil,
174
+ nil, nil, nil, nil, nil, nil, nil, nil, 46, nil,
175
+ 46 ]
176
+
177
+ racc_goto_check = [
178
+ 23, 4, 4, 48, 44, 18, 39, 49, 45, 26,
179
+ 25, 22, 3, 33, 31, 11, 12, 27, 21, 32,
180
+ 24, 13, 40, 41, 23, 43, 7, 3, 31, 14,
181
+ 47, 2, 23, 26, 25, 33, 1, nil, nil, nil,
182
+ nil, 26, 25, nil, nil, nil, nil, nil, nil, nil,
183
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
184
+ nil, nil, nil, nil, nil, 39, nil, nil, nil, nil,
185
+ nil, nil, nil, nil, 45, nil, 49, nil, nil, nil,
186
+ nil, nil, nil, nil, nil, nil, nil, nil, 39, nil,
187
+ 39, 22, 22, nil, nil, nil, nil, nil, nil, nil,
188
+ nil, nil, nil, 18, nil, nil, nil, nil, nil, nil,
189
+ nil, nil, nil, nil, nil, nil, 23, nil, nil, nil,
190
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
191
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
192
+ nil, nil, nil, nil, 4, nil, nil, nil, 4, nil,
193
+ 4, 44, nil, nil, 4, 48, nil, nil, nil, nil,
194
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
195
+ nil, nil, nil, nil, nil, 23, nil, nil, nil, nil,
196
+ nil, nil, nil, nil, 4, nil, nil, nil, 4, nil,
197
+ nil, nil, nil, nil, nil, nil, nil, nil, 23, nil,
198
+ 23 ]
199
+
200
+ racc_goto_pointer = [
201
+ nil, 36, 31, -6, -33, nil, nil, -79, nil, nil,
202
+ nil, 15, 16, 21, -190, nil, nil, nil, -110, nil,
203
+ nil, 2, -33, -18, 2, -8, -9, 1, nil, nil,
204
+ nil, -3, -14, -20, nil, nil, nil, nil, nil, -128,
205
+ -38, -37, nil, -9, -30, -106, nil, -5, -32, -110,
206
+ nil ]
207
+
208
+ racc_goto_default = [
209
+ nil, nil, nil, 103, nil, 101, 102, 104, 105, 106,
210
+ 107, 173, 174, 175, 177, 6, 7, 8, 9, 13,
211
+ 14, 15, 17, 18, nil, 194, nil, 29, 30, 31,
212
+ 32, nil, nil, nil, 55, 56, 57, 58, 59, nil,
213
+ nil, nil, 61, nil, nil, nil, 180, nil, nil, nil,
214
+ 186 ]
215
+
216
+ racc_reduce_table = [
217
+ 0, 0, :racc_error,
218
+ 1, 47, :_reduce_none,
219
+ 0, 49, :_reduce_none,
220
+ 1, 50, :_reduce_none,
221
+ 1, 51, :_reduce_none,
222
+ 1, 51, :_reduce_none,
223
+ 1, 52, :_reduce_none,
224
+ 1, 53, :_reduce_none,
225
+ 2, 53, :_reduce_none,
226
+ 1, 54, :_reduce_none,
227
+ 1, 54, :_reduce_none,
228
+ 1, 55, :_reduce_none,
229
+ 1, 55, :_reduce_none,
230
+ 1, 56, :_reduce_none,
231
+ 1, 56, :_reduce_none,
232
+ 1, 48, :_reduce_none,
233
+ 1, 48, :_reduce_none,
234
+ 1, 48, :_reduce_none,
235
+ 1, 60, :_reduce_none,
236
+ 1, 60, :_reduce_none,
237
+ 1, 60, :_reduce_none,
238
+ 1, 59, :_reduce_none,
239
+ 1, 59, :_reduce_none,
240
+ 1, 59, :_reduce_none,
241
+ 1, 59, :_reduce_none,
242
+ 4, 61, :_reduce_25,
243
+ 4, 62, :_reduce_26,
244
+ 5, 62, :_reduce_27,
245
+ 1, 63, :_reduce_none,
246
+ 1, 63, :_reduce_none,
247
+ 1, 65, :_reduce_none,
248
+ 2, 65, :_reduce_31,
249
+ 1, 67, :_reduce_32,
250
+ 2, 68, :_reduce_33,
251
+ 1, 68, :_reduce_none,
252
+ 1, 69, :_reduce_none,
253
+ 1, 69, :_reduce_none,
254
+ 1, 69, :_reduce_none,
255
+ 1, 69, :_reduce_none,
256
+ 1, 69, :_reduce_none,
257
+ 1, 69, :_reduce_none,
258
+ 1, 69, :_reduce_none,
259
+ 1, 69, :_reduce_none,
260
+ 1, 69, :_reduce_none,
261
+ 1, 71, :_reduce_none,
262
+ 1, 71, :_reduce_none,
263
+ 1, 70, :_reduce_none,
264
+ 1, 70, :_reduce_none,
265
+ 1, 72, :_reduce_none,
266
+ 2, 72, :_reduce_49,
267
+ 1, 66, :_reduce_none,
268
+ 2, 66, :_reduce_51,
269
+ 1, 73, :_reduce_52,
270
+ 1, 74, :_reduce_none,
271
+ 1, 74, :_reduce_none,
272
+ 3, 75, :_reduce_55,
273
+ 2, 76, :_reduce_56,
274
+ 2, 76, :_reduce_57,
275
+ 2, 77, :_reduce_58,
276
+ 3, 77, :_reduce_59,
277
+ 3, 77, :_reduce_60,
278
+ 3, 64, :_reduce_61,
279
+ 1, 78, :_reduce_none,
280
+ 1, 78, :_reduce_63,
281
+ 1, 79, :_reduce_none,
282
+ 2, 79, :_reduce_65,
283
+ 1, 80, :_reduce_none,
284
+ 1, 80, :_reduce_none,
285
+ 1, 80, :_reduce_none,
286
+ 1, 80, :_reduce_none,
287
+ 2, 81, :_reduce_70,
288
+ 2, 81, :_reduce_71,
289
+ 2, 81, :_reduce_72,
290
+ 2, 81, :_reduce_73,
291
+ 2, 81, :_reduce_74,
292
+ 6, 82, :_reduce_75,
293
+ 1, 85, :_reduce_none,
294
+ 1, 85, :_reduce_none,
295
+ 1, 85, :_reduce_none,
296
+ 1, 85, :_reduce_none,
297
+ 1, 85, :_reduce_none,
298
+ 1, 85, :_reduce_none,
299
+ 1, 85, :_reduce_none,
300
+ 1, 85, :_reduce_none,
301
+ 1, 85, :_reduce_none,
302
+ 1, 85, :_reduce_none,
303
+ 1, 85, :_reduce_none,
304
+ 1, 85, :_reduce_none,
305
+ 1, 85, :_reduce_none,
306
+ 2, 83, :_reduce_89,
307
+ 1, 86, :_reduce_none,
308
+ 1, 86, :_reduce_none,
309
+ 1, 87, :_reduce_none,
310
+ 1, 87, :_reduce_none,
311
+ 1, 87, :_reduce_none,
312
+ 1, 87, :_reduce_none,
313
+ 1, 87, :_reduce_none,
314
+ 1, 87, :_reduce_none,
315
+ 1, 87, :_reduce_none,
316
+ 1, 87, :_reduce_none,
317
+ 1, 87, :_reduce_none,
318
+ 1, 87, :_reduce_none,
319
+ 1, 87, :_reduce_none,
320
+ 1, 87, :_reduce_none,
321
+ 1, 87, :_reduce_none,
322
+ 1, 87, :_reduce_none,
323
+ 1, 87, :_reduce_none,
324
+ 1, 87, :_reduce_none,
325
+ 1, 87, :_reduce_none,
326
+ 1, 87, :_reduce_none,
327
+ 1, 87, :_reduce_none,
328
+ 1, 87, :_reduce_none,
329
+ 1, 87, :_reduce_none,
330
+ 1, 87, :_reduce_none,
331
+ 1, 87, :_reduce_none,
332
+ 1, 87, :_reduce_none,
333
+ 1, 87, :_reduce_none,
334
+ 1, 87, :_reduce_none,
335
+ 1, 87, :_reduce_none,
336
+ 1, 87, :_reduce_none,
337
+ 1, 87, :_reduce_none,
338
+ 1, 87, :_reduce_none,
339
+ 1, 87, :_reduce_none,
340
+ 1, 87, :_reduce_none,
341
+ 1, 87, :_reduce_none,
342
+ 1, 87, :_reduce_none,
343
+ 1, 84, :_reduce_none,
344
+ 1, 84, :_reduce_none,
345
+ 1, 88, :_reduce_none,
346
+ 1, 88, :_reduce_none,
347
+ 1, 88, :_reduce_none,
348
+ 1, 88, :_reduce_none,
349
+ 1, 88, :_reduce_none,
350
+ 1, 88, :_reduce_none,
351
+ 1, 88, :_reduce_none,
352
+ 1, 88, :_reduce_none,
353
+ 1, 88, :_reduce_none,
354
+ 1, 88, :_reduce_none,
355
+ 1, 88, :_reduce_none,
356
+ 1, 88, :_reduce_none,
357
+ 1, 88, :_reduce_none,
358
+ 1, 88, :_reduce_none,
359
+ 1, 88, :_reduce_none,
360
+ 1, 88, :_reduce_none,
361
+ 1, 88, :_reduce_none,
362
+ 1, 88, :_reduce_none,
363
+ 1, 88, :_reduce_none,
364
+ 1, 88, :_reduce_none,
365
+ 1, 88, :_reduce_none,
366
+ 1, 88, :_reduce_none,
367
+ 1, 88, :_reduce_none,
368
+ 1, 88, :_reduce_none,
369
+ 1, 88, :_reduce_none,
370
+ 1, 88, :_reduce_none,
371
+ 1, 88, :_reduce_none,
372
+ 1, 88, :_reduce_none,
373
+ 1, 88, :_reduce_none,
374
+ 1, 88, :_reduce_none,
375
+ 1, 88, :_reduce_none,
376
+ 1, 88, :_reduce_none,
377
+ 1, 88, :_reduce_none,
378
+ 1, 88, :_reduce_none,
379
+ 1, 88, :_reduce_none,
380
+ 1, 88, :_reduce_none,
381
+ 1, 88, :_reduce_none,
382
+ 1, 88, :_reduce_none,
383
+ 3, 58, :_reduce_166,
384
+ 3, 58, :_reduce_167,
385
+ 1, 89, :_reduce_168,
386
+ 2, 89, :_reduce_169,
387
+ 3, 90, :_reduce_170,
388
+ 1, 91, :_reduce_171,
389
+ 2, 91, :_reduce_172,
390
+ 2, 92, :_reduce_173,
391
+ 3, 57, :_reduce_174,
392
+ 3, 57, :_reduce_175,
393
+ 1, 93, :_reduce_176,
394
+ 2, 93, :_reduce_177,
395
+ 7, 94, :_reduce_178,
396
+ 1, 95, :_reduce_179,
397
+ 2, 95, :_reduce_180,
398
+ 2, 96, :_reduce_181 ]
399
+
400
+ racc_reduce_n = 182
401
+
402
+ racc_shift_n = 223
403
+
404
+ racc_token_table = {
405
+ false => 0,
406
+ :error => 1,
407
+ " " => 2,
408
+ "\t" => 3,
409
+ "\n" => 4,
410
+ "\r" => 5,
411
+ "n" => 6,
412
+ "u" => 7,
413
+ "l" => 8,
414
+ "t" => 9,
415
+ "r" => 10,
416
+ "e" => 11,
417
+ "f" => 12,
418
+ "a" => 13,
419
+ "s" => 14,
420
+ "-" => 15,
421
+ "0" => 16,
422
+ "1" => 17,
423
+ "2" => 18,
424
+ "3" => 19,
425
+ "4" => 20,
426
+ "5" => 21,
427
+ "6" => 22,
428
+ "7" => 23,
429
+ "8" => 24,
430
+ "9" => 25,
431
+ "." => 26,
432
+ "+" => 27,
433
+ "\"" => 28,
434
+ "\\" => 29,
435
+ "b" => 30,
436
+ "c" => 31,
437
+ "d" => 32,
438
+ "A" => 33,
439
+ "B" => 34,
440
+ "C" => 35,
441
+ "D" => 36,
442
+ "E" => 37,
443
+ "F" => 38,
444
+ :OTHER => 39,
445
+ "," => 40,
446
+ "[" => 41,
447
+ "]" => 42,
448
+ "{" => 43,
449
+ "}" => 44,
450
+ ":" => 45 }
451
+
452
+ racc_nt_base = 46
453
+
454
+ racc_use_result_var = true
455
+
456
+ Racc_arg = [
457
+ racc_action_table,
458
+ racc_action_check,
459
+ racc_action_default,
460
+ racc_action_pointer,
461
+ racc_goto_table,
462
+ racc_goto_check,
463
+ racc_goto_default,
464
+ racc_goto_pointer,
465
+ racc_nt_base,
466
+ racc_reduce_table,
467
+ racc_token_table,
468
+ racc_shift_n,
469
+ racc_reduce_n,
470
+ racc_use_result_var ]
471
+
472
+ Racc_token_to_s_table = [
473
+ "$end",
474
+ "error",
475
+ "\" \"",
476
+ "\"\\t\"",
477
+ "\"\\n\"",
478
+ "\"\\r\"",
479
+ "\"n\"",
480
+ "\"u\"",
481
+ "\"l\"",
482
+ "\"t\"",
483
+ "\"r\"",
484
+ "\"e\"",
485
+ "\"f\"",
486
+ "\"a\"",
487
+ "\"s\"",
488
+ "\"-\"",
489
+ "\"0\"",
490
+ "\"1\"",
491
+ "\"2\"",
492
+ "\"3\"",
493
+ "\"4\"",
494
+ "\"5\"",
495
+ "\"6\"",
496
+ "\"7\"",
497
+ "\"8\"",
498
+ "\"9\"",
499
+ "\".\"",
500
+ "\"+\"",
501
+ "\"\\\"\"",
502
+ "\"\\\\\"",
503
+ "\"b\"",
504
+ "\"c\"",
505
+ "\"d\"",
506
+ "\"A\"",
507
+ "\"B\"",
508
+ "\"C\"",
509
+ "\"D\"",
510
+ "\"E\"",
511
+ "\"F\"",
512
+ "OTHER",
513
+ "\",\"",
514
+ "\"[\"",
515
+ "\"]\"",
516
+ "\"{\"",
517
+ "\"}\"",
518
+ "\":\"",
519
+ "$start",
520
+ "start",
521
+ "document",
522
+ "empty",
523
+ "os",
524
+ "opt_token_separator",
525
+ "token_separator",
526
+ "token_separator_chars",
527
+ "token_separator_char",
528
+ "whitespace_char",
529
+ "newline_char",
530
+ "object",
531
+ "array",
532
+ "primitive",
533
+ "literal",
534
+ "null",
535
+ "boolean",
536
+ "number",
537
+ "string",
538
+ "integer",
539
+ "float",
540
+ "positive_integer",
541
+ "integer_digits",
542
+ "non_zero_digit",
543
+ "digits_opt",
544
+ "digit",
545
+ "digits",
546
+ "positive_float",
547
+ "float_digits",
548
+ "simple_float_digits",
549
+ "exp_float_digits",
550
+ "float_exp_digits",
551
+ "string_items_opt",
552
+ "string_items",
553
+ "string_item",
554
+ "escaped_char",
555
+ "escaped_unicode_char",
556
+ "slash_and_char",
557
+ "unescaped_char",
558
+ "hexa_digit",
559
+ "ignore_slash_char",
560
+ "known_ignore_slash_char",
561
+ "known_unescaped_char",
562
+ "array_items",
563
+ "array_item",
564
+ "comma_array_items",
565
+ "comma_array_item",
566
+ "object_items",
567
+ "object_item",
568
+ "comma_object_items",
569
+ "comma_object_item" ]
570
+
571
+ Racc_debug_parser = true
572
+
573
+ ##### State transition tables end #####
574
+
575
+ # reduce 0 omitted
576
+
577
+ # reduce 1 omitted
578
+
579
+ # reduce 2 omitted
580
+
581
+ # reduce 3 omitted
582
+
583
+ # reduce 4 omitted
584
+
585
+ # reduce 5 omitted
586
+
587
+ # reduce 6 omitted
588
+
589
+ # reduce 7 omitted
590
+
591
+ # reduce 8 omitted
592
+
593
+ # reduce 9 omitted
594
+
595
+ # reduce 10 omitted
596
+
597
+ # reduce 11 omitted
598
+
599
+ # reduce 12 omitted
600
+
601
+ # reduce 13 omitted
602
+
603
+ # reduce 14 omitted
604
+
605
+ # reduce 15 omitted
606
+
607
+ # reduce 16 omitted
608
+
609
+ # reduce 17 omitted
610
+
611
+ # reduce 18 omitted
612
+
613
+ # reduce 19 omitted
614
+
615
+ # reduce 20 omitted
616
+
617
+ # reduce 21 omitted
618
+
619
+ # reduce 22 omitted
620
+
621
+ # reduce 23 omitted
622
+
623
+ # reduce 24 omitted
624
+
625
+ module_eval(<<'.,.,', 'myson.y', 20)
626
+ def _reduce_25(val, _values, result)
627
+ result = nil
628
+ result
629
+ end
630
+ .,.,
631
+
632
+ module_eval(<<'.,.,', 'myson.y', 21)
633
+ def _reduce_26(val, _values, result)
634
+ result = true
635
+ result
636
+ end
637
+ .,.,
638
+
639
+ module_eval(<<'.,.,', 'myson.y', 22)
640
+ def _reduce_27(val, _values, result)
641
+ result = false
642
+ result
643
+ end
644
+ .,.,
645
+
646
+ # reduce 28 omitted
647
+
648
+ # reduce 29 omitted
649
+
650
+ # reduce 30 omitted
651
+
652
+ module_eval(<<'.,.,', 'myson.y', 28)
653
+ def _reduce_31(val, _values, result)
654
+ result = -val[1]
655
+ result
656
+ end
657
+ .,.,
658
+
659
+ module_eval(<<'.,.,', 'myson.y', 30)
660
+ def _reduce_32(val, _values, result)
661
+ result = val[0].to_i
662
+ result
663
+ end
664
+ .,.,
665
+
666
+ module_eval(<<'.,.,', 'myson.y', 31)
667
+ def _reduce_33(val, _values, result)
668
+ result = val.join('')
669
+ result
670
+ end
671
+ .,.,
672
+
673
+ # reduce 34 omitted
674
+
675
+ # reduce 35 omitted
676
+
677
+ # reduce 36 omitted
678
+
679
+ # reduce 37 omitted
680
+
681
+ # reduce 38 omitted
682
+
683
+ # reduce 39 omitted
684
+
685
+ # reduce 40 omitted
686
+
687
+ # reduce 41 omitted
688
+
689
+ # reduce 42 omitted
690
+
691
+ # reduce 43 omitted
692
+
693
+ # reduce 44 omitted
694
+
695
+ # reduce 45 omitted
696
+
697
+ # reduce 46 omitted
698
+
699
+ # reduce 47 omitted
700
+
701
+ # reduce 48 omitted
702
+
703
+ module_eval(<<'.,.,', 'myson.y', 38)
704
+ def _reduce_49(val, _values, result)
705
+ result = val[0] + val[1]
706
+ result
707
+ end
708
+ .,.,
709
+
710
+ # reduce 50 omitted
711
+
712
+ module_eval(<<'.,.,', 'myson.y', 41)
713
+ def _reduce_51(val, _values, result)
714
+ result = -val[1]
715
+ result
716
+ end
717
+ .,.,
718
+
719
+ module_eval(<<'.,.,', 'myson.y', 43)
720
+ def _reduce_52(val, _values, result)
721
+ result = val[0].to_f
722
+ result
723
+ end
724
+ .,.,
725
+
726
+ # reduce 53 omitted
727
+
728
+ # reduce 54 omitted
729
+
730
+ module_eval(<<'.,.,', 'myson.y', 45)
731
+ def _reduce_55(val, _values, result)
732
+ result = val.join('')
733
+ result
734
+ end
735
+ .,.,
736
+
737
+ module_eval(<<'.,.,', 'myson.y', 46)
738
+ def _reduce_56(val, _values, result)
739
+ result = val.join('')
740
+ result
741
+ end
742
+ .,.,
743
+
744
+ module_eval(<<'.,.,', 'myson.y', 47)
745
+ def _reduce_57(val, _values, result)
746
+ result = val.join('')
747
+ result
748
+ end
749
+ .,.,
750
+
751
+ module_eval(<<'.,.,', 'myson.y', 49)
752
+ def _reduce_58(val, _values, result)
753
+ result = val.join('')
754
+ result
755
+ end
756
+ .,.,
757
+
758
+ module_eval(<<'.,.,', 'myson.y', 50)
759
+ def _reduce_59(val, _values, result)
760
+ result = val.join('')
761
+ result
762
+ end
763
+ .,.,
764
+
765
+ module_eval(<<'.,.,', 'myson.y', 51)
766
+ def _reduce_60(val, _values, result)
767
+ result = val.join('')
768
+ result
769
+ end
770
+ .,.,
771
+
772
+ module_eval(<<'.,.,', 'myson.y', 55)
773
+ def _reduce_61(val, _values, result)
774
+ result = val[1]
775
+ result
776
+ end
777
+ .,.,
778
+
779
+ # reduce 62 omitted
780
+
781
+ module_eval(<<'.,.,', 'myson.y', 57)
782
+ def _reduce_63(val, _values, result)
783
+ result = ''
784
+ result
785
+ end
786
+ .,.,
787
+
788
+ # reduce 64 omitted
789
+
790
+ module_eval(<<'.,.,', 'myson.y', 59)
791
+ def _reduce_65(val, _values, result)
792
+ result = val.join('')
793
+ result
794
+ end
795
+ .,.,
796
+
797
+ # reduce 66 omitted
798
+
799
+ # reduce 67 omitted
800
+
801
+ # reduce 68 omitted
802
+
803
+ # reduce 69 omitted
804
+
805
+ module_eval(<<'.,.,', 'myson.y', 62)
806
+ def _reduce_70(val, _values, result)
807
+ result = "\n"
808
+ result
809
+ end
810
+ .,.,
811
+
812
+ module_eval(<<'.,.,', 'myson.y', 63)
813
+ def _reduce_71(val, _values, result)
814
+ result = "\r"
815
+ result
816
+ end
817
+ .,.,
818
+
819
+ module_eval(<<'.,.,', 'myson.y', 64)
820
+ def _reduce_72(val, _values, result)
821
+ result = "\t"
822
+ result
823
+ end
824
+ .,.,
825
+
826
+ module_eval(<<'.,.,', 'myson.y', 65)
827
+ def _reduce_73(val, _values, result)
828
+ result = "\b"
829
+ result
830
+ end
831
+ .,.,
832
+
833
+ module_eval(<<'.,.,', 'myson.y', 66)
834
+ def _reduce_74(val, _values, result)
835
+ result = "\f"
836
+ result
837
+ end
838
+ .,.,
839
+
840
+ module_eval(<<'.,.,', 'myson.y', 68)
841
+ def _reduce_75(val, _values, result)
842
+ result = make_unicode_char(val[2..-1].join('').hex)
843
+ result
844
+ end
845
+ .,.,
846
+
847
+ # reduce 76 omitted
848
+
849
+ # reduce 77 omitted
850
+
851
+ # reduce 78 omitted
852
+
853
+ # reduce 79 omitted
854
+
855
+ # reduce 80 omitted
856
+
857
+ # reduce 81 omitted
858
+
859
+ # reduce 82 omitted
860
+
861
+ # reduce 83 omitted
862
+
863
+ # reduce 84 omitted
864
+
865
+ # reduce 85 omitted
866
+
867
+ # reduce 86 omitted
868
+
869
+ # reduce 87 omitted
870
+
871
+ # reduce 88 omitted
872
+
873
+ module_eval(<<'.,.,', 'myson.y', 70)
874
+ def _reduce_89(val, _values, result)
875
+ result = val[1]
876
+ result
877
+ end
878
+ .,.,
879
+
880
+ # reduce 90 omitted
881
+
882
+ # reduce 91 omitted
883
+
884
+ # reduce 92 omitted
885
+
886
+ # reduce 93 omitted
887
+
888
+ # reduce 94 omitted
889
+
890
+ # reduce 95 omitted
891
+
892
+ # reduce 96 omitted
893
+
894
+ # reduce 97 omitted
895
+
896
+ # reduce 98 omitted
897
+
898
+ # reduce 99 omitted
899
+
900
+ # reduce 100 omitted
901
+
902
+ # reduce 101 omitted
903
+
904
+ # reduce 102 omitted
905
+
906
+ # reduce 103 omitted
907
+
908
+ # reduce 104 omitted
909
+
910
+ # reduce 105 omitted
911
+
912
+ # reduce 106 omitted
913
+
914
+ # reduce 107 omitted
915
+
916
+ # reduce 108 omitted
917
+
918
+ # reduce 109 omitted
919
+
920
+ # reduce 110 omitted
921
+
922
+ # reduce 111 omitted
923
+
924
+ # reduce 112 omitted
925
+
926
+ # reduce 113 omitted
927
+
928
+ # reduce 114 omitted
929
+
930
+ # reduce 115 omitted
931
+
932
+ # reduce 116 omitted
933
+
934
+ # reduce 117 omitted
935
+
936
+ # reduce 118 omitted
937
+
938
+ # reduce 119 omitted
939
+
940
+ # reduce 120 omitted
941
+
942
+ # reduce 121 omitted
943
+
944
+ # reduce 122 omitted
945
+
946
+ # reduce 123 omitted
947
+
948
+ # reduce 124 omitted
949
+
950
+ # reduce 125 omitted
951
+
952
+ # reduce 126 omitted
953
+
954
+ # reduce 127 omitted
955
+
956
+ # reduce 128 omitted
957
+
958
+ # reduce 129 omitted
959
+
960
+ # reduce 130 omitted
961
+
962
+ # reduce 131 omitted
963
+
964
+ # reduce 132 omitted
965
+
966
+ # reduce 133 omitted
967
+
968
+ # reduce 134 omitted
969
+
970
+ # reduce 135 omitted
971
+
972
+ # reduce 136 omitted
973
+
974
+ # reduce 137 omitted
975
+
976
+ # reduce 138 omitted
977
+
978
+ # reduce 139 omitted
979
+
980
+ # reduce 140 omitted
981
+
982
+ # reduce 141 omitted
983
+
984
+ # reduce 142 omitted
985
+
986
+ # reduce 143 omitted
987
+
988
+ # reduce 144 omitted
989
+
990
+ # reduce 145 omitted
991
+
992
+ # reduce 146 omitted
993
+
994
+ # reduce 147 omitted
995
+
996
+ # reduce 148 omitted
997
+
998
+ # reduce 149 omitted
999
+
1000
+ # reduce 150 omitted
1001
+
1002
+ # reduce 151 omitted
1003
+
1004
+ # reduce 152 omitted
1005
+
1006
+ # reduce 153 omitted
1007
+
1008
+ # reduce 154 omitted
1009
+
1010
+ # reduce 155 omitted
1011
+
1012
+ # reduce 156 omitted
1013
+
1014
+ # reduce 157 omitted
1015
+
1016
+ # reduce 158 omitted
1017
+
1018
+ # reduce 159 omitted
1019
+
1020
+ # reduce 160 omitted
1021
+
1022
+ # reduce 161 omitted
1023
+
1024
+ # reduce 162 omitted
1025
+
1026
+ # reduce 163 omitted
1027
+
1028
+ # reduce 164 omitted
1029
+
1030
+ # reduce 165 omitted
1031
+
1032
+ module_eval(<<'.,.,', 'myson.y', 82)
1033
+ def _reduce_166(val, _values, result)
1034
+ result = []
1035
+ result
1036
+ end
1037
+ .,.,
1038
+
1039
+ module_eval(<<'.,.,', 'myson.y', 83)
1040
+ def _reduce_167(val, _values, result)
1041
+ result = val[1]
1042
+ result
1043
+ end
1044
+ .,.,
1045
+
1046
+ module_eval(<<'.,.,', 'myson.y', 85)
1047
+ def _reduce_168(val, _values, result)
1048
+ result = [val[0]]
1049
+ result
1050
+ end
1051
+ .,.,
1052
+
1053
+ module_eval(<<'.,.,', 'myson.y', 86)
1054
+ def _reduce_169(val, _values, result)
1055
+ result = [val[0]] + val[1]
1056
+ result
1057
+ end
1058
+ .,.,
1059
+
1060
+ module_eval(<<'.,.,', 'myson.y', 88)
1061
+ def _reduce_170(val, _values, result)
1062
+ result = val[1]
1063
+ result
1064
+ end
1065
+ .,.,
1066
+
1067
+ module_eval(<<'.,.,', 'myson.y', 89)
1068
+ def _reduce_171(val, _values, result)
1069
+ result = [val[0]]
1070
+ result
1071
+ end
1072
+ .,.,
1073
+
1074
+ module_eval(<<'.,.,', 'myson.y', 90)
1075
+ def _reduce_172(val, _values, result)
1076
+ result = [val[0]] + val[1]
1077
+ result
1078
+ end
1079
+ .,.,
1080
+
1081
+ module_eval(<<'.,.,', 'myson.y', 92)
1082
+ def _reduce_173(val, _values, result)
1083
+ result = val[1]
1084
+ result
1085
+ end
1086
+ .,.,
1087
+
1088
+ module_eval(<<'.,.,', 'myson.y', 95)
1089
+ def _reduce_174(val, _values, result)
1090
+ result = {}
1091
+ result
1092
+ end
1093
+ .,.,
1094
+
1095
+ module_eval(<<'.,.,', 'myson.y', 96)
1096
+ def _reduce_175(val, _values, result)
1097
+ result = Hash[val[1]]
1098
+ result
1099
+ end
1100
+ .,.,
1101
+
1102
+ module_eval(<<'.,.,', 'myson.y', 97)
1103
+ def _reduce_176(val, _values, result)
1104
+ result = [val[0]]
1105
+ result
1106
+ end
1107
+ .,.,
1108
+
1109
+ module_eval(<<'.,.,', 'myson.y', 98)
1110
+ def _reduce_177(val, _values, result)
1111
+ result = [val[0]] + val[1]
1112
+ result
1113
+ end
1114
+ .,.,
1115
+
1116
+ module_eval(<<'.,.,', 'myson.y', 100)
1117
+ def _reduce_178(val, _values, result)
1118
+ result = [val[1], val[5]]
1119
+ result
1120
+ end
1121
+ .,.,
1122
+
1123
+ module_eval(<<'.,.,', 'myson.y', 101)
1124
+ def _reduce_179(val, _values, result)
1125
+ result = [val[0]]
1126
+ result
1127
+ end
1128
+ .,.,
1129
+
1130
+ module_eval(<<'.,.,', 'myson.y', 102)
1131
+ def _reduce_180(val, _values, result)
1132
+ result = [val[0]] + val[1]
1133
+ result
1134
+ end
1135
+ .,.,
1136
+
1137
+ module_eval(<<'.,.,', 'myson.y', 104)
1138
+ def _reduce_181(val, _values, result)
1139
+ result = val[1]
1140
+ result
1141
+ end
1142
+ .,.,
1143
+
1144
+ def _reduce_none(val, _values, result)
1145
+ val[0]
1146
+ end
1147
+
1148
+ end # class GeneratedParser
1149
+ end # module Myson