bind-zone-parser 0.0.0

Sign up to get free protection for your applications and to get access to all the features.
data/.document ADDED
@@ -0,0 +1,5 @@
1
+ README.rdoc
2
+ lib/**/*.rb
3
+ bin/*
4
+ features/**/*.feature
5
+ LICENSE
data/.gitignore ADDED
@@ -0,0 +1,21 @@
1
+ ## MAC OS
2
+ .DS_Store
3
+
4
+ ## TEXTMATE
5
+ *.tmproj
6
+ tmtags
7
+
8
+ ## EMACS
9
+ *~
10
+ \#*
11
+ .\#*
12
+
13
+ ## VIM
14
+ *.swp
15
+
16
+ ## PROJECT::GENERAL
17
+ coverage
18
+ rdoc
19
+ pkg
20
+
21
+ ## PROJECT::SPECIFIC
data/LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ Copyright (c) 2010 Geoff Garside
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.rdoc ADDED
@@ -0,0 +1,33 @@
1
+ = Bind::ZoneParser
2
+
3
+ Helps in parsing Bind Zone files.
4
+
5
+ Currently supports the current list of record types
6
+
7
+ * A
8
+ * NS
9
+ * MX
10
+ * TXT
11
+ * PTR
12
+ * SOA
13
+ * SRV
14
+ * CNAME
15
+
16
+ == Adding more types
17
+
18
+ The parser uses the Ragel state machine generator so you must have Ragel 6.5+ installed to generate
19
+ the ruby state machine file.
20
+
21
+ == Note on Patches/Pull Requests
22
+
23
+ * Fork the project.
24
+ * Make your feature addition or bug fix.
25
+ * Add tests for it. This is important so I don't break it in a
26
+ future version unintentionally.
27
+ * Commit, do not mess with rakefile, version, or history.
28
+ (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
29
+ * Send me a pull request. Bonus points for topic branches.
30
+
31
+ == Copyright
32
+
33
+ Copyright (c) 2010 Geoff Garside. See LICENSE for details.
data/Rakefile ADDED
@@ -0,0 +1,57 @@
1
+ require 'rubygems'
2
+ require 'rake'
3
+
4
+ begin
5
+ require 'jeweler'
6
+ Jeweler::Tasks.new do |gem|
7
+ gem.name = "bind-zone-parser"
8
+ gem.summary = %Q{BIND Zone file parser}
9
+ gem.description = %Q{Helps with parsing records and data from BIND Zone files}
10
+ gem.email = "geoff@geoffgarside.co.uk"
11
+ gem.homepage = "http://github.com/geoffgarside/bind-zone-parser"
12
+ gem.authors = ["Geoff Garside"]
13
+ gem.add_development_dependency "shoulda", ">= 0"
14
+ gem.add_development_dependency "yard", ">= 0"
15
+ # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
16
+ end
17
+ Jeweler::GemcutterTasks.new
18
+ rescue LoadError
19
+ puts "Jeweler (or a dependency) not available. Install it with: gem install jeweler"
20
+ end
21
+
22
+ require 'rake/testtask'
23
+ Rake::TestTask.new(:test) do |test|
24
+ test.libs << 'lib' << 'test'
25
+ test.pattern = 'test/**/test_*.rb'
26
+ test.verbose = true
27
+ end
28
+
29
+ begin
30
+ require 'rcov/rcovtask'
31
+ Rcov::RcovTask.new do |test|
32
+ test.libs << 'test'
33
+ test.pattern = 'test/**/test_*.rb'
34
+ test.verbose = true
35
+ end
36
+ rescue LoadError
37
+ task :rcov do
38
+ abort "RCov is not available. In order to run rcov, you must: sudo gem install spicycode-rcov"
39
+ end
40
+ end
41
+
42
+ task :build => ['lib/bind/zone_parser.rb']
43
+ task :test => [:check_dependencies, 'lib/bind/zone_parser.rb']
44
+ task :default => :test
45
+
46
+ file 'lib/bind/zone_parser.rb' => ['lib/bind/zone_parser.rl'] do
47
+ sh 'ragel -R -o lib/bind/zone_parser.rb lib/bind/zone_parser.rl'
48
+ end
49
+
50
+ begin
51
+ require 'yard'
52
+ YARD::Rake::YardocTask.new
53
+ rescue LoadError
54
+ task :yardoc do
55
+ abort "YARD is not available. In order to run yardoc, you must: sudo gem install yard"
56
+ end
57
+ end
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 0.0.0
@@ -0,0 +1,63 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = %q{bind-zone-parser}
8
+ s.version = "0.0.0"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Geoff Garside"]
12
+ s.date = %q{2010-08-25}
13
+ s.description = %q{Helps with parsing records and data from BIND Zone files}
14
+ s.email = %q{geoff@geoffgarside.co.uk}
15
+ s.extra_rdoc_files = [
16
+ "LICENSE",
17
+ "README.rdoc"
18
+ ]
19
+ s.files = [
20
+ ".document",
21
+ ".gitignore",
22
+ "LICENSE",
23
+ "README.rdoc",
24
+ "Rakefile",
25
+ "VERSION",
26
+ "bind-zone-parser.gemspec",
27
+ "lib/bind-zone-parser.rb",
28
+ "lib/bind/zone.rb",
29
+ "lib/bind/zone_parser.rb",
30
+ "lib/bind/zone_parser.rl",
31
+ "test/examples/example.com.db",
32
+ "test/helper.rb",
33
+ "test/test_zone.rb",
34
+ "test/test_zone_parser.rb"
35
+ ]
36
+ s.homepage = %q{http://github.com/geoffgarside/bind-zone-parser}
37
+ s.rdoc_options = ["--charset=UTF-8"]
38
+ s.require_paths = ["lib"]
39
+ s.rubygems_version = %q{1.3.7}
40
+ s.summary = %q{BIND Zone file parser}
41
+ s.test_files = [
42
+ "test/helper.rb",
43
+ "test/test_zone.rb",
44
+ "test/test_zone_parser.rb"
45
+ ]
46
+
47
+ if s.respond_to? :specification_version then
48
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
49
+ s.specification_version = 3
50
+
51
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
52
+ s.add_development_dependency(%q<shoulda>, [">= 0"])
53
+ s.add_development_dependency(%q<yard>, [">= 0"])
54
+ else
55
+ s.add_dependency(%q<shoulda>, [">= 0"])
56
+ s.add_dependency(%q<yard>, [">= 0"])
57
+ end
58
+ else
59
+ s.add_dependency(%q<shoulda>, [">= 0"])
60
+ s.add_dependency(%q<yard>, [">= 0"])
61
+ end
62
+ end
63
+
@@ -0,0 +1,2 @@
1
+ require File.expand_path '../bind/zone', __FILE__
2
+ require File.expand_path '../bind/zone_parser', __FILE__
data/lib/bind/zone.rb ADDED
@@ -0,0 +1,11 @@
1
+ module Bind
2
+ class Zone
3
+ attr_reader :records
4
+ def self.load_file(path)
5
+ new(File.read(path))
6
+ end
7
+ def initialize(zone)
8
+ @records = ZoneParser.parse(zone)
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,1495 @@
1
+
2
+ # line 1 "lib/bind/zone_parser.rl"
3
+
4
+ # line 87 "lib/bind/zone_parser.rl"
5
+
6
+
7
+ module Bind
8
+ class ZoneParser
9
+ def self.parse(zone)
10
+ new.parse(zone)
11
+ end
12
+ def parse(zone)
13
+ data = zone.unpack('c*')
14
+ records = []
15
+ record = {}
16
+
17
+
18
+ # line 19 "lib/bind/zone_parser.rb"
19
+ class << self
20
+ attr_accessor :_bind_parser_actions
21
+ private :_bind_parser_actions, :_bind_parser_actions=
22
+ end
23
+ self._bind_parser_actions = [
24
+ 0, 1, 0, 1, 2, 1, 3, 1,
25
+ 4, 1, 5, 1, 6, 1, 7, 1,
26
+ 8, 1, 9, 1, 10, 1, 11, 1,
27
+ 12, 1, 13, 1, 14, 1, 15, 1,
28
+ 16, 1, 17, 1, 18, 1, 19, 1,
29
+ 20, 1, 21, 1, 22, 1, 23, 1,
30
+ 24, 1, 25, 1, 26, 1, 27, 2,
31
+ 1, 0, 2, 3, 15, 2, 4, 3,
32
+ 2, 4, 18, 2, 8, 27, 2, 9,
33
+ 27, 2, 10, 27, 2, 11, 27, 2,
34
+ 13, 2, 2, 13, 3, 2, 13, 4,
35
+ 2, 13, 17, 2, 13, 18, 2, 14,
36
+ 27, 2, 16, 27, 2, 17, 15, 2,
37
+ 17, 27, 2, 18, 15, 2, 18, 27,
38
+ 2, 19, 2, 3, 1, 0, 2, 3,
39
+ 4, 18, 27, 3, 13, 4, 3, 3,
40
+ 13, 4, 18, 3, 13, 17, 27, 3,
41
+ 13, 18, 27, 3, 17, 27, 15, 3,
42
+ 18, 27, 15, 4, 13, 4, 18, 27
43
+ ]
44
+
45
+ class << self
46
+ attr_accessor :_bind_parser_key_offsets
47
+ private :_bind_parser_key_offsets, :_bind_parser_key_offsets=
48
+ end
49
+ self._bind_parser_key_offsets = [
50
+ 0, 0, 4, 17, 22, 32, 35, 43,
51
+ 46, 51, 54, 59, 62, 67, 74, 78,
52
+ 79, 86, 91, 101, 108, 111, 112, 118,
53
+ 121, 124, 125, 131, 134, 137, 138, 144,
54
+ 147, 148, 149, 150, 151, 154, 164, 177,
55
+ 189, 190, 193, 203, 204, 207, 212, 217,
56
+ 218, 219, 220, 221, 222, 225, 235, 246,
57
+ 256, 267, 271, 276, 283, 289, 296, 302,
58
+ 309, 315, 322, 328, 334, 338, 343, 344,
59
+ 347, 352, 353, 356, 361, 362, 365, 370,
60
+ 371, 374, 379, 389, 399, 400, 401, 404,
61
+ 408, 411, 416, 419, 421, 423, 434, 446,
62
+ 456, 467, 470, 481, 496, 502, 508, 514,
63
+ 523, 531, 543, 555, 567, 579, 590, 607,
64
+ 620, 631, 642, 654, 665, 678, 690, 701,
65
+ 713, 718, 735, 748, 757, 766, 782, 793,
66
+ 806, 817, 830, 841, 854, 867, 880, 892,
67
+ 904, 916, 928, 940, 951, 964, 971, 979,
68
+ 980, 982, 983, 984, 988, 995, 1000, 1005,
69
+ 1006, 1009, 1013, 1014, 1015, 1018, 1023, 1028,
70
+ 1033, 1038, 1043, 1048, 1059, 1072, 1084, 1089,
71
+ 1096, 1107, 1117, 1118, 1131, 1144, 1160, 1175,
72
+ 1186, 1197, 1211, 1224, 1235, 1246, 1260, 1273,
73
+ 1284, 1295, 1309, 1322, 1333, 1344, 1355, 1369,
74
+ 1382, 1396, 1410, 1424, 1438, 1451, 1462, 1473,
75
+ 1491, 1505, 1518, 1529, 1540, 1554, 1566, 1578,
76
+ 1589, 1606, 1617, 1634, 1645, 1654, 1666, 1678,
77
+ 1690, 1702, 1713, 1724, 1736, 1747, 1758, 1770,
78
+ 1781, 1787, 1799, 1811, 1823, 1835, 1847, 1858,
79
+ 1863, 1874, 1887, 1898, 1911, 1922, 1935, 1946,
80
+ 1959, 1972, 1977, 1982, 1996, 2009, 2022, 2038,
81
+ 2053, 2064, 2075, 2089, 2102, 2113, 2124, 2138,
82
+ 2151, 2162, 2173, 2187, 2200, 2212, 2224, 2236,
83
+ 2248, 2259, 2269, 2282, 2294, 2306, 2317, 2334,
84
+ 2346, 2358, 2369, 2380, 2392, 2403, 2413, 2424,
85
+ 2436, 2448, 2460, 2472, 2484, 2495, 2506, 2520,
86
+ 2533, 2539, 2545, 2558, 2569, 2580, 2594, 2608,
87
+ 2622, 2636, 2650, 2663, 2668, 2673, 2687, 2700,
88
+ 2712, 2725, 2738, 2754, 2768, 2782, 2796, 2810,
89
+ 2823, 2841, 2855, 2868, 2882, 2896, 2909, 2922,
90
+ 2936, 2950, 2964, 2978, 2992, 3005, 3019, 3033,
91
+ 3047, 3068, 3089, 3110, 3127, 3144, 3168, 3189,
92
+ 3203, 3224, 3245, 3267, 3282, 3297, 3319, 3333,
93
+ 3347, 3368, 3383, 3398, 3420, 3434, 3455, 3479,
94
+ 3500, 3522, 3543
95
+ ]
96
+
97
+ class << self
98
+ attr_accessor :_bind_parser_trans_keys
99
+ private :_bind_parser_trans_keys, :_bind_parser_trans_keys=
100
+ end
101
+ self._bind_parser_trans_keys = [
102
+ 32, 59, 9, 13, 32, 59, 65, 67,
103
+ 73, 77, 78, 80, 84, 9, 13, 48,
104
+ 57, 32, 9, 13, 48, 57, 32, 65,
105
+ 67, 73, 77, 78, 80, 84, 9, 13,
106
+ 32, 9, 13, 32, 50, 9, 13, 48,
107
+ 49, 51, 57, 46, 48, 57, 50, 48,
108
+ 49, 51, 57, 46, 48, 57, 50, 48,
109
+ 49, 51, 57, 46, 48, 57, 50, 48,
110
+ 49, 51, 57, 10, 32, 59, 9, 13,
111
+ 48, 57, 32, 59, 9, 13, 10, 10,
112
+ 32, 59, 9, 13, 48, 57, 10, 32,
113
+ 59, 9, 13, 10, 32, 53, 59, 9,
114
+ 13, 48, 52, 54, 57, 10, 32, 59,
115
+ 9, 13, 48, 53, 46, 48, 57, 46,
116
+ 46, 53, 48, 52, 54, 57, 46, 48,
117
+ 53, 46, 48, 57, 46, 46, 53, 48,
118
+ 52, 54, 57, 46, 48, 53, 46, 48,
119
+ 57, 46, 46, 53, 48, 52, 54, 57,
120
+ 46, 48, 53, 78, 65, 77, 69, 32,
121
+ 9, 13, 32, 45, 9, 13, 48, 57,
122
+ 65, 90, 97, 122, 10, 32, 45, 46,
123
+ 59, 9, 13, 48, 57, 65, 90, 97,
124
+ 122, 10, 32, 45, 59, 9, 13, 48,
125
+ 57, 65, 90, 97, 122, 78, 32, 9,
126
+ 13, 32, 65, 67, 77, 78, 80, 83,
127
+ 84, 9, 13, 88, 32, 9, 13, 32,
128
+ 9, 13, 48, 57, 32, 9, 13, 48,
129
+ 57, 83, 84, 82, 79, 65, 32, 9,
130
+ 13, 32, 45, 9, 13, 48, 57, 65,
131
+ 90, 97, 122, 32, 45, 46, 9, 13,
132
+ 48, 57, 65, 90, 97, 122, 32, 45,
133
+ 9, 13, 48, 57, 65, 90, 97, 122,
134
+ 32, 45, 46, 9, 13, 48, 57, 65,
135
+ 90, 97, 122, 32, 40, 9, 13, 32,
136
+ 9, 13, 48, 57, 10, 32, 59, 9,
137
+ 13, 48, 57, 32, 59, 9, 13, 48,
138
+ 57, 10, 32, 59, 9, 13, 48, 57,
139
+ 32, 59, 9, 13, 48, 57, 10, 32,
140
+ 59, 9, 13, 48, 57, 32, 59, 9,
141
+ 13, 48, 57, 10, 32, 59, 9, 13,
142
+ 48, 57, 32, 59, 9, 13, 48, 57,
143
+ 32, 41, 9, 13, 48, 57, 32, 41,
144
+ 9, 13, 10, 32, 59, 9, 13, 10,
145
+ 32, 9, 13, 32, 9, 13, 48, 57,
146
+ 10, 32, 9, 13, 32, 9, 13, 48,
147
+ 57, 10, 32, 9, 13, 32, 9, 13,
148
+ 48, 57, 10, 32, 9, 13, 32, 9,
149
+ 13, 48, 57, 32, 45, 9, 13, 48,
150
+ 57, 65, 90, 97, 122, 32, 45, 9,
151
+ 13, 48, 57, 65, 90, 97, 122, 88,
152
+ 84, 32, 9, 13, 32, 34, 9, 13,
153
+ 10, 34, 92, 10, 32, 59, 9, 13,
154
+ 10, 48, 57, 48, 57, 48, 57, 32,
155
+ 45, 46, 9, 13, 48, 57, 65, 90,
156
+ 97, 122, 32, 65, 67, 73, 77, 78,
157
+ 80, 84, 9, 13, 48, 57, 32, 45,
158
+ 9, 13, 48, 57, 65, 90, 97, 122,
159
+ 32, 45, 46, 9, 13, 48, 57, 65,
160
+ 90, 97, 122, 32, 9, 13, 32, 45,
161
+ 46, 9, 13, 48, 57, 65, 90, 97,
162
+ 122, 32, 50, 65, 67, 73, 77, 78,
163
+ 80, 84, 9, 13, 48, 49, 51, 57,
164
+ 32, 46, 9, 13, 48, 57, 32, 46,
165
+ 9, 13, 48, 57, 32, 46, 9, 13,
166
+ 48, 57, 32, 46, 53, 9, 13, 48,
167
+ 52, 54, 57, 32, 46, 9, 13, 48,
168
+ 53, 54, 57, 32, 45, 46, 78, 9,
169
+ 13, 48, 57, 65, 90, 97, 122, 32,
170
+ 45, 46, 65, 9, 13, 48, 57, 66,
171
+ 90, 97, 122, 32, 45, 46, 77, 9,
172
+ 13, 48, 57, 65, 90, 97, 122, 32,
173
+ 45, 46, 69, 9, 13, 48, 57, 65,
174
+ 90, 97, 122, 32, 45, 46, 9, 13,
175
+ 48, 57, 65, 90, 97, 122, 32, 45,
176
+ 65, 67, 73, 77, 78, 80, 84, 9,
177
+ 13, 48, 57, 66, 90, 97, 122, 10,
178
+ 32, 45, 46, 59, 9, 13, 48, 57,
179
+ 65, 90, 97, 122, 32, 59, 65, 67,
180
+ 73, 77, 78, 80, 84, 9, 13, 32,
181
+ 59, 65, 67, 73, 77, 78, 80, 84,
182
+ 9, 13, 32, 45, 46, 78, 9, 13,
183
+ 48, 57, 65, 90, 97, 122, 32, 45,
184
+ 46, 9, 13, 48, 57, 65, 90, 97,
185
+ 122, 32, 65, 67, 73, 77, 78, 80,
186
+ 83, 84, 9, 13, 48, 57, 32, 45,
187
+ 46, 88, 9, 13, 48, 57, 65, 90,
188
+ 97, 122, 32, 45, 46, 9, 13, 48,
189
+ 57, 65, 90, 97, 122, 32, 65, 67,
190
+ 73, 77, 78, 80, 84, 9, 13, 48,
191
+ 57, 32, 9, 13, 48, 57, 32, 45,
192
+ 65, 67, 73, 77, 78, 80, 84, 9,
193
+ 13, 48, 57, 66, 90, 97, 122, 10,
194
+ 32, 45, 46, 59, 9, 13, 48, 57,
195
+ 65, 90, 97, 122, 32, 50, 59, 9,
196
+ 13, 48, 49, 51, 57, 32, 50, 59,
197
+ 9, 13, 48, 49, 51, 57, 32, 50,
198
+ 59, 65, 67, 73, 77, 78, 80, 84,
199
+ 9, 13, 48, 49, 51, 57, 32, 45,
200
+ 46, 9, 13, 48, 57, 65, 90, 97,
201
+ 122, 32, 45, 50, 9, 13, 48, 49,
202
+ 51, 57, 65, 90, 97, 122, 32, 45,
203
+ 46, 9, 13, 48, 57, 65, 90, 97,
204
+ 122, 32, 45, 50, 9, 13, 48, 49,
205
+ 51, 57, 65, 90, 97, 122, 32, 45,
206
+ 46, 9, 13, 48, 57, 65, 90, 97,
207
+ 122, 32, 45, 50, 9, 13, 48, 49,
208
+ 51, 57, 65, 90, 97, 122, 10, 32,
209
+ 45, 46, 59, 9, 13, 48, 57, 65,
210
+ 90, 97, 122, 32, 59, 65, 67, 73,
211
+ 77, 78, 80, 84, 9, 13, 48, 57,
212
+ 32, 45, 46, 83, 9, 13, 48, 57,
213
+ 65, 90, 97, 122, 32, 45, 46, 84,
214
+ 9, 13, 48, 57, 65, 90, 97, 122,
215
+ 32, 45, 46, 82, 9, 13, 48, 57,
216
+ 65, 90, 97, 122, 32, 45, 46, 88,
217
+ 9, 13, 48, 57, 65, 90, 97, 122,
218
+ 32, 45, 46, 84, 9, 13, 48, 57,
219
+ 65, 90, 97, 122, 32, 45, 46, 9,
220
+ 13, 48, 57, 65, 90, 97, 122, 32,
221
+ 34, 65, 67, 73, 77, 78, 80, 84,
222
+ 9, 13, 48, 57, 45, 48, 57, 65,
223
+ 90, 97, 122, 45, 46, 48, 57, 65,
224
+ 90, 97, 122, 95, 116, 117, 99, 112,
225
+ 32, 46, 9, 13, 32, 73, 83, 9,
226
+ 13, 48, 57, 32, 9, 13, 48, 57,
227
+ 32, 73, 83, 9, 13, 78, 32, 9,
228
+ 13, 32, 83, 9, 13, 82, 86, 32,
229
+ 9, 13, 32, 9, 13, 48, 57, 32,
230
+ 9, 13, 48, 57, 32, 9, 13, 48,
231
+ 57, 32, 9, 13, 48, 57, 32, 9,
232
+ 13, 48, 57, 32, 9, 13, 48, 57,
233
+ 32, 45, 46, 9, 13, 48, 57, 65,
234
+ 90, 97, 122, 10, 32, 45, 46, 59,
235
+ 9, 13, 48, 57, 65, 90, 97, 122,
236
+ 10, 32, 45, 59, 9, 13, 48, 57,
237
+ 65, 90, 97, 122, 10, 32, 59, 9,
238
+ 13, 45, 48, 57, 65, 90, 97, 122,
239
+ 32, 45, 46, 9, 13, 48, 57, 65,
240
+ 90, 97, 122, 32, 45, 9, 13, 48,
241
+ 57, 65, 90, 97, 122, 100, 10, 32,
242
+ 45, 46, 59, 9, 13, 48, 57, 65,
243
+ 90, 97, 122, 10, 32, 45, 46, 59,
244
+ 9, 13, 48, 57, 65, 90, 97, 122,
245
+ 10, 32, 45, 46, 53, 59, 9, 13,
246
+ 48, 52, 54, 57, 65, 90, 97, 122,
247
+ 10, 32, 45, 46, 59, 9, 13, 48,
248
+ 53, 54, 57, 65, 90, 97, 122, 32,
249
+ 45, 46, 9, 13, 48, 57, 65, 90,
250
+ 97, 122, 32, 45, 46, 9, 13, 48,
251
+ 57, 65, 90, 97, 122, 32, 45, 46,
252
+ 53, 9, 13, 48, 52, 54, 57, 65,
253
+ 90, 97, 122, 32, 45, 46, 9, 13,
254
+ 48, 53, 54, 57, 65, 90, 97, 122,
255
+ 32, 45, 46, 9, 13, 48, 57, 65,
256
+ 90, 97, 122, 32, 45, 46, 9, 13,
257
+ 48, 57, 65, 90, 97, 122, 32, 45,
258
+ 46, 53, 9, 13, 48, 52, 54, 57,
259
+ 65, 90, 97, 122, 32, 45, 46, 9,
260
+ 13, 48, 53, 54, 57, 65, 90, 97,
261
+ 122, 32, 45, 46, 9, 13, 48, 57,
262
+ 65, 90, 97, 122, 32, 45, 46, 9,
263
+ 13, 48, 57, 65, 90, 97, 122, 32,
264
+ 45, 46, 53, 9, 13, 48, 52, 54,
265
+ 57, 65, 90, 97, 122, 32, 45, 46,
266
+ 9, 13, 48, 53, 54, 57, 65, 90,
267
+ 97, 122, 32, 45, 46, 9, 13, 48,
268
+ 57, 65, 90, 97, 122, 32, 45, 46,
269
+ 9, 13, 48, 57, 65, 90, 97, 122,
270
+ 32, 45, 46, 9, 13, 48, 57, 65,
271
+ 90, 97, 122, 32, 45, 46, 53, 9,
272
+ 13, 48, 52, 54, 57, 65, 90, 97,
273
+ 122, 32, 45, 46, 9, 13, 48, 53,
274
+ 54, 57, 65, 90, 97, 122, 10, 32,
275
+ 45, 46, 59, 78, 9, 13, 48, 57,
276
+ 65, 90, 97, 122, 10, 32, 45, 46,
277
+ 59, 65, 9, 13, 48, 57, 66, 90,
278
+ 97, 122, 10, 32, 45, 46, 59, 77,
279
+ 9, 13, 48, 57, 65, 90, 97, 122,
280
+ 10, 32, 45, 46, 59, 69, 9, 13,
281
+ 48, 57, 65, 90, 97, 122, 10, 32,
282
+ 45, 46, 59, 9, 13, 48, 57, 65,
283
+ 90, 97, 122, 32, 45, 59, 9, 13,
284
+ 48, 57, 65, 90, 97, 122, 32, 45,
285
+ 59, 9, 13, 48, 57, 65, 90, 97,
286
+ 122, 32, 45, 59, 65, 67, 73, 77,
287
+ 78, 80, 84, 9, 13, 48, 57, 66,
288
+ 90, 97, 122, 10, 32, 45, 46, 59,
289
+ 78, 9, 13, 48, 57, 65, 90, 97,
290
+ 122, 10, 32, 45, 46, 59, 9, 13,
291
+ 48, 57, 65, 90, 97, 122, 32, 59,
292
+ 65, 67, 77, 78, 80, 83, 84, 9,
293
+ 13, 32, 59, 65, 67, 77, 78, 80,
294
+ 83, 84, 9, 13, 32, 59, 65, 67,
295
+ 73, 77, 78, 80, 83, 84, 9, 13,
296
+ 48, 57, 32, 45, 46, 79, 9, 13,
297
+ 48, 57, 65, 90, 97, 122, 32, 45,
298
+ 46, 65, 9, 13, 48, 57, 66, 90,
299
+ 97, 122, 32, 45, 46, 9, 13, 48,
300
+ 57, 65, 90, 97, 122, 32, 45, 65,
301
+ 67, 73, 77, 78, 80, 84, 9, 13,
302
+ 48, 57, 66, 90, 97, 122, 32, 45,
303
+ 46, 9, 13, 48, 57, 65, 90, 97,
304
+ 122, 32, 45, 65, 67, 73, 77, 78,
305
+ 80, 84, 9, 13, 48, 57, 66, 90,
306
+ 97, 122, 32, 45, 46, 9, 13, 48,
307
+ 57, 65, 90, 97, 122, 32, 40, 50,
308
+ 9, 13, 48, 49, 51, 57, 32, 45,
309
+ 46, 78, 9, 13, 48, 57, 65, 90,
310
+ 97, 122, 32, 45, 46, 65, 9, 13,
311
+ 48, 57, 66, 90, 97, 122, 32, 45,
312
+ 46, 77, 9, 13, 48, 57, 65, 90,
313
+ 97, 122, 32, 45, 46, 69, 9, 13,
314
+ 48, 57, 65, 90, 97, 122, 32, 45,
315
+ 46, 9, 13, 48, 57, 65, 90, 97,
316
+ 122, 32, 40, 45, 9, 13, 48, 57,
317
+ 65, 90, 97, 122, 32, 45, 46, 78,
318
+ 9, 13, 48, 57, 65, 90, 97, 122,
319
+ 32, 45, 46, 9, 13, 48, 57, 65,
320
+ 90, 97, 122, 32, 40, 65, 67, 77,
321
+ 78, 80, 83, 84, 9, 13, 32, 45,
322
+ 46, 88, 9, 13, 48, 57, 65, 90,
323
+ 97, 122, 32, 45, 46, 9, 13, 48,
324
+ 57, 65, 90, 97, 122, 32, 40, 9,
325
+ 13, 48, 57, 32, 45, 46, 83, 9,
326
+ 13, 48, 57, 65, 90, 97, 122, 32,
327
+ 45, 46, 84, 9, 13, 48, 57, 65,
328
+ 90, 97, 122, 32, 45, 46, 82, 9,
329
+ 13, 48, 57, 65, 90, 97, 122, 32,
330
+ 45, 46, 88, 9, 13, 48, 57, 65,
331
+ 90, 97, 122, 32, 45, 46, 84, 9,
332
+ 13, 48, 57, 65, 90, 97, 122, 32,
333
+ 45, 46, 9, 13, 48, 57, 65, 90,
334
+ 97, 122, 32, 34, 40, 9, 13, 32,
335
+ 45, 46, 9, 13, 48, 57, 65, 90,
336
+ 97, 122, 32, 45, 50, 9, 13, 48,
337
+ 49, 51, 57, 65, 90, 97, 122, 32,
338
+ 45, 46, 9, 13, 48, 57, 65, 90,
339
+ 97, 122, 32, 45, 50, 9, 13, 48,
340
+ 49, 51, 57, 65, 90, 97, 122, 32,
341
+ 45, 46, 9, 13, 48, 57, 65, 90,
342
+ 97, 122, 32, 45, 50, 9, 13, 48,
343
+ 49, 51, 57, 65, 90, 97, 122, 32,
344
+ 45, 46, 9, 13, 48, 57, 65, 90,
345
+ 97, 122, 32, 45, 50, 9, 13, 48,
346
+ 49, 51, 57, 65, 90, 97, 122, 10,
347
+ 32, 45, 46, 59, 9, 13, 48, 57,
348
+ 65, 90, 97, 122, 32, 40, 59, 9,
349
+ 13, 32, 40, 59, 9, 13, 32, 40,
350
+ 59, 65, 67, 73, 77, 78, 80, 84,
351
+ 9, 13, 48, 57, 10, 32, 45, 46,
352
+ 59, 9, 13, 48, 57, 65, 90, 97,
353
+ 122, 10, 32, 45, 46, 59, 9, 13,
354
+ 48, 57, 65, 90, 97, 122, 10, 32,
355
+ 45, 46, 53, 59, 9, 13, 48, 52,
356
+ 54, 57, 65, 90, 97, 122, 10, 32,
357
+ 45, 46, 59, 9, 13, 48, 53, 54,
358
+ 57, 65, 90, 97, 122, 32, 45, 46,
359
+ 9, 13, 48, 57, 65, 90, 97, 122,
360
+ 32, 45, 46, 9, 13, 48, 57, 65,
361
+ 90, 97, 122, 32, 45, 46, 53, 9,
362
+ 13, 48, 52, 54, 57, 65, 90, 97,
363
+ 122, 32, 45, 46, 9, 13, 48, 53,
364
+ 54, 57, 65, 90, 97, 122, 32, 45,
365
+ 46, 9, 13, 48, 57, 65, 90, 97,
366
+ 122, 32, 45, 46, 9, 13, 48, 57,
367
+ 65, 90, 97, 122, 32, 45, 46, 53,
368
+ 9, 13, 48, 52, 54, 57, 65, 90,
369
+ 97, 122, 32, 45, 46, 9, 13, 48,
370
+ 53, 54, 57, 65, 90, 97, 122, 32,
371
+ 45, 46, 9, 13, 48, 57, 65, 90,
372
+ 97, 122, 32, 45, 46, 9, 13, 48,
373
+ 57, 65, 90, 97, 122, 32, 45, 46,
374
+ 53, 9, 13, 48, 52, 54, 57, 65,
375
+ 90, 97, 122, 32, 45, 46, 9, 13,
376
+ 48, 53, 54, 57, 65, 90, 97, 122,
377
+ 32, 45, 46, 78, 9, 13, 48, 57,
378
+ 65, 90, 97, 122, 32, 45, 46, 65,
379
+ 9, 13, 48, 57, 66, 90, 97, 122,
380
+ 32, 45, 46, 77, 9, 13, 48, 57,
381
+ 65, 90, 97, 122, 32, 45, 46, 69,
382
+ 9, 13, 48, 57, 65, 90, 97, 122,
383
+ 32, 45, 46, 9, 13, 48, 57, 65,
384
+ 90, 97, 122, 32, 45, 9, 13, 48,
385
+ 57, 65, 90, 97, 122, 10, 32, 45,
386
+ 46, 59, 9, 13, 48, 57, 65, 90,
387
+ 97, 122, 10, 32, 45, 59, 9, 13,
388
+ 48, 57, 65, 90, 97, 122, 32, 45,
389
+ 46, 78, 9, 13, 48, 57, 65, 90,
390
+ 97, 122, 32, 45, 46, 9, 13, 48,
391
+ 57, 65, 90, 97, 122, 32, 45, 65,
392
+ 67, 77, 78, 80, 83, 84, 9, 13,
393
+ 48, 57, 66, 90, 97, 122, 32, 45,
394
+ 46, 79, 9, 13, 48, 57, 65, 90,
395
+ 97, 122, 32, 45, 46, 65, 9, 13,
396
+ 48, 57, 66, 90, 97, 122, 32, 45,
397
+ 46, 9, 13, 48, 57, 65, 90, 97,
398
+ 122, 32, 40, 45, 9, 13, 48, 57,
399
+ 65, 90, 97, 122, 32, 45, 46, 88,
400
+ 9, 13, 48, 57, 65, 90, 97, 122,
401
+ 32, 45, 46, 9, 13, 48, 57, 65,
402
+ 90, 97, 122, 32, 45, 9, 13, 48,
403
+ 57, 65, 90, 97, 122, 32, 45, 46,
404
+ 9, 13, 48, 57, 65, 90, 97, 122,
405
+ 32, 45, 46, 83, 9, 13, 48, 57,
406
+ 65, 90, 97, 122, 32, 45, 46, 84,
407
+ 9, 13, 48, 57, 65, 90, 97, 122,
408
+ 32, 45, 46, 82, 9, 13, 48, 57,
409
+ 65, 90, 97, 122, 32, 45, 46, 88,
410
+ 9, 13, 48, 57, 65, 90, 97, 122,
411
+ 32, 45, 46, 84, 9, 13, 48, 57,
412
+ 65, 90, 97, 122, 32, 45, 46, 9,
413
+ 13, 48, 57, 65, 90, 97, 122, 32,
414
+ 34, 45, 9, 13, 48, 57, 65, 90,
415
+ 97, 122, 10, 32, 45, 46, 59, 88,
416
+ 9, 13, 48, 57, 65, 90, 97, 122,
417
+ 10, 32, 45, 46, 59, 9, 13, 48,
418
+ 57, 65, 90, 97, 122, 32, 59, 9,
419
+ 13, 48, 57, 32, 59, 9, 13, 48,
420
+ 57, 32, 59, 65, 67, 73, 77, 78,
421
+ 80, 84, 9, 13, 48, 57, 32, 45,
422
+ 46, 9, 13, 48, 57, 65, 90, 97,
423
+ 122, 32, 45, 46, 9, 13, 48, 57,
424
+ 65, 90, 97, 122, 10, 32, 45, 46,
425
+ 59, 83, 9, 13, 48, 57, 65, 90,
426
+ 97, 122, 10, 32, 45, 46, 59, 84,
427
+ 9, 13, 48, 57, 65, 90, 97, 122,
428
+ 10, 32, 45, 46, 59, 82, 9, 13,
429
+ 48, 57, 65, 90, 97, 122, 10, 32,
430
+ 45, 46, 59, 88, 9, 13, 48, 57,
431
+ 65, 90, 97, 122, 10, 32, 45, 46,
432
+ 59, 84, 9, 13, 48, 57, 65, 90,
433
+ 97, 122, 10, 32, 45, 46, 59, 9,
434
+ 13, 48, 57, 65, 90, 97, 122, 32,
435
+ 34, 59, 9, 13, 32, 34, 59, 9,
436
+ 13, 32, 34, 59, 65, 67, 73, 77,
437
+ 78, 80, 84, 9, 13, 48, 57, 10,
438
+ 32, 45, 46, 59, 9, 13, 48, 57,
439
+ 65, 90, 97, 122, 10, 32, 45, 59,
440
+ 9, 13, 48, 57, 65, 90, 97, 122,
441
+ 10, 32, 45, 46, 59, 9, 13, 48,
442
+ 57, 65, 90, 97, 122, 10, 32, 45,
443
+ 46, 59, 9, 13, 48, 57, 65, 90,
444
+ 97, 122, 32, 50, 59, 65, 67, 73,
445
+ 77, 78, 80, 84, 9, 13, 48, 49,
446
+ 51, 57, 10, 32, 45, 46, 59, 78,
447
+ 9, 13, 48, 57, 65, 90, 97, 122,
448
+ 10, 32, 45, 46, 59, 65, 9, 13,
449
+ 48, 57, 66, 90, 97, 122, 10, 32,
450
+ 45, 46, 59, 77, 9, 13, 48, 57,
451
+ 65, 90, 97, 122, 10, 32, 45, 46,
452
+ 59, 69, 9, 13, 48, 57, 65, 90,
453
+ 97, 122, 10, 32, 45, 46, 59, 9,
454
+ 13, 48, 57, 65, 90, 97, 122, 32,
455
+ 45, 59, 65, 67, 73, 77, 78, 80,
456
+ 84, 9, 13, 48, 57, 66, 90, 97,
457
+ 122, 10, 32, 45, 46, 59, 78, 9,
458
+ 13, 48, 57, 65, 90, 97, 122, 10,
459
+ 32, 45, 46, 59, 9, 13, 48, 57,
460
+ 65, 90, 97, 122, 32, 59, 65, 67,
461
+ 73, 77, 78, 80, 83, 84, 9, 13,
462
+ 48, 57, 10, 32, 45, 46, 59, 88,
463
+ 9, 13, 48, 57, 65, 90, 97, 122,
464
+ 10, 32, 45, 46, 59, 9, 13, 48,
465
+ 57, 65, 90, 97, 122, 32, 59, 65,
466
+ 67, 73, 77, 78, 80, 84, 9, 13,
467
+ 48, 57, 10, 32, 45, 46, 59, 83,
468
+ 9, 13, 48, 57, 65, 90, 97, 122,
469
+ 10, 32, 45, 46, 59, 84, 9, 13,
470
+ 48, 57, 65, 90, 97, 122, 10, 32,
471
+ 45, 46, 59, 82, 9, 13, 48, 57,
472
+ 65, 90, 97, 122, 10, 32, 45, 46,
473
+ 59, 88, 9, 13, 48, 57, 65, 90,
474
+ 97, 122, 10, 32, 45, 46, 59, 84,
475
+ 9, 13, 48, 57, 65, 90, 97, 122,
476
+ 10, 32, 45, 46, 59, 9, 13, 48,
477
+ 57, 65, 90, 97, 122, 32, 34, 59,
478
+ 65, 67, 73, 77, 78, 80, 84, 9,
479
+ 13, 48, 57, 10, 32, 45, 59, 64,
480
+ 95, 9, 13, 48, 57, 65, 90, 97,
481
+ 122, 10, 32, 45, 59, 64, 95, 9,
482
+ 13, 48, 57, 65, 90, 97, 122, 10,
483
+ 32, 45, 59, 64, 65, 67, 73, 77,
484
+ 78, 80, 84, 95, 9, 13, 48, 57,
485
+ 66, 90, 97, 122, 10, 32, 45, 59,
486
+ 64, 65, 67, 73, 77, 78, 80, 84,
487
+ 95, 9, 13, 48, 57, 66, 90, 97,
488
+ 122, 10, 32, 45, 59, 64, 65, 67,
489
+ 73, 77, 78, 80, 84, 95, 9, 13,
490
+ 48, 57, 66, 90, 97, 122, 10, 32,
491
+ 45, 50, 59, 64, 95, 9, 13, 48,
492
+ 49, 51, 57, 65, 90, 97, 122, 10,
493
+ 32, 45, 50, 59, 64, 95, 9, 13,
494
+ 48, 49, 51, 57, 65, 90, 97, 122,
495
+ 10, 32, 45, 50, 59, 64, 65, 67,
496
+ 73, 77, 78, 80, 84, 95, 9, 13,
497
+ 48, 49, 51, 57, 66, 90, 97, 122,
498
+ 10, 32, 45, 59, 64, 65, 67, 73,
499
+ 77, 78, 80, 84, 95, 9, 13, 48,
500
+ 57, 66, 90, 97, 122, 10, 32, 45,
501
+ 59, 64, 95, 9, 13, 48, 57, 65,
502
+ 90, 97, 122, 10, 32, 45, 59, 64,
503
+ 65, 67, 77, 78, 80, 83, 84, 95,
504
+ 9, 13, 48, 57, 66, 90, 97, 122,
505
+ 10, 32, 45, 59, 64, 65, 67, 77,
506
+ 78, 80, 83, 84, 95, 9, 13, 48,
507
+ 57, 66, 90, 97, 122, 10, 32, 45,
508
+ 59, 64, 65, 67, 73, 77, 78, 80,
509
+ 83, 84, 95, 9, 13, 48, 57, 66,
510
+ 90, 97, 122, 10, 32, 40, 45, 59,
511
+ 64, 95, 9, 13, 48, 57, 65, 90,
512
+ 97, 122, 10, 32, 40, 45, 59, 64,
513
+ 95, 9, 13, 48, 57, 65, 90, 97,
514
+ 122, 10, 32, 40, 45, 59, 64, 65,
515
+ 67, 73, 77, 78, 80, 84, 95, 9,
516
+ 13, 48, 57, 66, 90, 97, 122, 10,
517
+ 32, 45, 59, 64, 95, 9, 13, 48,
518
+ 57, 65, 90, 97, 122, 10, 32, 45,
519
+ 59, 64, 95, 9, 13, 48, 57, 65,
520
+ 90, 97, 122, 10, 32, 45, 59, 64,
521
+ 65, 67, 73, 77, 78, 80, 84, 95,
522
+ 9, 13, 48, 57, 66, 90, 97, 122,
523
+ 10, 32, 34, 45, 59, 64, 95, 9,
524
+ 13, 48, 57, 65, 90, 97, 122, 10,
525
+ 32, 34, 45, 59, 64, 95, 9, 13,
526
+ 48, 57, 65, 90, 97, 122, 10, 32,
527
+ 34, 45, 59, 64, 65, 67, 73, 77,
528
+ 78, 80, 84, 95, 9, 13, 48, 57,
529
+ 66, 90, 97, 122, 10, 32, 45, 59,
530
+ 64, 95, 9, 13, 48, 57, 65, 90,
531
+ 97, 122, 10, 32, 45, 59, 64, 65,
532
+ 67, 73, 77, 78, 80, 84, 95, 9,
533
+ 13, 48, 57, 66, 90, 97, 122, 10,
534
+ 32, 45, 50, 59, 64, 65, 67, 73,
535
+ 77, 78, 80, 84, 95, 9, 13, 48,
536
+ 49, 51, 57, 66, 90, 97, 122, 10,
537
+ 32, 45, 59, 64, 65, 67, 73, 77,
538
+ 78, 80, 84, 95, 9, 13, 48, 57,
539
+ 66, 90, 97, 122, 10, 32, 45, 59,
540
+ 64, 65, 67, 73, 77, 78, 80, 83,
541
+ 84, 95, 9, 13, 48, 57, 66, 90,
542
+ 97, 122, 10, 32, 45, 59, 64, 65,
543
+ 67, 73, 77, 78, 80, 84, 95, 9,
544
+ 13, 48, 57, 66, 90, 97, 122, 10,
545
+ 32, 34, 45, 59, 64, 65, 67, 73,
546
+ 77, 78, 80, 84, 95, 9, 13, 48,
547
+ 57, 66, 90, 97, 122, 0
548
+ ]
549
+
550
+ class << self
551
+ attr_accessor :_bind_parser_single_lengths
552
+ private :_bind_parser_single_lengths, :_bind_parser_single_lengths=
553
+ end
554
+ self._bind_parser_single_lengths = [
555
+ 0, 2, 9, 1, 8, 1, 2, 1,
556
+ 1, 1, 1, 1, 1, 3, 2, 1,
557
+ 3, 3, 4, 3, 1, 1, 2, 1,
558
+ 1, 1, 2, 1, 1, 1, 2, 1,
559
+ 1, 1, 1, 1, 1, 2, 5, 4,
560
+ 1, 1, 8, 1, 1, 1, 1, 1,
561
+ 1, 1, 1, 1, 1, 2, 3, 2,
562
+ 3, 2, 1, 3, 2, 3, 2, 3,
563
+ 2, 3, 2, 2, 2, 3, 1, 1,
564
+ 1, 1, 1, 1, 1, 1, 1, 1,
565
+ 1, 1, 2, 2, 1, 1, 1, 2,
566
+ 3, 3, 1, 0, 0, 3, 8, 2,
567
+ 3, 1, 3, 9, 2, 2, 2, 3,
568
+ 2, 4, 4, 4, 4, 3, 9, 5,
569
+ 9, 9, 4, 3, 9, 4, 3, 8,
570
+ 1, 9, 5, 3, 3, 10, 3, 3,
571
+ 3, 3, 3, 3, 5, 9, 4, 4,
572
+ 4, 4, 4, 3, 9, 1, 2, 1,
573
+ 2, 1, 1, 2, 3, 1, 3, 1,
574
+ 1, 2, 1, 1, 1, 1, 1, 1,
575
+ 1, 1, 1, 3, 5, 4, 3, 1,
576
+ 3, 2, 1, 5, 5, 6, 5, 3,
577
+ 3, 4, 3, 3, 3, 4, 3, 3,
578
+ 3, 4, 3, 3, 3, 3, 4, 3,
579
+ 6, 6, 6, 6, 5, 3, 3, 10,
580
+ 6, 5, 9, 9, 10, 4, 4, 3,
581
+ 9, 3, 9, 3, 3, 4, 4, 4,
582
+ 4, 3, 3, 4, 3, 9, 4, 3,
583
+ 2, 4, 4, 4, 4, 4, 3, 3,
584
+ 3, 3, 3, 3, 3, 3, 3, 3,
585
+ 5, 3, 3, 10, 5, 5, 6, 5,
586
+ 3, 3, 4, 3, 3, 3, 4, 3,
587
+ 3, 3, 4, 3, 4, 4, 4, 4,
588
+ 3, 2, 5, 4, 4, 3, 9, 4,
589
+ 4, 3, 3, 4, 3, 2, 3, 4,
590
+ 4, 4, 4, 4, 3, 3, 6, 5,
591
+ 2, 2, 9, 3, 3, 6, 6, 6,
592
+ 6, 6, 5, 3, 3, 10, 5, 4,
593
+ 5, 5, 10, 6, 6, 6, 6, 5,
594
+ 10, 6, 5, 10, 6, 5, 9, 6,
595
+ 6, 6, 6, 6, 5, 10, 6, 6,
596
+ 13, 13, 13, 7, 7, 14, 13, 6,
597
+ 13, 13, 14, 7, 7, 14, 6, 6,
598
+ 13, 7, 7, 14, 6, 13, 14, 13,
599
+ 14, 13, 14
600
+ ]
601
+
602
+ class << self
603
+ attr_accessor :_bind_parser_range_lengths
604
+ private :_bind_parser_range_lengths, :_bind_parser_range_lengths=
605
+ end
606
+ self._bind_parser_range_lengths = [
607
+ 0, 1, 2, 2, 1, 1, 3, 1,
608
+ 2, 1, 2, 1, 2, 2, 1, 0,
609
+ 2, 1, 3, 2, 1, 0, 2, 1,
610
+ 1, 0, 2, 1, 1, 0, 2, 1,
611
+ 0, 0, 0, 0, 1, 4, 4, 4,
612
+ 0, 1, 1, 0, 1, 2, 2, 0,
613
+ 0, 0, 0, 0, 1, 4, 4, 4,
614
+ 4, 1, 2, 2, 2, 2, 2, 2,
615
+ 2, 2, 2, 2, 1, 1, 0, 1,
616
+ 2, 0, 1, 2, 0, 1, 2, 0,
617
+ 1, 2, 4, 4, 0, 0, 1, 1,
618
+ 0, 1, 1, 1, 1, 4, 2, 4,
619
+ 4, 1, 4, 3, 2, 2, 2, 3,
620
+ 3, 4, 4, 4, 4, 4, 4, 4,
621
+ 1, 1, 4, 4, 2, 4, 4, 2,
622
+ 2, 4, 4, 3, 3, 3, 4, 5,
623
+ 4, 5, 4, 5, 4, 2, 4, 4,
624
+ 4, 4, 4, 4, 2, 3, 3, 0,
625
+ 0, 0, 0, 1, 2, 2, 1, 0,
626
+ 1, 1, 0, 0, 1, 2, 2, 2,
627
+ 2, 2, 2, 4, 4, 4, 1, 3,
628
+ 4, 4, 0, 4, 4, 5, 5, 4,
629
+ 4, 5, 5, 4, 4, 5, 5, 4,
630
+ 4, 5, 5, 4, 4, 4, 5, 5,
631
+ 4, 4, 4, 4, 4, 4, 4, 4,
632
+ 4, 4, 1, 1, 2, 4, 4, 4,
633
+ 4, 4, 4, 4, 3, 4, 4, 4,
634
+ 4, 4, 4, 4, 4, 1, 4, 4,
635
+ 2, 4, 4, 4, 4, 4, 4, 1,
636
+ 4, 5, 4, 5, 4, 5, 4, 5,
637
+ 4, 1, 1, 2, 4, 4, 5, 5,
638
+ 4, 4, 5, 5, 4, 4, 5, 5,
639
+ 4, 4, 5, 5, 4, 4, 4, 4,
640
+ 4, 4, 4, 4, 4, 4, 4, 4,
641
+ 4, 4, 4, 4, 4, 4, 4, 4,
642
+ 4, 4, 4, 4, 4, 4, 4, 4,
643
+ 2, 2, 2, 4, 4, 4, 4, 4,
644
+ 4, 4, 4, 1, 1, 2, 4, 4,
645
+ 4, 4, 3, 4, 4, 4, 4, 4,
646
+ 4, 4, 4, 2, 4, 4, 2, 4,
647
+ 4, 4, 4, 4, 4, 2, 4, 4,
648
+ 4, 4, 4, 5, 5, 5, 4, 4,
649
+ 4, 4, 4, 4, 4, 4, 4, 4,
650
+ 4, 4, 4, 4, 4, 4, 5, 4,
651
+ 4, 4, 4
652
+ ]
653
+
654
+ class << self
655
+ attr_accessor :_bind_parser_index_offsets
656
+ private :_bind_parser_index_offsets, :_bind_parser_index_offsets=
657
+ end
658
+ self._bind_parser_index_offsets = [
659
+ 0, 0, 4, 16, 20, 30, 33, 39,
660
+ 42, 46, 49, 53, 56, 60, 66, 70,
661
+ 72, 78, 83, 91, 97, 100, 102, 107,
662
+ 110, 113, 115, 120, 123, 126, 128, 133,
663
+ 136, 138, 140, 142, 144, 147, 154, 164,
664
+ 173, 175, 178, 188, 190, 193, 197, 201,
665
+ 203, 205, 207, 209, 211, 214, 221, 229,
666
+ 236, 244, 248, 252, 258, 263, 269, 274,
667
+ 280, 285, 291, 296, 301, 305, 310, 312,
668
+ 315, 319, 321, 324, 328, 330, 333, 337,
669
+ 339, 342, 346, 353, 360, 362, 364, 367,
670
+ 371, 375, 380, 383, 385, 387, 395, 406,
671
+ 413, 421, 424, 432, 445, 450, 455, 460,
672
+ 467, 473, 482, 491, 500, 509, 517, 531,
673
+ 541, 552, 563, 572, 580, 592, 601, 609,
674
+ 620, 624, 638, 648, 655, 662, 676, 684,
675
+ 693, 701, 710, 718, 727, 737, 749, 758,
676
+ 767, 776, 785, 794, 802, 814, 819, 825,
677
+ 827, 830, 832, 834, 838, 844, 848, 853,
678
+ 855, 858, 862, 864, 866, 869, 873, 877,
679
+ 881, 885, 889, 893, 901, 911, 920, 925,
680
+ 930, 938, 945, 947, 957, 967, 979, 990,
681
+ 998, 1006, 1016, 1025, 1033, 1041, 1051, 1060,
682
+ 1068, 1076, 1086, 1095, 1103, 1111, 1119, 1129,
683
+ 1138, 1149, 1160, 1171, 1182, 1192, 1200, 1208,
684
+ 1223, 1234, 1244, 1255, 1266, 1279, 1288, 1297,
685
+ 1305, 1319, 1327, 1341, 1349, 1356, 1365, 1374,
686
+ 1383, 1392, 1400, 1408, 1417, 1425, 1436, 1445,
687
+ 1453, 1458, 1467, 1476, 1485, 1494, 1503, 1511,
688
+ 1516, 1524, 1533, 1541, 1550, 1558, 1567, 1575,
689
+ 1584, 1594, 1599, 1604, 1617, 1627, 1637, 1649,
690
+ 1660, 1668, 1676, 1686, 1695, 1703, 1711, 1721,
691
+ 1730, 1738, 1746, 1756, 1765, 1774, 1783, 1792,
692
+ 1801, 1809, 1816, 1826, 1835, 1844, 1852, 1866,
693
+ 1875, 1884, 1892, 1900, 1909, 1917, 1924, 1932,
694
+ 1941, 1950, 1959, 1968, 1977, 1985, 1993, 2004,
695
+ 2014, 2019, 2024, 2036, 2044, 2052, 2063, 2074,
696
+ 2085, 2096, 2107, 2117, 2122, 2127, 2140, 2150,
697
+ 2159, 2169, 2179, 2193, 2204, 2215, 2226, 2237,
698
+ 2247, 2262, 2273, 2283, 2296, 2307, 2317, 2329,
699
+ 2340, 2351, 2362, 2373, 2384, 2394, 2407, 2418,
700
+ 2429, 2447, 2465, 2483, 2496, 2509, 2529, 2547,
701
+ 2558, 2576, 2594, 2613, 2625, 2637, 2656, 2667,
702
+ 2678, 2696, 2708, 2720, 2739, 2750, 2768, 2788,
703
+ 2806, 2825, 2843
704
+ ]
705
+
706
+ class << self
707
+ attr_accessor :_bind_parser_indicies
708
+ private :_bind_parser_indicies, :_bind_parser_indicies=
709
+ end
710
+ self._bind_parser_indicies = [
711
+ 0, 2, 0, 1, 0, 2, 4, 5,
712
+ 6, 7, 8, 9, 10, 0, 3, 1,
713
+ 11, 11, 12, 1, 13, 4, 5, 6,
714
+ 7, 8, 9, 10, 13, 1, 14, 14,
715
+ 1, 14, 16, 14, 15, 17, 1, 18,
716
+ 19, 1, 21, 20, 22, 1, 23, 22,
717
+ 1, 25, 24, 26, 1, 27, 26, 1,
718
+ 29, 28, 30, 1, 32, 31, 33, 31,
719
+ 30, 1, 34, 2, 34, 1, 35, 2,
720
+ 32, 31, 33, 31, 36, 1, 32, 31,
721
+ 33, 31, 1, 32, 31, 37, 33, 31,
722
+ 30, 36, 1, 32, 31, 33, 31, 36,
723
+ 1, 27, 38, 1, 27, 1, 27, 39,
724
+ 26, 38, 1, 27, 38, 1, 23, 40,
725
+ 1, 23, 1, 23, 41, 22, 40, 1,
726
+ 23, 40, 1, 18, 42, 1, 18, 1,
727
+ 18, 43, 19, 42, 1, 18, 42, 1,
728
+ 44, 1, 45, 1, 46, 1, 47, 1,
729
+ 48, 48, 1, 48, 49, 48, 49, 49,
730
+ 49, 1, 51, 50, 52, 53, 54, 50,
731
+ 52, 52, 52, 1, 51, 50, 52, 54,
732
+ 50, 52, 52, 52, 1, 55, 1, 56,
733
+ 56, 1, 56, 4, 5, 7, 8, 9,
734
+ 57, 10, 56, 1, 58, 1, 59, 59,
735
+ 1, 59, 59, 60, 1, 61, 61, 62,
736
+ 1, 63, 1, 64, 1, 65, 1, 66,
737
+ 1, 67, 1, 68, 68, 1, 68, 69,
738
+ 68, 69, 69, 69, 1, 70, 71, 72,
739
+ 70, 71, 71, 71, 1, 73, 74, 73,
740
+ 74, 74, 74, 1, 75, 76, 77, 75,
741
+ 76, 76, 76, 1, 78, 79, 78, 1,
742
+ 79, 79, 80, 1, 82, 81, 84, 81,
743
+ 83, 1, 85, 87, 85, 86, 1, 89,
744
+ 88, 91, 88, 90, 1, 92, 94, 92,
745
+ 93, 1, 96, 95, 98, 95, 97, 1,
746
+ 99, 101, 99, 100, 1, 103, 102, 105,
747
+ 102, 104, 1, 106, 108, 106, 107, 1,
748
+ 109, 110, 109, 111, 1, 112, 113, 112,
749
+ 1, 114, 34, 2, 34, 1, 115, 108,
750
+ 116, 116, 1, 116, 116, 107, 1, 117,
751
+ 101, 118, 118, 1, 118, 118, 100, 1,
752
+ 119, 94, 120, 120, 1, 120, 120, 93,
753
+ 1, 121, 87, 122, 122, 1, 122, 122,
754
+ 86, 1, 75, 76, 75, 76, 76, 76,
755
+ 1, 70, 71, 70, 71, 71, 71, 1,
756
+ 123, 1, 124, 1, 125, 125, 1, 125,
757
+ 126, 125, 1, 1, 128, 129, 127, 131,
758
+ 130, 132, 130, 1, 1, 133, 127, 134,
759
+ 1, 127, 1, 135, 136, 137, 135, 136,
760
+ 136, 136, 1, 138, 4, 5, 6, 7,
761
+ 8, 9, 10, 138, 3, 1, 135, 136,
762
+ 135, 136, 136, 136, 1, 139, 136, 137,
763
+ 139, 140, 136, 136, 1, 135, 135, 1,
764
+ 141, 136, 137, 141, 136, 136, 136, 1,
765
+ 142, 144, 4, 5, 6, 7, 8, 9,
766
+ 10, 142, 143, 145, 1, 11, 18, 11,
767
+ 146, 1, 11, 18, 11, 147, 1, 11,
768
+ 18, 11, 12, 1, 11, 18, 148, 11,
769
+ 146, 147, 1, 11, 18, 11, 147, 12,
770
+ 1, 135, 136, 137, 149, 135, 136, 136,
771
+ 136, 1, 135, 136, 137, 150, 135, 136,
772
+ 136, 136, 1, 135, 136, 137, 151, 135,
773
+ 136, 136, 136, 1, 135, 136, 137, 152,
774
+ 135, 136, 136, 136, 1, 153, 136, 137,
775
+ 153, 136, 136, 136, 1, 154, 49, 156,
776
+ 157, 158, 159, 160, 161, 162, 154, 155,
777
+ 49, 49, 1, 164, 163, 52, 53, 54,
778
+ 163, 165, 52, 52, 1, 166, 2, 4,
779
+ 5, 6, 7, 8, 9, 10, 166, 1,
780
+ 0, 2, 4, 5, 6, 7, 8, 9,
781
+ 10, 0, 1, 135, 136, 137, 167, 135,
782
+ 136, 136, 136, 1, 168, 136, 137, 168,
783
+ 136, 136, 136, 1, 169, 4, 5, 6,
784
+ 7, 8, 9, 57, 10, 169, 3, 1,
785
+ 135, 136, 137, 170, 135, 136, 136, 136,
786
+ 1, 171, 136, 137, 171, 136, 136, 136,
787
+ 1, 172, 4, 5, 6, 7, 8, 9,
788
+ 10, 172, 173, 1, 174, 174, 175, 1,
789
+ 176, 49, 156, 157, 158, 159, 160, 161,
790
+ 162, 176, 49, 49, 49, 1, 178, 177,
791
+ 52, 53, 54, 177, 52, 52, 52, 1,
792
+ 179, 16, 2, 179, 15, 17, 1, 180,
793
+ 16, 2, 180, 15, 17, 1, 180, 144,
794
+ 2, 4, 5, 6, 7, 8, 9, 10,
795
+ 180, 143, 145, 1, 139, 136, 181, 139,
796
+ 182, 136, 136, 1, 135, 136, 184, 135,
797
+ 183, 185, 136, 136, 1, 135, 136, 186,
798
+ 135, 185, 136, 136, 1, 135, 136, 188,
799
+ 135, 187, 189, 136, 136, 1, 135, 136,
800
+ 190, 135, 189, 136, 136, 1, 135, 136,
801
+ 192, 135, 191, 193, 136, 136, 1, 195,
802
+ 194, 136, 137, 33, 194, 193, 136, 136,
803
+ 1, 196, 2, 4, 5, 6, 7, 8,
804
+ 9, 10, 196, 3, 1, 135, 136, 137,
805
+ 197, 135, 136, 136, 136, 1, 135, 136,
806
+ 137, 198, 135, 136, 136, 136, 1, 135,
807
+ 136, 137, 199, 135, 136, 136, 136, 1,
808
+ 135, 136, 137, 200, 135, 136, 136, 136,
809
+ 1, 135, 136, 137, 201, 135, 136, 136,
810
+ 136, 1, 202, 136, 137, 202, 136, 136,
811
+ 136, 1, 203, 126, 4, 5, 6, 7,
812
+ 8, 9, 10, 203, 3, 1, 204, 204,
813
+ 204, 204, 1, 204, 205, 204, 204, 204,
814
+ 1, 206, 1, 207, 208, 1, 209, 1,
815
+ 210, 1, 211, 212, 211, 1, 213, 215,
816
+ 216, 213, 214, 1, 217, 217, 218, 1,
817
+ 219, 215, 216, 219, 1, 220, 1, 221,
818
+ 221, 1, 221, 216, 221, 1, 222, 1,
819
+ 223, 1, 224, 224, 1, 224, 224, 225,
820
+ 1, 226, 226, 227, 1, 228, 228, 229,
821
+ 1, 230, 230, 231, 1, 232, 232, 233,
822
+ 1, 234, 234, 235, 1, 236, 237, 238,
823
+ 236, 237, 237, 237, 1, 240, 239, 241,
824
+ 242, 243, 239, 241, 241, 241, 1, 240,
825
+ 239, 241, 243, 239, 241, 241, 241, 1,
826
+ 240, 239, 243, 239, 1, 244, 244, 244,
827
+ 244, 1, 211, 244, 245, 211, 244, 244,
828
+ 244, 1, 211, 244, 211, 244, 244, 244,
829
+ 1, 209, 1, 195, 194, 136, 137, 33,
830
+ 194, 246, 136, 136, 1, 195, 194, 136,
831
+ 137, 33, 194, 136, 136, 136, 1, 195,
832
+ 194, 136, 137, 247, 33, 194, 193, 246,
833
+ 136, 136, 1, 195, 194, 136, 137, 33,
834
+ 194, 246, 136, 136, 136, 1, 135, 136,
835
+ 190, 135, 248, 136, 136, 1, 135, 136,
836
+ 190, 135, 136, 136, 136, 1, 135, 136,
837
+ 190, 249, 135, 189, 248, 136, 136, 1,
838
+ 135, 136, 190, 135, 248, 136, 136, 136,
839
+ 1, 135, 136, 186, 135, 250, 136, 136,
840
+ 1, 135, 136, 186, 135, 136, 136, 136,
841
+ 1, 135, 136, 186, 251, 135, 185, 250,
842
+ 136, 136, 1, 135, 136, 186, 135, 250,
843
+ 136, 136, 136, 1, 139, 136, 181, 139,
844
+ 252, 136, 136, 1, 139, 136, 181, 139,
845
+ 140, 136, 136, 1, 139, 136, 181, 253,
846
+ 139, 182, 252, 136, 136, 1, 139, 136,
847
+ 181, 139, 252, 140, 136, 136, 1, 135,
848
+ 136, 181, 135, 254, 136, 136, 1, 135,
849
+ 136, 181, 135, 255, 136, 136, 1, 135,
850
+ 136, 181, 135, 136, 136, 136, 1, 135,
851
+ 136, 181, 256, 135, 254, 255, 136, 136,
852
+ 1, 135, 136, 181, 135, 255, 136, 136,
853
+ 136, 1, 51, 50, 52, 53, 54, 257,
854
+ 50, 52, 52, 52, 1, 51, 50, 52,
855
+ 53, 54, 258, 50, 52, 52, 52, 1,
856
+ 51, 50, 52, 53, 54, 259, 50, 52,
857
+ 52, 52, 1, 51, 50, 52, 53, 54,
858
+ 260, 50, 52, 52, 52, 1, 262, 261,
859
+ 52, 53, 54, 261, 52, 52, 52, 1,
860
+ 263, 49, 2, 263, 49, 49, 49, 1,
861
+ 264, 49, 2, 264, 49, 49, 49, 1,
862
+ 264, 49, 2, 156, 157, 158, 159, 160,
863
+ 161, 162, 264, 155, 49, 49, 1, 51,
864
+ 50, 52, 53, 54, 265, 50, 52, 52,
865
+ 52, 1, 267, 266, 52, 53, 54, 266,
866
+ 52, 52, 52, 1, 268, 2, 4, 5,
867
+ 7, 8, 9, 57, 10, 268, 1, 269,
868
+ 2, 4, 5, 7, 8, 9, 57, 10,
869
+ 269, 1, 269, 2, 4, 5, 6, 7,
870
+ 8, 9, 57, 10, 269, 3, 1, 135,
871
+ 136, 137, 270, 135, 136, 136, 136, 1,
872
+ 135, 136, 137, 271, 135, 136, 136, 136,
873
+ 1, 272, 136, 137, 272, 136, 136, 136,
874
+ 1, 273, 69, 275, 276, 277, 278, 279,
875
+ 280, 281, 273, 274, 69, 69, 1, 282,
876
+ 71, 72, 282, 283, 71, 71, 1, 284,
877
+ 74, 285, 286, 287, 288, 289, 290, 291,
878
+ 284, 74, 74, 74, 1, 292, 76, 77,
879
+ 292, 76, 76, 76, 1, 293, 79, 16,
880
+ 293, 15, 17, 1, 75, 76, 77, 294,
881
+ 75, 76, 76, 76, 1, 75, 76, 77,
882
+ 295, 75, 76, 76, 76, 1, 75, 76,
883
+ 77, 296, 75, 76, 76, 76, 1, 75,
884
+ 76, 77, 297, 75, 76, 76, 76, 1,
885
+ 298, 76, 77, 298, 76, 76, 76, 1,
886
+ 299, 79, 49, 299, 49, 49, 49, 1,
887
+ 75, 76, 77, 300, 75, 76, 76, 76,
888
+ 1, 301, 76, 77, 301, 76, 76, 76,
889
+ 1, 302, 79, 4, 5, 7, 8, 9,
890
+ 57, 10, 302, 1, 75, 76, 77, 303,
891
+ 75, 76, 76, 76, 1, 304, 76, 77,
892
+ 304, 76, 76, 76, 1, 305, 79, 305,
893
+ 60, 1, 75, 76, 77, 306, 75, 76,
894
+ 76, 76, 1, 75, 76, 77, 307, 75,
895
+ 76, 76, 76, 1, 75, 76, 77, 308,
896
+ 75, 76, 76, 76, 1, 75, 76, 77,
897
+ 309, 75, 76, 76, 76, 1, 75, 76,
898
+ 77, 310, 75, 76, 76, 76, 1, 311,
899
+ 76, 77, 311, 76, 76, 76, 1, 312,
900
+ 126, 79, 312, 1, 313, 71, 72, 313,
901
+ 71, 71, 71, 1, 314, 74, 316, 314,
902
+ 315, 317, 74, 74, 1, 75, 76, 318,
903
+ 75, 319, 76, 76, 1, 75, 76, 321,
904
+ 75, 320, 322, 76, 76, 1, 75, 76,
905
+ 323, 75, 322, 76, 76, 1, 75, 76,
906
+ 325, 75, 324, 326, 76, 76, 1, 75,
907
+ 76, 327, 75, 326, 76, 76, 1, 75,
908
+ 76, 329, 75, 328, 330, 76, 76, 1,
909
+ 332, 331, 76, 77, 33, 331, 330, 76,
910
+ 76, 1, 333, 79, 2, 333, 1, 334,
911
+ 79, 2, 334, 1, 334, 79, 2, 4,
912
+ 5, 6, 7, 8, 9, 10, 334, 3,
913
+ 1, 332, 331, 76, 77, 33, 331, 335,
914
+ 76, 76, 1, 332, 331, 76, 77, 33,
915
+ 331, 76, 76, 76, 1, 332, 331, 76,
916
+ 77, 336, 33, 331, 330, 335, 76, 76,
917
+ 1, 332, 331, 76, 77, 33, 331, 335,
918
+ 76, 76, 76, 1, 75, 76, 327, 75,
919
+ 337, 76, 76, 1, 75, 76, 327, 75,
920
+ 76, 76, 76, 1, 75, 76, 327, 338,
921
+ 75, 326, 337, 76, 76, 1, 75, 76,
922
+ 327, 75, 337, 76, 76, 76, 1, 75,
923
+ 76, 323, 75, 339, 76, 76, 1, 75,
924
+ 76, 323, 75, 76, 76, 76, 1, 75,
925
+ 76, 323, 340, 75, 322, 339, 76, 76,
926
+ 1, 75, 76, 323, 75, 339, 76, 76,
927
+ 76, 1, 75, 76, 318, 75, 341, 76,
928
+ 76, 1, 75, 76, 318, 75, 76, 76,
929
+ 76, 1, 75, 76, 318, 342, 75, 319,
930
+ 341, 76, 76, 1, 75, 76, 318, 75,
931
+ 341, 76, 76, 76, 1, 70, 71, 72,
932
+ 343, 70, 71, 71, 71, 1, 70, 71,
933
+ 72, 344, 70, 71, 71, 71, 1, 70,
934
+ 71, 72, 345, 70, 71, 71, 71, 1,
935
+ 70, 71, 72, 346, 70, 71, 71, 71,
936
+ 1, 347, 71, 72, 347, 71, 71, 71,
937
+ 1, 348, 349, 348, 349, 349, 349, 1,
938
+ 351, 350, 352, 353, 54, 350, 352, 352,
939
+ 352, 1, 351, 350, 352, 54, 350, 352,
940
+ 352, 352, 1, 70, 71, 72, 354, 70,
941
+ 71, 71, 71, 1, 355, 71, 72, 355,
942
+ 71, 71, 71, 1, 356, 74, 285, 286,
943
+ 288, 289, 290, 357, 291, 356, 74, 74,
944
+ 74, 1, 75, 76, 77, 358, 75, 76,
945
+ 76, 76, 1, 75, 76, 77, 359, 75,
946
+ 76, 76, 76, 1, 360, 76, 77, 360,
947
+ 76, 76, 76, 1, 361, 79, 69, 361,
948
+ 69, 69, 69, 1, 70, 71, 72, 362,
949
+ 70, 71, 71, 71, 1, 363, 71, 72,
950
+ 363, 71, 71, 71, 1, 364, 74, 364,
951
+ 365, 74, 74, 1, 366, 76, 77, 366,
952
+ 367, 76, 76, 1, 70, 71, 72, 368,
953
+ 70, 71, 71, 71, 1, 70, 71, 72,
954
+ 369, 70, 71, 71, 71, 1, 70, 71,
955
+ 72, 370, 70, 71, 71, 71, 1, 70,
956
+ 71, 72, 371, 70, 71, 71, 71, 1,
957
+ 70, 71, 72, 372, 70, 71, 71, 71,
958
+ 1, 373, 71, 72, 373, 71, 71, 71,
959
+ 1, 374, 126, 74, 374, 74, 74, 74,
960
+ 1, 51, 50, 52, 53, 54, 375, 50,
961
+ 52, 52, 52, 1, 377, 376, 52, 53,
962
+ 54, 376, 52, 52, 52, 1, 378, 2,
963
+ 378, 60, 1, 379, 2, 379, 60, 1,
964
+ 379, 2, 4, 5, 6, 7, 8, 9,
965
+ 10, 379, 173, 1, 380, 136, 137, 380,
966
+ 381, 136, 136, 1, 382, 136, 137, 382,
967
+ 383, 136, 136, 1, 51, 50, 52, 53,
968
+ 54, 384, 50, 52, 52, 52, 1, 51,
969
+ 50, 52, 53, 54, 385, 50, 52, 52,
970
+ 52, 1, 51, 50, 52, 53, 54, 386,
971
+ 50, 52, 52, 52, 1, 51, 50, 52,
972
+ 53, 54, 387, 50, 52, 52, 52, 1,
973
+ 51, 50, 52, 53, 54, 388, 50, 52,
974
+ 52, 52, 1, 390, 389, 52, 53, 54,
975
+ 389, 52, 52, 52, 1, 391, 126, 2,
976
+ 391, 1, 392, 126, 2, 392, 1, 392,
977
+ 126, 2, 4, 5, 6, 7, 8, 9,
978
+ 10, 392, 3, 1, 394, 393, 395, 396,
979
+ 54, 393, 395, 395, 395, 1, 394, 393,
980
+ 395, 54, 393, 395, 395, 395, 1, 398,
981
+ 397, 395, 396, 54, 397, 399, 395, 395,
982
+ 1, 401, 400, 395, 396, 54, 400, 395,
983
+ 395, 395, 1, 402, 144, 2, 4, 5,
984
+ 6, 7, 8, 9, 10, 402, 143, 145,
985
+ 1, 394, 393, 395, 396, 54, 403, 393,
986
+ 395, 395, 395, 1, 394, 393, 395, 396,
987
+ 54, 404, 393, 395, 395, 395, 1, 394,
988
+ 393, 395, 396, 54, 405, 393, 395, 395,
989
+ 395, 1, 394, 393, 395, 396, 54, 406,
990
+ 393, 395, 395, 395, 1, 408, 407, 395,
991
+ 396, 54, 407, 395, 395, 395, 1, 409,
992
+ 49, 2, 156, 157, 158, 159, 160, 161,
993
+ 162, 409, 155, 49, 49, 1, 394, 393,
994
+ 395, 396, 54, 410, 393, 395, 395, 395,
995
+ 1, 412, 411, 395, 396, 54, 411, 395,
996
+ 395, 395, 1, 413, 2, 4, 5, 6,
997
+ 7, 8, 9, 57, 10, 413, 3, 1,
998
+ 394, 393, 395, 396, 54, 414, 393, 395,
999
+ 395, 395, 1, 416, 415, 395, 396, 54,
1000
+ 415, 395, 395, 395, 1, 417, 2, 4,
1001
+ 5, 6, 7, 8, 9, 10, 417, 173,
1002
+ 1, 394, 393, 395, 396, 54, 418, 393,
1003
+ 395, 395, 395, 1, 394, 393, 395, 396,
1004
+ 54, 419, 393, 395, 395, 395, 1, 394,
1005
+ 393, 395, 396, 54, 420, 393, 395, 395,
1006
+ 395, 1, 394, 393, 395, 396, 54, 421,
1007
+ 393, 395, 395, 395, 1, 394, 393, 395,
1008
+ 396, 54, 422, 393, 395, 395, 395, 1,
1009
+ 424, 423, 395, 396, 54, 423, 395, 395,
1010
+ 395, 1, 425, 126, 2, 4, 5, 6,
1011
+ 7, 8, 9, 10, 425, 3, 1, 427,
1012
+ 426, 428, 2, 429, 430, 426, 428, 428,
1013
+ 428, 1, 432, 431, 428, 2, 429, 430,
1014
+ 431, 428, 428, 428, 1, 432, 431, 428,
1015
+ 2, 429, 434, 435, 436, 437, 438, 439,
1016
+ 440, 430, 431, 433, 428, 428, 1, 442,
1017
+ 441, 428, 2, 429, 434, 435, 436, 437,
1018
+ 438, 439, 440, 430, 441, 428, 428, 428,
1019
+ 1, 432, 431, 428, 2, 429, 434, 435,
1020
+ 436, 437, 438, 439, 440, 430, 431, 428,
1021
+ 428, 428, 1, 444, 443, 428, 446, 2,
1022
+ 429, 430, 443, 445, 447, 428, 428, 1,
1023
+ 449, 448, 428, 446, 2, 429, 430, 448,
1024
+ 445, 447, 428, 428, 1, 449, 448, 428,
1025
+ 451, 2, 429, 434, 435, 436, 437, 438,
1026
+ 439, 440, 430, 448, 450, 452, 428, 428,
1027
+ 1, 454, 453, 428, 2, 429, 434, 435,
1028
+ 436, 437, 438, 439, 440, 430, 453, 433,
1029
+ 428, 428, 1, 456, 455, 457, 2, 429,
1030
+ 430, 455, 457, 457, 457, 1, 459, 458,
1031
+ 428, 2, 429, 434, 435, 437, 438, 439,
1032
+ 460, 440, 430, 458, 428, 428, 428, 1,
1033
+ 462, 461, 428, 2, 429, 434, 435, 437,
1034
+ 438, 439, 460, 440, 430, 461, 428, 428,
1035
+ 428, 1, 462, 461, 428, 2, 429, 434,
1036
+ 435, 436, 437, 438, 439, 460, 440, 430,
1037
+ 461, 433, 428, 428, 1, 464, 463, 79,
1038
+ 428, 2, 429, 430, 463, 428, 428, 428,
1039
+ 1, 466, 465, 79, 428, 2, 429, 430,
1040
+ 465, 428, 428, 428, 1, 466, 465, 79,
1041
+ 428, 2, 429, 434, 435, 436, 437, 438,
1042
+ 439, 440, 430, 465, 433, 428, 428, 1,
1043
+ 468, 467, 428, 2, 429, 430, 467, 469,
1044
+ 428, 428, 1, 471, 470, 428, 2, 429,
1045
+ 430, 470, 469, 428, 428, 1, 471, 470,
1046
+ 428, 2, 429, 434, 435, 436, 437, 438,
1047
+ 439, 440, 430, 470, 472, 428, 428, 1,
1048
+ 474, 473, 126, 428, 2, 429, 430, 473,
1049
+ 428, 428, 428, 1, 476, 475, 126, 428,
1050
+ 2, 429, 430, 475, 428, 428, 428, 1,
1051
+ 476, 475, 126, 428, 2, 429, 434, 435,
1052
+ 436, 437, 438, 439, 440, 430, 475, 433,
1053
+ 428, 428, 1, 478, 477, 457, 2, 429,
1054
+ 430, 477, 457, 457, 457, 1, 478, 477,
1055
+ 457, 2, 429, 480, 481, 482, 483, 484,
1056
+ 485, 486, 430, 477, 479, 457, 457, 1,
1057
+ 488, 487, 428, 451, 2, 429, 434, 435,
1058
+ 436, 437, 438, 439, 440, 430, 487, 450,
1059
+ 452, 428, 428, 1, 490, 489, 457, 2,
1060
+ 429, 480, 481, 482, 483, 484, 485, 486,
1061
+ 430, 489, 479, 457, 457, 1, 492, 491,
1062
+ 428, 2, 429, 434, 435, 436, 437, 438,
1063
+ 439, 460, 440, 430, 491, 433, 428, 428,
1064
+ 1, 494, 493, 428, 2, 429, 434, 435,
1065
+ 436, 437, 438, 439, 440, 430, 493, 472,
1066
+ 428, 428, 1, 496, 495, 126, 428, 2,
1067
+ 429, 434, 435, 436, 437, 438, 439, 440,
1068
+ 430, 495, 433, 428, 428, 1, 0
1069
+ ]
1070
+
1071
+ class << self
1072
+ attr_accessor :_bind_parser_trans_targs
1073
+ private :_bind_parser_trans_targs, :_bind_parser_trans_targs=
1074
+ end
1075
+ self._bind_parser_trans_targs = [
1076
+ 2, 0, 15, 3, 5, 32, 40, 43,
1077
+ 47, 48, 84, 4, 3, 4, 6, 7,
1078
+ 30, 28, 8, 28, 9, 26, 24, 10,
1079
+ 11, 22, 20, 12, 13, 18, 16, 14,
1080
+ 326, 15, 14, 326, 17, 19, 21, 23,
1081
+ 25, 27, 29, 31, 33, 34, 35, 36,
1082
+ 37, 38, 14, 326, 38, 39, 15, 41,
1083
+ 42, 50, 44, 45, 46, 37, 46, 36,
1084
+ 49, 36, 51, 52, 53, 54, 55, 54,
1085
+ 83, 55, 56, 57, 56, 82, 57, 58,
1086
+ 59, 60, 60, 59, 79, 60, 61, 79,
1087
+ 62, 62, 61, 76, 62, 63, 76, 64,
1088
+ 64, 63, 73, 64, 65, 73, 66, 66,
1089
+ 65, 70, 66, 67, 70, 68, 69, 67,
1090
+ 68, 69, 326, 71, 72, 74, 75, 77,
1091
+ 78, 80, 81, 85, 86, 87, 88, 88,
1092
+ 89, 90, 14, 326, 15, 91, 92, 94,
1093
+ 93, 95, 94, 94, 96, 99, 99, 100,
1094
+ 103, 101, 101, 102, 104, 106, 107, 108,
1095
+ 109, 110, 110, 111, 122, 192, 200, 286,
1096
+ 293, 294, 296, 112, 329, 111, 112, 115,
1097
+ 116, 116, 118, 119, 119, 120, 121, 120,
1098
+ 121, 123, 331, 123, 125, 127, 183, 128,
1099
+ 181, 179, 129, 130, 177, 175, 131, 132,
1100
+ 173, 171, 133, 334, 133, 109, 136, 109,
1101
+ 138, 139, 140, 140, 142, 143, 144, 145,
1102
+ 170, 146, 147, 148, 167, 148, 149, 151,
1103
+ 154, 150, 149, 150, 152, 153, 155, 156,
1104
+ 157, 158, 159, 158, 159, 160, 161, 160,
1105
+ 161, 162, 163, 162, 163, 164, 166, 14,
1106
+ 326, 164, 165, 15, 168, 169, 172, 174,
1107
+ 176, 178, 180, 182, 184, 186, 188, 189,
1108
+ 191, 193, 194, 195, 196, 197, 335, 197,
1109
+ 199, 201, 202, 336, 202, 204, 206, 207,
1110
+ 208, 208, 209, 232, 260, 268, 275, 279,
1111
+ 280, 282, 210, 209, 210, 211, 213, 219,
1112
+ 222, 225, 226, 228, 212, 212, 214, 215,
1113
+ 216, 217, 218, 218, 220, 221, 221, 223,
1114
+ 224, 224, 217, 227, 217, 229, 230, 231,
1115
+ 231, 233, 233, 234, 258, 256, 235, 256,
1116
+ 236, 254, 252, 237, 238, 250, 248, 239,
1117
+ 240, 246, 244, 241, 339, 241, 243, 245,
1118
+ 247, 249, 251, 253, 255, 257, 259, 261,
1119
+ 262, 263, 264, 265, 265, 266, 241, 339,
1120
+ 266, 267, 269, 270, 270, 271, 272, 273,
1121
+ 274, 274, 276, 277, 277, 278, 218, 278,
1122
+ 264, 281, 264, 283, 284, 285, 285, 287,
1123
+ 288, 342, 288, 290, 110, 291, 110, 292,
1124
+ 196, 295, 196, 297, 298, 299, 345, 299,
1125
+ 301, 133, 334, 302, 303, 133, 334, 304,
1126
+ 306, 350, 306, 308, 309, 310, 311, 312,
1127
+ 351, 312, 314, 315, 352, 315, 317, 318,
1128
+ 353, 318, 311, 321, 311, 323, 324, 325,
1129
+ 354, 325, 1, 327, 93, 97, 141, 2,
1130
+ 328, 96, 98, 105, 114, 117, 134, 135,
1131
+ 137, 113, 330, 124, 332, 187, 190, 188,
1132
+ 125, 333, 126, 185, 183, 2, 328, 198,
1133
+ 348, 302, 203, 337, 205, 204, 338, 242,
1134
+ 340, 243, 341, 289, 343, 292, 290, 344,
1135
+ 291, 300, 346, 301, 347, 199, 349, 304,
1136
+ 305, 307, 313, 316, 319, 320, 322, 125,
1137
+ 333, 199, 349, 204, 338, 290, 344, 301,
1138
+ 347
1139
+ ]
1140
+
1141
+ class << self
1142
+ attr_accessor :_bind_parser_trans_actions
1143
+ private :_bind_parser_trans_actions, :_bind_parser_trans_actions=
1144
+ end
1145
+ self._bind_parser_trans_actions = [
1146
+ 25, 0, 0, 55, 37, 0, 0, 0,
1147
+ 0, 0, 0, 7, 1, 0, 0, 3,
1148
+ 3, 3, 0, 0, 0, 0, 0, 0,
1149
+ 0, 0, 0, 0, 0, 0, 0, 33,
1150
+ 103, 33, 0, 0, 0, 0, 0, 0,
1151
+ 0, 0, 0, 0, 0, 0, 0, 51,
1152
+ 0, 3, 35, 109, 0, 0, 35, 0,
1153
+ 0, 0, 41, 0, 55, 5, 1, 39,
1154
+ 0, 45, 0, 47, 0, 3, 35, 0,
1155
+ 0, 0, 3, 29, 0, 0, 0, 0,
1156
+ 55, 15, 67, 1, 15, 0, 55, 0,
1157
+ 17, 70, 1, 17, 0, 55, 0, 19,
1158
+ 73, 1, 19, 0, 55, 0, 21, 76,
1159
+ 1, 21, 0, 55, 0, 23, 23, 1,
1160
+ 0, 0, 53, 0, 0, 0, 0, 0,
1161
+ 0, 0, 0, 0, 43, 0, 3, 0,
1162
+ 0, 0, 31, 97, 31, 0, 0, 25,
1163
+ 0, 0, 0, 85, 1, 25, 0, 115,
1164
+ 115, 115, 1, 1, 1, 0, 0, 0,
1165
+ 51, 25, 0, 115, 112, 3, 3, 3,
1166
+ 3, 3, 3, 64, 119, 1, 0, 0,
1167
+ 25, 0, 41, 25, 0, 55, 61, 1,
1168
+ 0, 35, 109, 0, 25, 0, 1, 0,
1169
+ 0, 0, 0, 0, 0, 0, 0, 0,
1170
+ 0, 0, 88, 131, 0, 39, 0, 45,
1171
+ 0, 43, 25, 0, 0, 0, 0, 0,
1172
+ 0, 0, 0, 25, 0, 0, 55, 0,
1173
+ 0, 7, 1, 0, 0, 0, 0, 49,
1174
+ 0, 55, 9, 1, 0, 55, 11, 1,
1175
+ 0, 55, 13, 1, 0, 3, 3, 27,
1176
+ 94, 0, 0, 27, 0, 0, 0, 0,
1177
+ 0, 0, 0, 0, 1, 1, 0, 0,
1178
+ 0, 0, 0, 0, 51, 35, 109, 0,
1179
+ 25, 0, 35, 109, 0, 25, 0, 47,
1180
+ 25, 0, 115, 112, 3, 3, 3, 3,
1181
+ 3, 3, 64, 1, 0, 112, 3, 3,
1182
+ 3, 3, 3, 3, 29, 0, 0, 0,
1183
+ 0, 51, 29, 0, 0, 29, 0, 41,
1184
+ 29, 0, 39, 0, 45, 0, 43, 29,
1185
+ 0, 35, 0, 3, 3, 3, 0, 0,
1186
+ 0, 0, 0, 0, 0, 0, 0, 0,
1187
+ 0, 0, 0, 100, 139, 0, 25, 0,
1188
+ 0, 0, 0, 0, 0, 0, 0, 0,
1189
+ 0, 0, 51, 35, 0, 3, 106, 143,
1190
+ 0, 0, 0, 35, 0, 3, 0, 47,
1191
+ 29, 0, 41, 35, 0, 115, 58, 1,
1192
+ 39, 0, 45, 0, 43, 35, 0, 41,
1193
+ 35, 109, 0, 25, 123, 1, 82, 1,
1194
+ 39, 0, 45, 0, 43, 35, 109, 0,
1195
+ 25, 91, 135, 0, 0, 127, 147, 1,
1196
+ 91, 135, 0, 0, 0, 0, 51, 91,
1197
+ 135, 0, 0, 91, 135, 0, 41, 91,
1198
+ 135, 0, 39, 0, 45, 0, 43, 91,
1199
+ 135, 0, 3, 3, 3, 3, 3, 79,
1200
+ 79, 115, 112, 3, 3, 3, 3, 3,
1201
+ 3, 3, 3, 3, 3, 3, 3, 3,
1202
+ 79, 79, 115, 115, 115, 3, 3, 3,
1203
+ 3, 3, 3, 3, 3, 79, 79, 3,
1204
+ 3, 79, 79, 3, 3, 115, 79, 79,
1205
+ 115, 3, 3, 79, 79, 79, 79, 115,
1206
+ 112, 3, 3, 3, 3, 3, 3, 3,
1207
+ 3, 3, 3, 3, 3, 3, 3, 3,
1208
+ 3
1209
+ ]
1210
+
1211
+ class << self
1212
+ attr_accessor :bind_parser_start
1213
+ end
1214
+ self.bind_parser_start = 326;
1215
+ class << self
1216
+ attr_accessor :bind_parser_first_final
1217
+ end
1218
+ self.bind_parser_first_final = 326;
1219
+ class << self
1220
+ attr_accessor :bind_parser_error
1221
+ end
1222
+ self.bind_parser_error = 0;
1223
+
1224
+ class << self
1225
+ attr_accessor :bind_parser_en_main
1226
+ end
1227
+ self.bind_parser_en_main = 326;
1228
+
1229
+
1230
+ # line 100 "lib/bind/zone_parser.rl"
1231
+
1232
+ # line 1233 "lib/bind/zone_parser.rb"
1233
+ begin
1234
+ p ||= 0
1235
+ pe ||= data.length
1236
+ cs = bind_parser_start
1237
+ end
1238
+
1239
+ # line 101 "lib/bind/zone_parser.rl"
1240
+
1241
+ # line 1242 "lib/bind/zone_parser.rb"
1242
+ begin
1243
+ _klen, _trans, _keys, _acts, _nacts = nil
1244
+ _goto_level = 0
1245
+ _resume = 10
1246
+ _eof_trans = 15
1247
+ _again = 20
1248
+ _test_eof = 30
1249
+ _out = 40
1250
+ while true
1251
+ _trigger_goto = false
1252
+ if _goto_level <= 0
1253
+ if p == pe
1254
+ _goto_level = _test_eof
1255
+ next
1256
+ end
1257
+ if cs == 0
1258
+ _goto_level = _out
1259
+ next
1260
+ end
1261
+ end
1262
+ if _goto_level <= _resume
1263
+ _keys = _bind_parser_key_offsets[cs]
1264
+ _trans = _bind_parser_index_offsets[cs]
1265
+ _klen = _bind_parser_single_lengths[cs]
1266
+ _break_match = false
1267
+
1268
+ begin
1269
+ if _klen > 0
1270
+ _lower = _keys
1271
+ _upper = _keys + _klen - 1
1272
+
1273
+ loop do
1274
+ break if _upper < _lower
1275
+ _mid = _lower + ( (_upper - _lower) >> 1 )
1276
+
1277
+ if data[p] < _bind_parser_trans_keys[_mid]
1278
+ _upper = _mid - 1
1279
+ elsif data[p] > _bind_parser_trans_keys[_mid]
1280
+ _lower = _mid + 1
1281
+ else
1282
+ _trans += (_mid - _keys)
1283
+ _break_match = true
1284
+ break
1285
+ end
1286
+ end # loop
1287
+ break if _break_match
1288
+ _keys += _klen
1289
+ _trans += _klen
1290
+ end
1291
+ _klen = _bind_parser_range_lengths[cs]
1292
+ if _klen > 0
1293
+ _lower = _keys
1294
+ _upper = _keys + (_klen << 1) - 2
1295
+ loop do
1296
+ break if _upper < _lower
1297
+ _mid = _lower + (((_upper-_lower) >> 1) & ~1)
1298
+ if data[p] < _bind_parser_trans_keys[_mid]
1299
+ _upper = _mid - 2
1300
+ elsif data[p] > _bind_parser_trans_keys[_mid+1]
1301
+ _lower = _mid + 2
1302
+ else
1303
+ _trans += ((_mid - _keys) >> 1)
1304
+ _break_match = true
1305
+ break
1306
+ end
1307
+ end # loop
1308
+ break if _break_match
1309
+ _trans += _klen
1310
+ end
1311
+ end while false
1312
+ _trans = _bind_parser_indicies[_trans]
1313
+ cs = _bind_parser_trans_targs[_trans]
1314
+ if _bind_parser_trans_actions[_trans] != 0
1315
+ _acts = _bind_parser_trans_actions[_trans]
1316
+ _nacts = _bind_parser_actions[_acts]
1317
+ _acts += 1
1318
+ while _nacts > 0
1319
+ _nacts -= 1
1320
+ _acts += 1
1321
+ case _bind_parser_actions[_acts - 1]
1322
+ when 0 then
1323
+ # line 4 "lib/bind/zone_parser.rl"
1324
+ begin
1325
+ num = (num * 10) + (data[p] - ?0) end
1326
+ # line 4 "lib/bind/zone_parser.rl"
1327
+ when 1 then
1328
+ # line 5 "lib/bind/zone_parser.rl"
1329
+ begin
1330
+ num = 0 end
1331
+ # line 5 "lib/bind/zone_parser.rl"
1332
+ when 2 then
1333
+ # line 6 "lib/bind/zone_parser.rl"
1334
+ begin
1335
+ str_p = p end
1336
+ # line 6 "lib/bind/zone_parser.rl"
1337
+ when 3 then
1338
+ # line 8 "lib/bind/zone_parser.rl"
1339
+ begin
1340
+ record[:dist] = num end
1341
+ # line 8 "lib/bind/zone_parser.rl"
1342
+ when 4 then
1343
+ # line 9 "lib/bind/zone_parser.rl"
1344
+ begin
1345
+ record[:ttl] = num end
1346
+ # line 9 "lib/bind/zone_parser.rl"
1347
+ when 5 then
1348
+ # line 10 "lib/bind/zone_parser.rl"
1349
+ begin
1350
+ record[:priority] = num end
1351
+ # line 10 "lib/bind/zone_parser.rl"
1352
+ when 6 then
1353
+ # line 11 "lib/bind/zone_parser.rl"
1354
+ begin
1355
+ record[:weight] = num end
1356
+ # line 11 "lib/bind/zone_parser.rl"
1357
+ when 7 then
1358
+ # line 12 "lib/bind/zone_parser.rl"
1359
+ begin
1360
+ record[:port] = num end
1361
+ # line 12 "lib/bind/zone_parser.rl"
1362
+ when 8 then
1363
+ # line 13 "lib/bind/zone_parser.rl"
1364
+ begin
1365
+ record[:serial] = num end
1366
+ # line 13 "lib/bind/zone_parser.rl"
1367
+ when 9 then
1368
+ # line 14 "lib/bind/zone_parser.rl"
1369
+ begin
1370
+ record[:refresh] = num end
1371
+ # line 14 "lib/bind/zone_parser.rl"
1372
+ when 10 then
1373
+ # line 15 "lib/bind/zone_parser.rl"
1374
+ begin
1375
+ record[:retry] = num end
1376
+ # line 15 "lib/bind/zone_parser.rl"
1377
+ when 11 then
1378
+ # line 16 "lib/bind/zone_parser.rl"
1379
+ begin
1380
+ record[:expire] = num end
1381
+ # line 16 "lib/bind/zone_parser.rl"
1382
+ when 12 then
1383
+ # line 17 "lib/bind/zone_parser.rl"
1384
+ begin
1385
+ record[:minimum] = num end
1386
+ # line 17 "lib/bind/zone_parser.rl"
1387
+ when 13 then
1388
+ # line 19 "lib/bind/zone_parser.rl"
1389
+ begin
1390
+ record[:owner] = data[str_p..p].pack('c*').strip end
1391
+ # line 19 "lib/bind/zone_parser.rl"
1392
+ when 14 then
1393
+ # line 20 "lib/bind/zone_parser.rl"
1394
+ begin
1395
+ record[:target] = data[str_p..p].pack('c*').strip end
1396
+ # line 20 "lib/bind/zone_parser.rl"
1397
+ when 15 then
1398
+ # line 21 "lib/bind/zone_parser.rl"
1399
+ begin
1400
+ record[:mbox] = data[str_p..p].pack('c*').strip end
1401
+ # line 21 "lib/bind/zone_parser.rl"
1402
+ when 16 then
1403
+ # line 22 "lib/bind/zone_parser.rl"
1404
+ begin
1405
+ record[:text] = data[(str_p+1)..(p-2)].pack('c*').strip end
1406
+ # line 22 "lib/bind/zone_parser.rl"
1407
+ when 17 then
1408
+ # line 23 "lib/bind/zone_parser.rl"
1409
+ begin
1410
+ record[:address] = data[str_p..p].pack('c*').strip end
1411
+ # line 23 "lib/bind/zone_parser.rl"
1412
+ when 18 then
1413
+ # line 24 "lib/bind/zone_parser.rl"
1414
+ begin
1415
+ record[:domain] = data[str_p..p].pack('c*').strip end
1416
+ # line 24 "lib/bind/zone_parser.rl"
1417
+ when 19 then
1418
+ # line 26 "lib/bind/zone_parser.rl"
1419
+ begin
1420
+ record[:type] = :a end
1421
+ # line 26 "lib/bind/zone_parser.rl"
1422
+ when 20 then
1423
+ # line 27 "lib/bind/zone_parser.rl"
1424
+ begin
1425
+ record[:type] = :ns end
1426
+ # line 27 "lib/bind/zone_parser.rl"
1427
+ when 21 then
1428
+ # line 28 "lib/bind/zone_parser.rl"
1429
+ begin
1430
+ record[:type] = :mx end
1431
+ # line 28 "lib/bind/zone_parser.rl"
1432
+ when 22 then
1433
+ # line 29 "lib/bind/zone_parser.rl"
1434
+ begin
1435
+ record[:type] = :txt end
1436
+ # line 29 "lib/bind/zone_parser.rl"
1437
+ when 23 then
1438
+ # line 30 "lib/bind/zone_parser.rl"
1439
+ begin
1440
+ record[:type] = :ptr end
1441
+ # line 30 "lib/bind/zone_parser.rl"
1442
+ when 24 then
1443
+ # line 31 "lib/bind/zone_parser.rl"
1444
+ begin
1445
+ record[:type] = :soa end
1446
+ # line 31 "lib/bind/zone_parser.rl"
1447
+ when 25 then
1448
+ # line 32 "lib/bind/zone_parser.rl"
1449
+ begin
1450
+ record[:type] = :srv end
1451
+ # line 32 "lib/bind/zone_parser.rl"
1452
+ when 26 then
1453
+ # line 33 "lib/bind/zone_parser.rl"
1454
+ begin
1455
+ record[:type] = :cname end
1456
+ # line 33 "lib/bind/zone_parser.rl"
1457
+ when 27 then
1458
+ # line 38 "lib/bind/zone_parser.rl"
1459
+ begin
1460
+ records << record; record = Hash.new end
1461
+ # line 38 "lib/bind/zone_parser.rl"
1462
+ # line 1463 "lib/bind/zone_parser.rb"
1463
+ end # action switch
1464
+ end
1465
+ end
1466
+ if _trigger_goto
1467
+ next
1468
+ end
1469
+ end
1470
+ if _goto_level <= _again
1471
+ if cs == 0
1472
+ _goto_level = _out
1473
+ next
1474
+ end
1475
+ p += 1
1476
+ if p != pe
1477
+ _goto_level = _resume
1478
+ next
1479
+ end
1480
+ end
1481
+ if _goto_level <= _test_eof
1482
+ end
1483
+ if _goto_level <= _out
1484
+ break
1485
+ end
1486
+ end
1487
+ end
1488
+
1489
+ # line 102 "lib/bind/zone_parser.rl"
1490
+
1491
+ return records if p == pe && cs == bind_parser_first_final
1492
+ raise "cs: #{cs} p: #{p} pe: #{pe} data[p]: #{data[p] ? data[p].chr.inspect : 'nil'}"
1493
+ end
1494
+ end
1495
+ end