source: ruby/trunk/lib/adl_parser/lib/parser.rb@ 320

Last change on this file since 320 was 320, checked in by Tatsukawa, Akimichi, 15 years ago

refactoring scanner for regex

File size: 88.3 KB
Line 
1#
2# DO NOT MODIFY!!!!
3# This file is automatically generated by Racc 1.4.6
4# from Racc grammer file "".
5#
6
7require 'racc/parser.rb'
8
9
10
11$:.unshift File.join(File.dirname(__FILE__))
12require 'logger'
13require 'yaml'
14require 'rubygems'
15require 'open_ehr'
16#require 'adl_parser.rb'
17#require 'am.rb'
18#require 'rm.rb'
19#require 'rm/support/assumed_types.rb'
20#require 'assumed_library_types.rb'
21$DEBUG = true
22
23
24
25module OpenEhr
26 module ADL
27 class Parser < Racc::Parser
28
29module_eval(<<'...end parser.y/module_eval...', 'parser.y', 1290)
30
31def assert_at(file,line, message = "")
32 unless yield
33 raise "Assertion failed !: #{file}, #{line}: #{message}"
34 end
35end
36
37if $DEBUG
38 @@logger = Logger.new('log/parser.log','daily')
39 @@logger.level = Logger::DEBUG
40else
41 @@logger = Logger.new(STDOUT)
42 @@logger.level = Logger::WARN
43end
44
45
46###----------/* keywords */ ---------------------------------------------
47### @@adl_reserved = {
48### 'archetype' => :SYM_ARCHETYPE,
49### 'adl_version' => :SYM_ADL_VERSION,
50### 'controlled' => :SYM_IS_CONTROLLED,
51### 'specialize' => :SYM_SPECIALIZE,
52### 'concept' => :SYM_CONCEPT,
53### 'language' => :SYM_LANGUAGE,
54### 'description' => :SYM_DESCRIPTION,
55### 'definition' => :SYM_DEFINITION,
56### 'invariant' => :SYM_INVARIANT,
57### 'ontology' => :SYM_ONTOLOGY,
58### 'matches' => :SYM_MATCHES,
59### 'is_in' => :SYM_MATCHES,
60### 'occurrences' => :SYM_OCCURRENCES,
61### 'true' => :SYM_TRUE, #[Tt][Rr][Uu][Ee] -- -> SYM_TRUE
62### 'false' => :SYM_FALSE, # [Ff][Aa][Ll][Ss][Ee] -- -> SYM_FALSE
63### 'infinity' => :SYM_INFINITY # [Ii][Nn][Ff][Ii][Nn][Ii][Tt][Yy] -- -> SYM_INFINITY
64### }
65
66### @@dadl_reserved = {
67### 'true' => :SYM_TRUE, #[Tt][Rr][Uu][Ee] -- -> SYM_TRUE
68### 'false' => :SYM_FALSE, # [Ff][Aa][Ll][Ss][Ee] -- -> SYM_FALSE
69### 'infinity' => :SYM_INFINITY # [Ii][Nn][Ff][Ii][Nn][Ii][Tt][Yy] -- -> SYM_INFINITY
70### }
71
72### @@cadl_reserved = {
73### 'then' => :SYM_THEN, # [Tt][Hh][Ee][Nn]
74### 'else' => :SYM_ELSE, # [Ee][Ll][Ss][Ee]
75### 'and' => :SYM_AND, # [Aa][Nn][Dd]
76### 'or' => :SYM_OR, # [Oo][Rr]
77### 'xor' => :SYM_XOR, # [Xx][Oo][Rr]
78### 'not' => :SYM_NOT, # [Nn][Oo][Tt]
79### 'implies' => :SYM_IMPLIES, # [Ii][Mm][Pp][Ll][Ii][Ee][Ss]
80### 'true' => :SYM_TRUE, #[Tt][Rr][Uu][Ee] -- -> SYM_TRUE
81### 'false' => :SYM_FALSE, # [Ff][Aa][Ll][Ss][Ee] -- -> SYM_FALSE
82### 'forall' => :SYM_FORALL, # [Ff][Oo][Rr][_][Aa][Ll][Ll]
83### 'exists' => :SYM_EXISTS, # [Ee][Xx][Ii][Ss][Tt][Ss]
84### 'existence' => :SYM_EXISTENCE, # [Ee][Xx][Iu][Ss][Tt][Ee][Nn][Cc][Ee]
85### 'occurrences' => :SYM_OCCURRENCES, # [Oo][Cc][Cc][Uu][Rr][Rr][Ee][Nn][Cc][Ee][Ss]
86### 'cardinality' => :SYM_CARDINALITY, # [Cc][Aa][Rr][Dd][Ii][Nn][Aa][Ll][Ii][Tt][Yy]
87### 'ordered' => :SYM_ORDERED, # [Oo][Rr][Dd][Ee][Rr][Ee][Dd]
88### 'unordered' => :SYM_UNORDERED, # [Uu][Nn][Oo][Rr][Dd][Ee][Rr][Ee][Dd]
89### 'unique' => :SYM_UNIQUE, # [Uu][Nn][Ii][Qq][Uu][Ee]
90### 'matches' => :SYM_MATCHES, # [Mm][Aa][Tt][Cc][Hh][Ee][Ss]
91### 'is_in' => :SYM_MATCHES, # [Ii][Ss][_][Ii][Nn]
92### 'invariant' => :SYM_INVARIANT, # [Ii][Nn][Vv][Aa][Rr][Ii][Aa][Nn][Tt]
93### 'infinity' => :SYM_INFINITY, # [Ii][Nn][Ff][Ii][Nn][Ii][Tt][Yy] -- -> SYM_INFINITY
94### 'use_node' => :SYM_USE_NODE, # [Uu][Ss][Ee][_][Nn][Oo][Dd][Ee]
95### 'use_archetype' => :SYM_ALLOW_ARCHETYPE, # [Uu][Ss][Ee][_][Aa][Rr][Cc][Hh][Ee][Tt][Yy][Pp][Ee]
96### 'allow_archetype' => :SYM_ALLOW_ARCHETYPE, # [Aa][Ll][Ll][Oo][Ww][_][Aa][Rr][Cc][Hh][Ee][Tt][Yy][Pp][Ee]
97### 'include' => :SYM_INCLUDE, # [Ii][Nn][Cc][Ll][Uu][Dd][Ee]
98### 'exclude' => :SYM_EXCLUDE # [Ee][Xx][Cc][Ll][Uu][Dd][Ee]
99### }
100
101
102###----------/* Scanner */ -----------------------------------------------
103
104
105def scan
106 @@logger.debug("#{__FILE__}:#{__LINE__}: Entering scan at #{@filename}:#{@lineno}:")
107 scanner = OpenEhr::ADL::Scanner::ADLScanner.new(@adl_type, @filename)
108
109 until @data.nil? do
110 @data = scanner.scan(@data) do |sym, val|
111 yield sym, val
112 end
113 @data = $' # variable $' receives the string after the match
114 end
115 yield :EOF, nil
116 yield false, '$'
117end # of scan
118
119
120def parse(data, filename, lineno = 1, debug = false)
121 @yydebug = true
122 @parsestring = data
123 @data = data
124 @lineno = lineno
125 @filename = filename
126 @adl_type = [:adl] # {:adl, :cadl, :dadl}
127 @in_regexp = false
128 @in_interval = false
129 @in_c_domain_type = false
130 yyparse self, :scan
131end
132
133def on_error( t, v, values)
134 raise Racc::ParseError, "#{@filename}:#{@lineno}: Inline syntax error on #{v.inspect}"
135end
136
137
138__END__
139
140
141
142
143### Local Variables:
144### mode:ruby
145### mode:font-lock
146### comment-column:0
147### comment-start: "### "
148### comment-end:""
149### End:
150...end parser.y/module_eval...
151##### State transition tables begin ###
152
153racc_action_table = [
154 574, 473, 149, 151, 468, 594, 462, 163, 1, 466,
155 64, 464, 213, 576, 12, 371, 325, 158, 264, 149,
156 151, 596, 159, 568, 259, 497, 103, 6, 529, 187,
157 48, 146, 71, 493, 14, 214, 541, 516, 153, 519,
158 521, 76, 517, 513, 149, 151, 510, 435, 146, 511,
159 512, 42, 44, 310, 121, 153, 78, 81, 83, 191,
160 237, 93, 300, 305, 599, 103, 105, 107, 109, 537,
161 529, 103, 109, 146, 71, 145, 107, 105, 541, 516,
162 153, 519, 521, 316, 109, 307, 309, 271, 536, 161,
163 105, 283, 145, 42, 44, 310, 149, 151, 78, 81,
164 83, 191, 109, 93, 300, 305, 109, 103, 105, 107,
165 109, 537, 149, 151, 149, 151, 475, 145, 149, 151,
166 78, 375, 376, 570, 451, 146, 458, 307, 309, 271,
167 536, 433, 153, 283, 491, 149, 151, 495, 154, 155,
168 460, 146, 147, 146, 417, 148, 150, 146, 153, 419,
169 153, 237, 149, 151, 153, 154, 155, 333, 133, 147,
170 75, 156, 148, 150, 146, 387, 157, 386, 247, 145,
171 109, 153, 378, 379, 42, 44, 93, 573, 115, 117,
172 99, 146, 78, 375, 376, 145, 210, 145, 153, 107,
173 103, 145, 71, 630, 76, 107, 34, 378, 379, 449,
174 103, 93, 98, 152, 238, 134, 105, 229, 145, 572,
175 231, 42, 44, 99, 499, 16, 78, 81, 83, 187,
176 152, 93, 95, 97, 172, 145, 501, 76, 48, 120,
177 99, 89, 92, 17, 246, 141, 258, 42, 44, 251,
178 230, -374, 254, 255, 76, 123, 78, 375, 376, 78,
179 81, 83, 141, 169, 93, 95, 97, 167, 168, 165,
180 166, 78, 375, 376, 89, 92, 78, 81, 83, 35,
181 -373, 93, 95, 97, 378, 379, 99, 24, 93, 34,
182 58, 89, 92, 78, 81, 83, 482, 171, 93, 328,
183 76, 331, 103, 105, 107, 109, 56, 323, 98, 391,
184 105, 99, 392, 107, 34, 25, 120, 42, 44, 483,
185 393, 48, 78, 81, 83, 76, 127, 93, 95, 97,
186 42, 44, 394, 98, 48, 395, 99, 89, 92, 95,
187 97, 396, 42, 44, 337, 338, 48, 78, 81, 83,
188 76, 127, 93, 95, 97, 42, 44, 102, 141, 29,
189 30, 99, 89, 92, 373, 64, 472, 42, 44, 610,
190 611, 612, 78, 81, 83, 76, 397, 93, 95, 97,
191 218, 398, 389, 141, 399, 48, 99, 89, 92, 115,
192 117, 400, 42, 44, 76, 142, 143, 78, 81, 83,
193 76, 401, 93, 95, 97, 218, 378, 379, 141, 262,
194 93, 99, 89, 92, 601, 602, 78, 81, 83, 76,
195 402, 93, 78, 81, 83, 76, 403, 93, 95, 97,
196 218, 378, 379, 141, 263, 93, 99, 89, 92, 264,
197 414, 78, 81, 83, 76, 404, 93, 78, 81, 83,
198 76, 266, 93, 95, 97, 411, 375, 376, 141, 335,
199 336, 99, 89, 92, 267, 414, 78, 81, 83, 42,
200 44, 93, 78, 81, 83, 76, 405, 93, 95, 97,
201 78, 375, 376, 98, 54, 406, 99, 89, 92, 20,
202 414, 21, 42, 44, 34, 430, 431, 78, 81, 83,
203 76, 317, 93, 95, 97, 411, 375, 376, 141, 345,
204 346, 99, 89, 92, 384, 409, 378, 379, 410, 20,
205 93, 21, 78, 81, 83, 76, 48, 93, 95, 97,
206 245, 218, 244, 98, 243, 42, 44, 89, 92, 78,
207 375, 376, 42, 44, 99, 76, 242, 78, 81, 83,
208 347, 348, 93, 95, 97, 373, 218, 260, 76, 78,
209 375, 376, 89, 92, 218, 261, 98, 78, 81, 83,
210 76, 262, 93, 263, 218, 42, 44, 264, 76, 241,
211 78, 81, 83, 240, 218, 93, 95, 97, 76, 436,
212 218, 437, 78, 81, 83, 89, 92, 93, 76, 218,
213 78, 81, 83, 438, 76, 93, 78, 375, 376, 218,
214 78, 81, 83, 76, 439, 93, 218, 78, 375, 376,
215 78, 81, 83, 76, 440, 93, 78, 81, 83, 441,
216 76, 93, 428, 429, 442, 78, 81, 83, 378, 379,
217 93, 443, 93, 426, 427, 78, 81, 83, 361, 362,
218 93, 444, 78, 81, 83, 310, 445, 93, 78, 81,
219 83, 191, 446, 93, 300, 305, 447, 103, 105, 107,
220 109, 78, 81, 83, 363, 364, 93, 424, 425, 239,
221 103, 105, 107, 109, 422, 423, 216, 307, 309, 271,
222 -103, 420, 421, 283, 206, 316, 317, 78, 81, 83,
223 191, 452, 93, 115, 117, 120, 103, 105, 107, 109,
224 187, 112, 121, 628, 629, 78, 81, 83, 115, 117,
225 93, 115, 117, 120, 103, 105, 107, 109, 453, 112,
226 78, 81, 83, 454, 455, 93, 456, 457, 156, 103,
227 105, 107, 109, 78, 81, 83, 158, 157, 93, 159,
228 141, 172, 103, 105, 107, 109, 78, 81, 83, 143,
229 212, 93, 127, 175, 470, 103, 105, 107, 109, 167,
230 168, 165, 166, 167, 168, 165, 166, 167, 168, 165,
231 166, 167, 168, 165, 166, 381, 78, 375, 376, 167,
232 168, 165, 166, 167, 168, 165, 166, 167, 168, 165,
233 166, 167, 168, 165, 166, 265, 162, 161, 477, 478,
234 480, 481, 144, 484, 485, 486, 103, 488, 105, 266,
235 141, 137, 136, 48, 125, 502, 107, 504, 109, 506,
236 109, 508, 68, 67, 514, 515, 66, 543, 34, 545,
237 546, 547, 103, 549, 105, 551, 107, 553, 109, 555,
238 267, 557, 58, 559, 560, 561, 562, 109, 109, 109,
239 109, 563, 564, -103, 567, 53, 107, 169, 268, 50,
240 32, 578, 579, 105, 581, 582, 583, 584, 585, 586,
241 587, 28, 590, 591, 592, 593, 27, 248, 269, 103,
242 270, 603, 604, 605, 606, 76, 568, 608, 311, 18,
243 617, 619, 620, 621, 15, 623, 10, 9, 625, 626,
244 627, 320, 8, 7, 161 ]
245
246racc_action_check = [
247 532, 401, 220, 220, 398, 569, 395, 89, 0, 397,
248 41, 396, 142, 532, 6, 259, 242, 83, 518, 228,
249 228, 571, 83, 518, 193, 427, 242, 0, 532, 259,
250 41, 220, 532, 423, 6, 142, 532, 532, 220, 532,
251 532, 89, 482, 470, 319, 319, 470, 348, 228, 470,
252 470, 532, 532, 532, 401, 228, 532, 532, 532, 532,
253 319, 532, 532, 532, 573, 532, 532, 532, 532, 532,
254 482, 395, 398, 319, 482, 220, 397, 396, 482, 482,
255 319, 482, 482, 482, 427, 532, 532, 532, 532, 569,
256 423, 532, 228, 482, 482, 482, 221, 221, 482, 482,
257 482, 482, 470, 482, 482, 482, 348, 482, 482, 482,
258 482, 482, 227, 227, 223, 223, 402, 319, 225, 225,
259 573, 573, 573, 521, 364, 221, 392, 482, 482, 482,
260 482, 346, 221, 482, 421, 173, 173, 425, 173, 173,
261 394, 227, 173, 223, 336, 173, 173, 225, 227, 338,
262 223, 173, 80, 80, 225, 80, 80, 248, 68, 80,
263 53, 81, 80, 80, 173, 267, 81, 267, 185, 221,
264 248, 173, 364, 364, 521, 521, 364, 527, 402, 402,
265 53, 80, 392, 392, 392, 227, 136, 223, 80, 346,
266 421, 225, 53, 623, 53, 425, 136, 394, 394, 362,
267 336, 394, 53, 173, 174, 68, 338, 161, 173, 527,
268 162, 53, 53, 623, 429, 10, 53, 53, 53, 261,
269 80, 53, 53, 53, 98, 80, 431, 623, 136, 268,
270 162, 53, 53, 10, 184, 623, 191, 136, 136, 191,
271 161, 98, 191, 191, 162, 59, 362, 362, 362, 623,
272 623, 623, 162, 91, 623, 623, 623, 174, 174, 174,
273 174, 429, 429, 429, 623, 623, 162, 162, 162, 27,
274 91, 162, 162, 162, 431, 431, 74, 18, 431, 27,
275 59, 162, 162, 191, 191, 191, 410, 92, 191, 244,
276 74, 247, 191, 191, 191, 191, 33, 240, 74, 270,
277 244, 624, 272, 247, 516, 18, 240, 74, 74, 410,
278 273, 27, 74, 74, 74, 624, 125, 74, 74, 74,
279 27, 27, 275, 624, 33, 278, 171, 74, 74, 92,
280 92, 281, 624, 624, 250, 250, 516, 624, 624, 624,
281 171, 67, 624, 624, 624, 516, 516, 57, 171, 22,
282 22, 168, 624, 624, 400, 57, 400, 125, 125, 605,
283 605, 605, 171, 171, 171, 168, 285, 171, 171, 171,
284 152, 288, 269, 168, 291, 57, 167, 171, 171, 269,
285 269, 293, 67, 67, 152, 77, 77, 168, 168, 168,
286 167, 295, 168, 168, 168, 155, 451, 451, 167, 297,
287 451, 166, 168, 168, 577, 577, 152, 152, 152, 155,
288 299, 152, 167, 167, 167, 166, 300, 167, 167, 167,
289 154, 501, 501, 166, 302, 501, 165, 167, 167, 303,
290 563, 155, 155, 155, 154, 305, 155, 166, 166, 166,
291 165, 308, 166, 166, 166, 563, 563, 563, 165, 249,
292 249, 608, 166, 166, 310, 484, 154, 154, 154, 519,
293 519, 154, 165, 165, 165, 608, 311, 165, 165, 165,
294 484, 484, 484, 608, 32, 312, 99, 165, 165, 14,
295 320, 14, 608, 608, 32, 344, 344, 608, 608, 608,
296 99, 314, 608, 608, 608, 320, 320, 320, 99, 252,
297 252, 613, 608, 608, 266, 317, 266, 266, 318, 30,
298 266, 30, 99, 99, 99, 613, 32, 99, 99, 99,
299 183, 218, 182, 613, 181, 32, 32, 99, 99, 262,
300 262, 262, 613, 613, 617, 218, 180, 613, 613, 613,
301 253, 253, 613, 613, 613, 260, 153, 195, 617, 572,
302 572, 572, 613, 613, 145, 196, 617, 218, 218, 218,
303 153, 198, 218, 200, 146, 617, 617, 201, 145, 179,
304 617, 617, 617, 178, 147, 617, 617, 617, 146, 349,
305 151, 350, 153, 153, 153, 617, 617, 153, 147, 149,
306 145, 145, 145, 351, 151, 145, 449, 449, 449, 150,
307 146, 146, 146, 149, 352, 146, 148, 499, 499, 499,
308 147, 147, 147, 150, 353, 147, 151, 151, 151, 354,
309 148, 151, 343, 343, 355, 149, 149, 149, 263, 263,
310 149, 356, 263, 342, 342, 150, 150, 150, 256, 256,
311 150, 357, 148, 148, 148, 213, 358, 148, 213, 213,
312 213, 213, 359, 213, 213, 213, 360, 213, 213, 213,
313 213, 255, 255, 255, 257, 257, 255, 341, 341, 177,
314 255, 255, 255, 255, 340, 340, 144, 213, 213, 213,
315 127, 339, 339, 213, 127, 216, 216, 127, 127, 127,
316 127, 365, 127, 127, 127, 127, 127, 127, 127, 127,
317 127, 127, 58, 621, 621, 58, 58, 58, 265, 265,
318 58, 58, 58, 58, 58, 58, 58, 58, 366, 58,
319 254, 254, 254, 367, 368, 254, 369, 370, 375, 254,
320 254, 254, 254, 258, 258, 258, 376, 378, 258, 379,
321 143, 141, 258, 258, 258, 258, 251, 251, 251, 140,
322 137, 251, 131, 119, 399, 251, 251, 251, 251, 236,
323 236, 236, 236, 235, 235, 235, 235, 234, 234, 234,
324 234, 232, 232, 232, 232, 264, 264, 264, 264, 90,
325 90, 90, 90, 616, 616, 616, 616, 233, 233, 233,
326 233, 631, 631, 631, 631, 203, 86, 84, 403, 404,
327 408, 409, 79, 411, 413, 416, 417, 418, 419, 204,
328 76, 71, 69, 64, 61, 432, 433, 434, 435, 448,
329 246, 450, 52, 49, 480, 481, 48, 483, 40, 487,
330 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
331 206, 500, 39, 503, 505, 507, 509, 510, 511, 512,
332 513, 514, 515, 34, 517, 31, 243, 520, 207, 28,
333 26, 536, 538, 241, 543, 548, 550, 552, 554, 556,
334 558, 20, 564, 565, 566, 568, 19, 189, 208, 239,
335 212, 579, 588, 589, 590, 595, 597, 603, 214, 11,
336 609, 610, 611, 612, 8, 615, 5, 4, 618, 619,
337 620, 230, 3, 2, 540 ]
338
339racc_action_pointer = [
340 7, nil, 884, 902, 879, 869, 13, nil, 894, nil,
341 214, 861, nil, nil, 455, nil, nil, nil, 276, 846,
342 863, nil, 327, nil, nil, nil, 829, 268, 834, nil,
343 485, 823, 473, 281, 803, nil, nil, nil, nil, 792,
344 817, -13, nil, nil, nil, nil, nil, nil, 825, 815,
345 nil, nil, 775, 159, nil, nil, nil, 332, 648, 230,
346 nil, 806, nil, nil, 770, nil, nil, 330, 157, 763,
347 nil, 777, nil, nil, 255, nil, 767, 351, nil, 768,
348 146, 104, nil, -40, 712, nil, 750, nil, nil, 6,
349 704, 224, 266, nil, nil, nil, nil, nil, 195, 455,
350 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
351 nil, nil, nil, nil, nil, nil, nil, nil, nil, 702,
352 nil, nil, nil, nil, nil, 305, nil, 630, nil, nil,
353 nil, 741, nil, nil, nil, nil, 185, 715, nil, nil,
354 714, 712, 0, 697, 664, 533, 543, 553, 585, 568,
355 578, 559, 349, 525, 399, 374, nil, nil, nil, nil,
356 nil, 206, 209, nil, nil, 405, 380, 355, 330, nil,
357 nil, 305, nil, 129, 182, nil, nil, 614, 518, 514,
358 481, 469, 467, 505, 179, 113, nil, nil, nil, 822,
359 nil, 226, nil, -31, nil, 492, 500, nil, 506, nil,
360 508, 512, nil, 740, 754, nil, 785, 803, 823, nil,
361 nil, nil, 844, 591, 852, nil, 643, nil, 500, nil,
362 -4, 90, nil, 108, nil, 112, nil, 106, 13, nil,
363 889, nil, 696, 712, 692, 688, 684, nil, nil, 813,
364 241, 796, -40, 788, 233, nil, 751, 235, 101, 389,
365 274, 689, 439, 480, 663, 604, 578, 604, 676, -41,
366 491, 149, 472, 570, 719, 645, 448, 111, 164, 316,
367 264, nil, 279, 296, nil, 299, nil, nil, 302, nil,
368 nil, 308, nil, nil, nil, 343, nil, nil, 348, nil,
369 nil, 339, nil, 326, nil, 368, nil, 344, nil, 387,
370 361, nil, 369, 374, nil, 380, nil, nil, 386, nil,
371 399, 431, 461, nil, 448, nil, nil, 425, 474, 38,
372 438, nil, nil, nil, nil, nil, nil, nil, nil, nil,
373 nil, nil, nil, nil, nil, nil, 134, nil, 139, 621,
374 614, 607, 573, 562, 425, nil, 121, nil, 37, 519,
375 521, 533, 544, 554, 559, 564, 571, 581, 586, 592,
376 596, nil, 189, nil, 114, 631, 658, 663, 664, 666,
377 667, nil, nil, nil, nil, 671, 679, nil, 675, 677,
378 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
379 nil, nil, 125, nil, 139, 5, 10, 8, 3, 694,
380 300, 0, 115, 734, 736, nil, nil, nil, 719, 767,
381 274, 742, nil, 790, nil, nil, 745, 740, 747, 741,
382 nil, 124, nil, 23, nil, 127, nil, 15, nil, 204,
383 nil, 216, 755, 748, 757, 749, nil, nil, nil, nil,
384 nil, nil, nil, nil, nil, nil, nil, nil, 759, 539,
385 761, 338, nil, nil, nil, nil, nil, nil, nil, nil,
386 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
387 33, nil, nil, nil, nil, nil, nil, nil, nil, nil,
388 790, 813, 41, 791, 413, nil, nil, 769, nil, 770,
389 771, 766, 773, 767, 775, 768, 777, 769, 779, 550,
390 781, 363, nil, 783, nil, 784, nil, 785, nil, 786,
391 778, 779, 780, 781, 839, 795, 293, 840, -37, 407,
392 828, 122, nil, nil, nil, nil, nil, 154, nil, nil,
393 nil, nil, -1, nil, nil, nil, 770, nil, 828, nil,
394 819, nil, nil, 829, nil, nil, nil, nil, 805, nil,
395 806, nil, 807, nil, 808, nil, 809, nil, 810, nil,
396 nil, nil, nil, 388, 811, 859, 835, nil, 805, 4,
397 nil, -8, 492, 63, nil, nil, nil, 314, nil, 869,
398 nil, nil, nil, nil, nil, nil, nil, nil, 868, 860,
399 827, nil, nil, nil, nil, 850, nil, 826, nil, nil,
400 nil, nil, nil, 843, nil, 277, nil, nil, 430, 845,
401 868, 869, 870, 480, nil, 849, 708, 513, 884, 815,
402 816, 621, nil, 192, 280, nil, nil, nil, nil, nil,
403 nil, 716 ]
404
405racc_action_default = [
406 -376, -2, -376, -376, -376, -13, -6, -4, -376, -1,
407 -376, -376, -5, -7, -376, 632, -15, -14, -376, -18,
408 -376, -12, -376, -9, -17, -16, -21, -87, -376, -8,
409 -376, -376, -87, -376, -112, -20, -98, -99, -100, -376,
410 -376, -88, -146, -89, -147, -90, -19, -108, -94, -376,
411 -11, -10, -82, -376, -23, -22, -110, -376, -376, -376,
412 -104, -376, -101, -109, -376, -91, -95, -376, -376, -376,
413 -253, -376, -26, -254, -27, -25, -284, -376, -152, -376,
414 -376, -376, -273, -376, -305, -274, -376, -286, -283, -376,
415 -251, -31, -376, -167, -281, -271, -282, -272, -289, -376,
416 -248, -24, -111, -191, -125, -204, -126, -217, -127, -230,
417 -128, -129, -247, -130, -121, -182, -122, -183, -123, -376,
418 -187, -148, -124, -102, -105, -376, -92, -112, -93, -113,
419 -97, -376, -96, -84, -83, -3, -87, -376, -373, -249,
420 -285, -289, -376, -376, -376, -376, -376, -376, -376, -376,
421 -376, -376, -376, -376, -376, -376, -153, -168, -154, -169,
422 -30, -376, -376, -256, -255, -376, -376, -376, -376, -32,
423 -259, -376, -288, -376, -376, -107, -106, -136, -125, -137,
424 -126, -138, -127, -376, -139, -128, -117, -243, -140, -129,
425 -118, -376, -141, -119, -142, -131, -120, -143, -132, -144,
426 -133, -122, -145, -134, -123, -116, -148, -135, -124, -114,
427 -86, -85, -376, -376, -376, -287, -376, -279, -376, -278,
428 -263, -264, -275, -265, -276, -260, -277, -261, -262, -307,
429 -376, -252, -250, -268, -269, -266, -267, -280, -270, -376,
430 -376, -376, -376, -376, -376, -115, -376, -376, -376, -376,
431 -376, -376, -376, -376, -376, -376, -376, -376, -376, -376,
432 -376, -376, -376, -376, -376, -376, -376, -376, -376, -376,
433 -376, -334, -313, -376, -323, -319, -54, -329, -325, -55,
434 -335, -331, -56, -375, -342, -337, -312, -57, -344, -318,
435 -58, -340, -324, -348, -59, -350, -330, -311, -60, -357,
436 -353, -336, -317, -310, -61, -354, -343, -322, -316, -328,
437 -347, -376, -376, -33, -34, -63, -62, -290, -376, -376,
438 -376, -193, -188, -190, -206, -194, -192, -219, -207, -205,
439 -232, -220, -218, -233, -231, -203, -376, -216, -376, -376,
440 -376, -376, -376, -376, -376, -229, -376, -242, -376, -376,
441 -376, -376, -376, -376, -376, -376, -376, -376, -376, -376,
442 -376, -166, -376, -181, -376, -376, -376, -376, -376, -376,
443 -376, -246, -244, -150, -245, -376, -376, -156, -376, -376,
444 -171, -157, -155, -185, -172, -170, -151, -149, -189, -186,
445 -184, -28, -376, -257, -376, -376, -376, -376, -376, -376,
446 -376, -376, -376, -376, -376, -258, -29, -64, -68, -376,
447 -376, -152, -303, -376, -304, -308, -376, -376, -376, -376,
448 -201, -376, -214, -376, -227, -376, -240, -376, -164, -376,
449 -179, -376, -376, -376, -376, -376, -200, -213, -226, -239,
450 -163, -178, -202, -215, -228, -241, -165, -180, -376, -376,
451 -376, -376, -199, -212, -225, -238, -162, -177, -315, -314,
452 -321, -320, -327, -326, -333, -332, -339, -338, -346, -345,
453 -376, -341, -349, -352, -351, -359, -358, -355, -356, -69,
454 -376, -376, -376, -376, -376, -306, -195, -376, -208, -376,
455 -376, -376, -376, -376, -376, -376, -376, -376, -376, -376,
456 -376, -376, -221, -376, -234, -376, -158, -376, -173, -376,
457 -376, -376, -376, -376, -376, -376, -87, -44, -310, -376,
458 -31, -376, -72, -70, -36, -37, -38, -360, -39, -372,
459 -363, -40, -376, -366, -41, -42, -369, -367, -376, -35,
460 -305, -43, -53, -376, -309, -197, -210, -196, -376, -209,
461 -376, -222, -376, -235, -376, -159, -376, -174, -376, -223,
462 -236, -160, -175, -376, -292, -376, -376, -67, -376, -305,
463 -52, -50, -376, -376, -44, -71, -65, -376, -370, -376,
464 -49, -66, -198, -211, -224, -237, -161, -176, -376, -295,
465 -376, -291, -45, -365, -47, -376, -51, -376, -364, -362,
466 -361, -368, -371, -73, -294, -376, -293, -46, -376, -75,
467 -296, -297, -298, -74, -77, -376, -80, -376, -376, -376,
468 -376, -376, -78, -376, -76, -48, -299, -300, -301, -302,
469 -81, -79 ]
470
471racc_goto_table = [
472 90, 116, 164, 160, 202, 313, 118, 40, 46, 413,
473 193, 104, 40, 55, 119, 63, 173, 62, 132, 128,
474 65, 90, 315, 122, 523, 60, 23, 110, 86, 111,
475 100, 613, 3, 91, 408, 532, 65, 622, 57, 273,
476 624, 618, 51, 126, 609, 124, 174, 131, 622, 86,
477 108, 139, 314, 217, 219, 59, 312, 222, 106, 224,
478 479, 226, 74, 209, 220, 221, 183, 223, 186, 225,
479 201, 227, 228, 190, 575, 204, 132, 176, 72, 196,
480 178, 474, 101, 205, 22, 13, 2, 135, 69, 52,
481 31, 195, 208, 198, 200, 203, 185, 207, 189, 177,
482 179, 181, 184, 188, 192, 131, 63, 194, 62, 232,
483 197, 199, 233, 234, 235, 236, 40, 211, 174, 182,
484 407, 26, 19, 170, 140, 11, 5, 180, 215, 565,
485 588, 4, 544, 598, 256, 319, 577, nil, nil, 257,
486 nil, nil, 372, nil, 374, nil, nil, nil, nil, nil,
487 nil, nil, nil, nil, nil, nil, 303, nil, nil, nil,
488 252, 308, 253, nil, nil, nil, nil, nil, nil, nil,
489 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
490 nil, nil, nil, 250, nil, nil, nil, nil, nil, nil,
491 nil, 249, nil, 322, 343, nil, nil, 353, 359, 344,
492 nil, 369, 354, 360, nil, 377, 370, 382, nil, nil,
493 nil, 380, 327, nil, 385, nil, 332, 330, nil, 334,
494 341, 388, 342, 351, 357, 352, 358, 367, nil, 368,
495 383, nil, nil, 324, 390, nil, 329, nil, nil, 321,
496 nil, nil, 326, 340, nil, nil, 350, 356, nil, nil,
497 366, 339, 589, nil, 349, 355, nil, nil, 365, nil,
498 nil, nil, nil, 412, nil, nil, nil, nil, nil, nil,
499 nil, 522, nil, nil, nil, nil, 471, nil, nil, nil,
500 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
501 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
502 nil, nil, nil, nil, nil, 448, nil, nil, nil, nil,
503 nil, nil, 450, nil, nil, 432, nil, nil, nil, 434,
504 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
505 418, nil, nil, nil, nil, 459, 416, nil, nil, nil,
506 nil, nil, 461, nil, nil, nil, nil, nil, nil, nil,
507 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
508 nil, nil, nil, nil, nil, nil, 467, 476, nil, 469,
509 nil, nil, 498, nil, nil, nil, nil, nil, nil, 500,
510 nil, nil, nil, nil, nil, nil, nil, nil, 465, nil,
511 nil, nil, 507, nil, 494, 463, nil, nil, 496, 509,
512 nil, nil, 503, nil, nil, nil, 505, nil, nil, nil,
513 nil, 489, nil, nil, nil, 492, nil, 487, nil, nil,
514 nil, 490, nil, nil, nil, 518, nil, 412, nil, nil,
515 308, nil, nil, nil, nil, nil, nil, nil, nil, nil,
516 nil, 253, 556, nil, nil, nil, nil, nil, nil, 558,
517 nil, nil, nil, nil, nil, nil, nil, nil, nil, 580,
518 nil, nil, 520, nil, 552, nil, nil, nil, 554, nil,
519 nil, nil, nil, nil, nil, 518, nil, nil, nil, nil,
520 308, 342, 352, 358, 368, 550, nil, nil, 595, nil,
521 nil, 548, nil, nil, nil, nil, 40, 566, nil, 569,
522 nil, 571, nil, nil, nil, nil, 412, nil, 607, nil,
523 nil, nil, 520, nil, nil, 597, 600, nil, nil, nil,
524 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
525 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
526 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
527 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
528 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
529 631 ]
530
531racc_goto_check = [
532 56, 80, 34, 22, 103, 24, 81, 23, 15, 114,
533 77, 83, 23, 15, 70, 71, 108, 65, 58, 61,
534 59, 56, 48, 82, 26, 68, 14, 86, 55, 87,
535 104, 53, 1, 23, 51, 50, 59, 54, 57, 39,
536 53, 37, 14, 59, 36, 68, 56, 23, 54, 55,
537 85, 104, 25, 109, 109, 67, 20, 109, 84, 109,
538 52, 109, 18, 73, 108, 108, 74, 108, 75, 108,
539 80, 108, 108, 76, 26, 81, 58, 61, 17, 78,
540 83, 79, 16, 70, 13, 12, 11, 10, 9, 8,
541 7, 89, 82, 90, 91, 92, 86, 93, 87, 94,
542 95, 96, 97, 98, 99, 23, 71, 100, 65, 56,
543 101, 102, 56, 56, 56, 56, 23, 15, 56, 85,
544 48, 6, 5, 105, 107, 4, 3, 84, 111, 112,
545 113, 2, 115, 126, 80, 108, 128, nil, nil, 81,
546 nil, nil, 77, nil, 77, nil, nil, nil, nil, nil,
547 nil, nil, nil, nil, nil, nil, 80, nil, nil, nil,
548 86, 81, 87, nil, nil, nil, nil, nil, nil, nil,
549 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
550 nil, nil, nil, 85, nil, nil, nil, nil, nil, nil,
551 nil, 84, nil, 83, 80, nil, nil, 80, 80, 81,
552 nil, 80, 81, 81, nil, 80, 81, 80, nil, nil,
553 nil, 81, 86, nil, 81, nil, 86, 87, nil, 87,
554 86, 83, 87, 86, 86, 87, 87, 86, nil, 87,
555 82, nil, nil, 85, 82, nil, 85, nil, nil, 84,
556 nil, nil, 84, 85, nil, nil, 85, 85, nil, nil,
557 85, 84, 114, nil, 84, 84, nil, nil, 84, nil,
558 nil, nil, nil, 80, nil, nil, nil, nil, nil, nil,
559 nil, 24, nil, nil, nil, nil, 103, nil, nil, nil,
560 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
561 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
562 nil, nil, nil, nil, nil, 80, nil, nil, nil, nil,
563 nil, nil, 81, nil, nil, 86, nil, nil, nil, 87,
564 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
565 85, nil, nil, nil, nil, 80, 84, nil, nil, nil,
566 nil, nil, 81, nil, nil, nil, nil, nil, nil, nil,
567 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
568 nil, nil, nil, nil, nil, nil, 86, 82, nil, 87,
569 nil, nil, 80, nil, nil, nil, nil, nil, nil, 81,
570 nil, nil, nil, nil, nil, nil, nil, nil, 85, nil,
571 nil, nil, 80, nil, 86, 84, nil, nil, 87, 81,
572 nil, nil, 86, nil, nil, nil, 87, nil, nil, nil,
573 nil, 85, nil, nil, nil, 85, nil, 84, nil, nil,
574 nil, 84, nil, nil, nil, 80, nil, 80, nil, nil,
575 81, nil, nil, nil, nil, nil, nil, nil, nil, nil,
576 nil, 87, 80, nil, nil, nil, nil, nil, nil, 81,
577 nil, nil, nil, nil, nil, nil, nil, nil, nil, 22,
578 nil, nil, 23, nil, 86, nil, nil, nil, 87, nil,
579 nil, nil, nil, nil, nil, 80, nil, nil, nil, nil,
580 81, 87, 87, 87, 87, 85, nil, nil, 22, nil,
581 nil, 84, nil, nil, nil, nil, 23, 15, nil, 23,
582 nil, 23, nil, nil, nil, nil, 80, nil, 34, nil,
583 nil, nil, 23, nil, nil, 80, 80, nil, nil, nil,
584 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
585 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
586 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
587 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
588 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
589 56 ]
590
591racc_goto_pointer = [
592 nil, 32, 131, 126, 120, 111, 102, 64, 58, 36,
593 18, 86, 79, 70, 12, -19, 29, 25, 9, nil,
594 -160, nil, -81, -20, -211, -164, -458, nil, nil, nil,
595 nil, nil, nil, nil, -87, nil, -559, -568, nil, -174,
596 nil, nil, nil, nil, nil, nil, nil, nil, -194, nil,
597 -447, -283, -348, -577, -576, -25, -53, 5, -49, -21,
598 nil, -48, nil, nil, nil, -23, nil, 16, -14, nil,
599 -44, -25, nil, -68, -61, -59, -54, -117, -48, -320,
600 -57, -52, -35, -47, 0, -8, -31, -29, nil, -36,
601 -34, -33, -32, -30, -28, -27, -26, -25, -24, -23,
602 -20, -17, -16, -123, -23, 31, nil, 48, -83, -92,
603 nil, -15, -386, -433, -311, -352, nil, nil, nil, nil,
604 nil, nil, nil, nil, nil, nil, -439, nil, -400 ]
605
606racc_goto_default = [
607 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
608 nil, nil, nil, nil, nil, nil, nil, 539, nil, 79,
609 nil, 84, nil, 138, nil, nil, nil, 524, 525, 526,
610 528, 531, 534, 535, 88, 538, nil, nil, 540, 542,
611 276, 279, 282, 287, 290, 294, 298, 304, nil, 318,
612 nil, nil, nil, nil, 614, 615, 616, 41, 43, 45,
613 49, nil, 130, 36, 37, 38, 39, nil, nil, 61,
614 nil, 47, 33, 129, nil, nil, nil, nil, nil, 114,
615 94, 96, nil, nil, 274, 277, 280, 284, 113, 293,
616 297, 302, nil, nil, nil, nil, nil, nil, 286, 289,
617 292, 296, 301, 306, nil, 70, 73, 77, 80, 82,
618 85, 87, nil, nil, nil, 415, 272, 275, 278, 281,
619 285, 288, 291, 295, 299, 527, 530, 533, nil ]
620
621racc_reduce_table = [
622 0, 0, :racc_error,
623 2, 94, :_reduce_1,
624 1, 94, :_reduce_none,
625 8, 95, :_reduce_3,
626 2, 96, :_reduce_4,
627 2, 96, :_reduce_5,
628 1, 104, :_reduce_6,
629 2, 104, :_reduce_7,
630 3, 105, :_reduce_8,
631 1, 106, :_reduce_9,
632 3, 106, :_reduce_10,
633 3, 107, :_reduce_11,
634 1, 107, :_reduce_12,
635 0, 97, :_reduce_none,
636 2, 97, :_reduce_14,
637 2, 97, :_reduce_none,
638 2, 98, :_reduce_16,
639 2, 98, :_reduce_none,
640 0, 99, :_reduce_18,
641 2, 99, :_reduce_19,
642 2, 99, :_reduce_none,
643 0, 100, :_reduce_none,
644 2, 100, :_reduce_22,
645 2, 100, :_reduce_none,
646 2, 101, :_reduce_24,
647 2, 101, :_reduce_none,
648 1, 109, :_reduce_26,
649 1, 109, :_reduce_27,
650 5, 110, :_reduce_28,
651 5, 110, :_reduce_29,
652 2, 112, :_reduce_30,
653 1, 114, :_reduce_31,
654 2, 114, :_reduce_32,
655 1, 113, :_reduce_none,
656 1, 113, :_reduce_34,
657 1, 119, :_reduce_35,
658 1, 119, :_reduce_36,
659 1, 119, :_reduce_37,
660 1, 119, :_reduce_38,
661 1, 119, :_reduce_39,
662 1, 119, :_reduce_40,
663 1, 119, :_reduce_41,
664 1, 119, :_reduce_42,
665 1, 119, :_reduce_none,
666 1, 119, :_reduce_none,
667 3, 126, :_reduce_45,
668 4, 120, :_reduce_46,
669 3, 120, :_reduce_none,
670 6, 121, :_reduce_48,
671 2, 128, :_reduce_49,
672 2, 131, :_reduce_50,
673 3, 131, :_reduce_none,
674 2, 131, :_reduce_none,
675 1, 125, :_reduce_53,
676 1, 132, :_reduce_54,
677 1, 132, :_reduce_55,
678 1, 132, :_reduce_56,
679 1, 132, :_reduce_57,
680 1, 132, :_reduce_58,
681 1, 132, :_reduce_59,
682 1, 132, :_reduce_60,
683 1, 132, :_reduce_61,
684 1, 117, :_reduce_none,
685 1, 118, :_reduce_63,
686 2, 118, :_reduce_64,
687 5, 141, :_reduce_65,
688 5, 141, :_reduce_66,
689 5, 141, :_reduce_67,
690 2, 142, :_reduce_68,
691 3, 142, :_reduce_69,
692 1, 143, :_reduce_70,
693 2, 143, :_reduce_71,
694 1, 143, :_reduce_72,
695 0, 129, :_reduce_none,
696 2, 129, :_reduce_74,
697 0, 130, :_reduce_none,
698 2, 130, :_reduce_76,
699 1, 146, :_reduce_none,
700 2, 146, :_reduce_none,
701 3, 147, :_reduce_none,
702 1, 147, :_reduce_none,
703 3, 147, :_reduce_none,
704 0, 102, :_reduce_none,
705 2, 102, :_reduce_none,
706 2, 102, :_reduce_none,
707 2, 103, :_reduce_85,
708 2, 103, :_reduce_none,
709 0, 108, :_reduce_none,
710 1, 108, :_reduce_88,
711 1, 108, :_reduce_89,
712 1, 150, :_reduce_90,
713 2, 150, :_reduce_91,
714 3, 150, :_reduce_92,
715 3, 152, :_reduce_93,
716 1, 153, :_reduce_94,
717 2, 153, :_reduce_none,
718 1, 154, :_reduce_96,
719 1, 154, :_reduce_97,
720 1, 151, :_reduce_98,
721 1, 151, :_reduce_99,
722 1, 157, :_reduce_100,
723 2, 157, :_reduce_101,
724 3, 158, :_reduce_102,
725 1, 159, :_reduce_103,
726 1, 160, :_reduce_104,
727 2, 160, :_reduce_105,
728 3, 161, :_reduce_106,
729 3, 162, :_reduce_107,
730 1, 156, :_reduce_108,
731 2, 156, :_reduce_109,
732 2, 164, :_reduce_110,
733 3, 164, :_reduce_111,
734 1, 165, :_reduce_none,
735 1, 155, :_reduce_113,
736 2, 155, :_reduce_114,
737 3, 166, :_reduce_115,
738 1, 167, :_reduce_116,
739 1, 167, :_reduce_117,
740 1, 167, :_reduce_118,
741 1, 167, :_reduce_119,
742 1, 167, :_reduce_120,
743 1, 163, :_reduce_121,
744 1, 163, :_reduce_122,
745 1, 163, :_reduce_123,
746 1, 163, :_reduce_124,
747 1, 163, :_reduce_125,
748 1, 163, :_reduce_126,
749 1, 163, :_reduce_127,
750 1, 163, :_reduce_128,
751 1, 163, :_reduce_129,
752 1, 163, :_reduce_130,
753 1, 168, :_reduce_131,
754 1, 168, :_reduce_132,
755 1, 168, :_reduce_133,
756 1, 168, :_reduce_134,
757 1, 168, :_reduce_135,
758 1, 168, :_reduce_136,
759 1, 168, :_reduce_137,
760 1, 168, :_reduce_138,
761 1, 168, :_reduce_139,
762 1, 169, :_reduce_none,
763 1, 169, :_reduce_none,
764 1, 169, :_reduce_none,
765 1, 169, :_reduce_none,
766 1, 169, :_reduce_none,
767 1, 169, :_reduce_none,
768 1, 116, :_reduce_146,
769 1, 116, :_reduce_147,
770 1, 172, :_reduce_148,
771 3, 182, :_reduce_149,
772 3, 182, :_reduce_150,
773 3, 182, :_reduce_151,
774 1, 173, :_reduce_152,
775 2, 173, :_reduce_153,
776 2, 173, :_reduce_154,
777 3, 183, :_reduce_none,
778 3, 183, :_reduce_none,
779 3, 183, :_reduce_none,
780 5, 191, :_reduce_none,
781 6, 191, :_reduce_none,
782 6, 191, :_reduce_none,
783 7, 191, :_reduce_none,
784 4, 191, :_reduce_none,
785 4, 191, :_reduce_none,
786 4, 191, :_reduce_none,
787 4, 191, :_reduce_none,
788 3, 191, :_reduce_none,
789 1, 174, :_reduce_167,
790 2, 174, :_reduce_168,
791 2, 174, :_reduce_169,
792 3, 184, :_reduce_none,
793 3, 184, :_reduce_none,
794 3, 184, :_reduce_none,
795 5, 192, :_reduce_none,
796 6, 192, :_reduce_none,
797 6, 192, :_reduce_none,
798 7, 192, :_reduce_none,
799 4, 192, :_reduce_none,
800 4, 192, :_reduce_none,
801 4, 192, :_reduce_none,
802 4, 192, :_reduce_none,
803 3, 192, :_reduce_none,
804 1, 175, :_reduce_182,
805 1, 175, :_reduce_183,
806 3, 185, :_reduce_none,
807 3, 185, :_reduce_none,
808 3, 185, :_reduce_none,
809 1, 176, :_reduce_none,
810 3, 186, :_reduce_none,
811 3, 186, :_reduce_none,
812 3, 186, :_reduce_none,
813 1, 177, :_reduce_191,
814 3, 187, :_reduce_none,
815 3, 187, :_reduce_none,
816 3, 187, :_reduce_none,
817 5, 193, :_reduce_none,
818 6, 193, :_reduce_none,
819 6, 193, :_reduce_none,
820 7, 193, :_reduce_none,
821 4, 193, :_reduce_none,
822 4, 193, :_reduce_none,
823 4, 193, :_reduce_none,
824 4, 193, :_reduce_none,
825 3, 193, :_reduce_none,
826 1, 178, :_reduce_none,
827 3, 188, :_reduce_none,
828 3, 188, :_reduce_none,
829 3, 188, :_reduce_none,
830 5, 194, :_reduce_none,
831 6, 194, :_reduce_none,
832 6, 194, :_reduce_none,
833 7, 194, :_reduce_none,
834 4, 194, :_reduce_none,
835 4, 194, :_reduce_none,
836 4, 194, :_reduce_none,
837 4, 194, :_reduce_none,
838 3, 194, :_reduce_none,
839 1, 179, :_reduce_217,
840 3, 189, :_reduce_none,
841 3, 189, :_reduce_none,
842 3, 189, :_reduce_none,
843 5, 195, :_reduce_none,
844 6, 195, :_reduce_none,
845 6, 195, :_reduce_none,
846 7, 195, :_reduce_none,
847 4, 195, :_reduce_none,
848 4, 195, :_reduce_none,
849 4, 195, :_reduce_none,
850 4, 195, :_reduce_none,
851 3, 195, :_reduce_none,
852 1, 180, :_reduce_230,
853 3, 190, :_reduce_none,
854 3, 190, :_reduce_none,
855 3, 190, :_reduce_none,
856 5, 196, :_reduce_none,
857 6, 196, :_reduce_none,
858 6, 196, :_reduce_none,
859 7, 196, :_reduce_none,
860 4, 196, :_reduce_none,
861 4, 196, :_reduce_none,
862 4, 196, :_reduce_none,
863 4, 196, :_reduce_none,
864 3, 196, :_reduce_none,
865 1, 170, :_reduce_243,
866 3, 171, :_reduce_none,
867 3, 171, :_reduce_none,
868 3, 171, :_reduce_none,
869 1, 181, :_reduce_247,
870 1, 111, :_reduce_none,
871 2, 111, :_reduce_none,
872 3, 197, :_reduce_none,
873 1, 197, :_reduce_none,
874 3, 197, :_reduce_none,
875 1, 149, :_reduce_none,
876 1, 149, :_reduce_none,
877 2, 199, :_reduce_none,
878 2, 199, :_reduce_none,
879 5, 199, :_reduce_none,
880 5, 199, :_reduce_none,
881 2, 199, :_reduce_none,
882 3, 199, :_reduce_none,
883 3, 199, :_reduce_none,
884 3, 199, :_reduce_none,
885 3, 199, :_reduce_none,
886 3, 199, :_reduce_none,
887 3, 199, :_reduce_none,
888 3, 199, :_reduce_none,
889 3, 199, :_reduce_none,
890 3, 199, :_reduce_none,
891 3, 199, :_reduce_none,
892 3, 198, :_reduce_none,
893 1, 198, :_reduce_none,
894 1, 198, :_reduce_none,
895 1, 201, :_reduce_none,
896 1, 201, :_reduce_none,
897 3, 203, :_reduce_none,
898 3, 203, :_reduce_none,
899 3, 203, :_reduce_none,
900 3, 203, :_reduce_none,
901 3, 203, :_reduce_none,
902 3, 202, :_reduce_none,
903 1, 202, :_reduce_none,
904 1, 202, :_reduce_none,
905 1, 202, :_reduce_none,
906 1, 127, :_reduce_none,
907 2, 127, :_reduce_none,
908 1, 200, :_reduce_none,
909 3, 200, :_reduce_none,
910 2, 204, :_reduce_288,
911 1, 204, :_reduce_289,
912 0, 144, :_reduce_290,
913 5, 144, :_reduce_291,
914 1, 205, :_reduce_292,
915 3, 205, :_reduce_293,
916 5, 145, :_reduce_294,
917 1, 206, :_reduce_none,
918 3, 206, :_reduce_none,
919 3, 206, :_reduce_none,
920 3, 206, :_reduce_none,
921 5, 206, :_reduce_none,
922 5, 206, :_reduce_none,
923 5, 206, :_reduce_none,
924 5, 206, :_reduce_none,
925 1, 208, :_reduce_303,
926 1, 208, :_reduce_304,
927 0, 115, :_reduce_none,
928 5, 115, :_reduce_306,
929 2, 115, :_reduce_none,
930 1, 207, :_reduce_308,
931 3, 207, :_reduce_309,
932 1, 209, :_reduce_none,
933 1, 209, :_reduce_none,
934 1, 209, :_reduce_none,
935 1, 133, :_reduce_none,
936 3, 133, :_reduce_none,
937 3, 133, :_reduce_none,
938 1, 210, :_reduce_none,
939 1, 210, :_reduce_none,
940 1, 210, :_reduce_none,
941 1, 134, :_reduce_none,
942 3, 134, :_reduce_none,
943 3, 134, :_reduce_none,
944 1, 211, :_reduce_none,
945 1, 211, :_reduce_none,
946 1, 211, :_reduce_none,
947 1, 135, :_reduce_none,
948 3, 135, :_reduce_none,
949 3, 135, :_reduce_none,
950 1, 212, :_reduce_none,
951 1, 212, :_reduce_none,
952 1, 212, :_reduce_none,
953 1, 136, :_reduce_none,
954 3, 136, :_reduce_none,
955 3, 136, :_reduce_none,
956 1, 213, :_reduce_none,
957 1, 213, :_reduce_none,
958 1, 213, :_reduce_none,
959 1, 137, :_reduce_none,
960 3, 137, :_reduce_none,
961 3, 137, :_reduce_none,
962 1, 214, :_reduce_none,
963 3, 214, :_reduce_none,
964 1, 214, :_reduce_none,
965 1, 214, :_reduce_none,
966 1, 138, :_reduce_none,
967 3, 138, :_reduce_none,
968 3, 138, :_reduce_none,
969 1, 216, :_reduce_none,
970 1, 216, :_reduce_none,
971 3, 216, :_reduce_none,
972 1, 139, :_reduce_none,
973 3, 139, :_reduce_none,
974 3, 139, :_reduce_none,
975 1, 217, :_reduce_353,
976 1, 217, :_reduce_354,
977 3, 217, :_reduce_355,
978 3, 217, :_reduce_356,
979 1, 140, :_reduce_357,
980 3, 140, :_reduce_358,
981 3, 140, :_reduce_359,
982 1, 124, :_reduce_none,
983 3, 124, :_reduce_none,
984 3, 124, :_reduce_none,
985 1, 218, :_reduce_none,
986 3, 218, :_reduce_none,
987 3, 219, :_reduce_365,
988 1, 123, :_reduce_366,
989 1, 123, :_reduce_367,
990 3, 220, :_reduce_368,
991 0, 221, :_reduce_none,
992 1, 221, :_reduce_none,
993 2, 221, :_reduce_none,
994 1, 122, :_reduce_372,
995 1, 148, :_reduce_373,
996 1, 148, :_reduce_374,
997 1, 215, :_reduce_375 ]
998
999racc_reduce_n = 376
1000
1001racc_shift_n = 632
1002
1003racc_token_table = {
1004 false => 0,
1005 :error => 1,
1006 :UMINUS => 2,
1007 :UPLUS => 3,
1008 "*" => 4,
1009 "/" => 5,
1010 "+" => 6,
1011 "-" => 7,
1012 :SYM_EQ => 8,
1013 :SYM_NE => 9,
1014 :SYM_LT => 10,
1015 :SYM_START_DBLOCK => 11,
1016 :SYM_START_CBLOCK => 12,
1017 :SYM_GT => 13,
1018 :SYM_END_CBLOCK => 14,
1019 :SYM_END_DBLOCK => 15,
1020 :SYM_LE => 16,
1021 :SYM_GE => 17,
1022 :EOF => 18,
1023 :V_ARCHETYPE_ID => 19,
1024 :SYM_ARCHETYPE => 20,
1025 :Left_parenthesis_code => 21,
1026 :Right_parenthesis_code => 22,
1027 :Semicolon_code => 23,
1028 :SYM_ADL_VERSION => 24,
1029 :V_VERSION_STRING => 25,
1030 :SYM_IS_CONTROLLED => 26,
1031 :SYM_SPECIALIZE => 27,
1032 :SYM_CONCEPT => 28,
1033 :V_LOCAL_TERM_CODE_REF => 29,
1034 :SYM_LANGUAGE => 30,
1035 :SYM_DESCRIPTION => 31,
1036 :SYM_DEFINITION => 32,
1037 :c_complx_object_head => 33,
1038 :SYM_MATCHES => 34,
1039 :Slash_code => 35,
1040 :REGEXP_BODY => 36,
1041 :ERR_C_DOMAIN_TYPE => 37,
1042 :START_V_C_DOMAIN_TYPE_BLOCK => 38,
1043 :END_V_C_DOMAIN_TYPE_BLOCK => 39,
1044 :SYM_USE_NODE => 40,
1045 :SYM_ALLOW_ARCHETYPE => 41,
1046 :Star_code => 42,
1047 :V_ATTRIBUTE_IDENTIFIER => 43,
1048 :SYM_INCLUDE => 44,
1049 :SYM_EXCLUDE => 45,
1050 ":" => 46,
1051 :SYM_INVARIANT => 47,
1052 :V_ASSERTION_TEXT => 48,
1053 :SYM_ONTOLOGY => 49,
1054 :Left_bracket_code => 50,
1055 :Right_bracket_code => 51,
1056 :V_TYPE_IDENTIFIER => 52,
1057 :V_GENERIC_TYPE_IDENTIFIER => 53,
1058 :V_STRING => 54,
1059 :Comma_code => 55,
1060 :SYM_LIST_CONTINUE => 56,
1061 :V_INTEGER => 57,
1062 :Plus_code => 58,
1063 :Minus_code => 59,
1064 :SYM_INTERVAL_DELIM => 60,
1065 :SYM_ELLIPSIS => 61,
1066 :V_REAL => 62,
1067 :SYM_TRUE => 63,
1068 :SYM_FALSE => 64,
1069 :V_CHARACTER => 65,
1070 :V_ISO8601_EXTENDED_DATE => 66,
1071 :V_ISO8601_EXTENDED_TIME => 67,
1072 :V_ISO8601_EXTENDED_DATE_TIME => 68,
1073 :V_ISO8601_DURATION => 69,
1074 :V_QUALIFIED_TERM_CODE_REF => 70,
1075 :V_URI => 71,
1076 :SYM_EXISTS => 72,
1077 :SYM_NOT => 73,
1078 "=" => 74,
1079 :SYM_AND => 75,
1080 :SYM_OR => 76,
1081 :SYM_XOR => 77,
1082 :SYM_IMPLIES => 78,
1083 "^" => 79,
1084 :SYM_EXISTENCE => 80,
1085 :SYM_CARDINALITY => 81,
1086 :SYM_ORDERED => 82,
1087 :SYM_UNORDERED => 83,
1088 :SYM_UNIQUE => 84,
1089 :SYM_OCCURRENCES => 85,
1090 :V_ISO8601_DATE_CONSTRAINT_PATTERN => 86,
1091 :V_ISO8601_TIME_CONSTRAINT_PATTERN => 87,
1092 :V_ISO8601_DATE_TIME_CONSTRAINT_PATTERN => 88,
1093 :START_TERM_CODE_CONSTRAINT => 89,
1094 :END_TERM_CODE_CONSTRAINT => 90,
1095 :TERM_CODE => 91,
1096 :V_ISO8601_DURATION_CONSTRAINT_PATTERN => 92 }
1097
1098racc_nt_base = 93
1099
1100racc_use_result_var = true
1101
1102Racc_arg = [
1103 racc_action_table,
1104 racc_action_check,
1105 racc_action_default,
1106 racc_action_pointer,
1107 racc_goto_table,
1108 racc_goto_check,
1109 racc_goto_default,
1110 racc_goto_pointer,
1111 racc_nt_base,
1112 racc_reduce_table,
1113 racc_token_table,
1114 racc_shift_n,
1115 racc_reduce_n,
1116 racc_use_result_var ]
1117
1118Racc_token_to_s_table = [
1119 "$end",
1120 "error",
1121 "UMINUS",
1122 "UPLUS",
1123 "\"*\"",
1124 "\"/\"",
1125 "\"+\"",
1126 "\"-\"",
1127 "SYM_EQ",
1128 "SYM_NE",
1129 "SYM_LT",
1130 "SYM_START_DBLOCK",
1131 "SYM_START_CBLOCK",
1132 "SYM_GT",
1133 "SYM_END_CBLOCK",
1134 "SYM_END_DBLOCK",
1135 "SYM_LE",
1136 "SYM_GE",
1137 "EOF",
1138 "V_ARCHETYPE_ID",
1139 "SYM_ARCHETYPE",
1140 "Left_parenthesis_code",
1141 "Right_parenthesis_code",
1142 "Semicolon_code",
1143 "SYM_ADL_VERSION",
1144 "V_VERSION_STRING",
1145 "SYM_IS_CONTROLLED",
1146 "SYM_SPECIALIZE",
1147 "SYM_CONCEPT",
1148 "V_LOCAL_TERM_CODE_REF",
1149 "SYM_LANGUAGE",
1150 "SYM_DESCRIPTION",
1151 "SYM_DEFINITION",
1152 "c_complx_object_head",
1153 "SYM_MATCHES",
1154 "Slash_code",
1155 "REGEXP_BODY",
1156 "ERR_C_DOMAIN_TYPE",
1157 "START_V_C_DOMAIN_TYPE_BLOCK",
1158 "END_V_C_DOMAIN_TYPE_BLOCK",
1159 "SYM_USE_NODE",
1160 "SYM_ALLOW_ARCHETYPE",
1161 "Star_code",
1162 "V_ATTRIBUTE_IDENTIFIER",
1163 "SYM_INCLUDE",
1164 "SYM_EXCLUDE",
1165 "\":\"",
1166 "SYM_INVARIANT",
1167 "V_ASSERTION_TEXT",
1168 "SYM_ONTOLOGY",
1169 "Left_bracket_code",
1170 "Right_bracket_code",
1171 "V_TYPE_IDENTIFIER",
1172 "V_GENERIC_TYPE_IDENTIFIER",
1173 "V_STRING",
1174 "Comma_code",
1175 "SYM_LIST_CONTINUE",
1176 "V_INTEGER",
1177 "Plus_code",
1178 "Minus_code",
1179 "SYM_INTERVAL_DELIM",
1180 "SYM_ELLIPSIS",
1181 "V_REAL",
1182 "SYM_TRUE",
1183 "SYM_FALSE",
1184 "V_CHARACTER",
1185 "V_ISO8601_EXTENDED_DATE",
1186 "V_ISO8601_EXTENDED_TIME",
1187 "V_ISO8601_EXTENDED_DATE_TIME",
1188 "V_ISO8601_DURATION",
1189 "V_QUALIFIED_TERM_CODE_REF",
1190 "V_URI",
1191 "SYM_EXISTS",
1192 "SYM_NOT",
1193 "\"=\"",
1194 "SYM_AND",
1195 "SYM_OR",
1196 "SYM_XOR",
1197 "SYM_IMPLIES",
1198 "\"^\"",
1199 "SYM_EXISTENCE",
1200 "SYM_CARDINALITY",
1201 "SYM_ORDERED",
1202 "SYM_UNORDERED",
1203 "SYM_UNIQUE",
1204 "SYM_OCCURRENCES",
1205 "V_ISO8601_DATE_CONSTRAINT_PATTERN",
1206 "V_ISO8601_TIME_CONSTRAINT_PATTERN",
1207 "V_ISO8601_DATE_TIME_CONSTRAINT_PATTERN",
1208 "START_TERM_CODE_CONSTRAINT",
1209 "END_TERM_CODE_CONSTRAINT",
1210 "TERM_CODE",
1211 "V_ISO8601_DURATION_CONSTRAINT_PATTERN",
1212 "$start",
1213 "input",
1214 "archetype",
1215 "arch_identification",
1216 "arch_specialisation",
1217 "arch_concept",
1218 "arch_language",
1219 "arch_description",
1220 "arch_definition",
1221 "arch_invariant",
1222 "arch_ontology",
1223 "arch_head",
1224 "arch_meta_data",
1225 "arch_meta_data_items",
1226 "arch_meta_data_item",
1227 "dadl_section",
1228 "cadl_section",
1229 "c_complex_object",
1230 "assertions",
1231 "c_complex_object_head",
1232 "c_complex_object_body",
1233 "c_complex_object_id",
1234 "c_occurrences",
1235 "type_identifier",
1236 "c_any",
1237 "c_attributes",
1238 "c_object",
1239 "archetype_internal_ref",
1240 "archetype_slot",
1241 "constraint_ref",
1242 "c_code_phrase",
1243 "c_ordinal",
1244 "c_primitive_object",
1245 "v_c_domain_type",
1246 "absolute_path",
1247 "c_archetype_slot_head",
1248 "c_includes",
1249 "c_excludes",
1250 "c_archetype_slot_id",
1251 "c_primitive",
1252 "c_integer",
1253 "c_real",
1254 "c_date",
1255 "c_time",
1256 "c_date_time",
1257 "c_duration",
1258 "c_string",
1259 "c_boolean",
1260 "c_attribute",
1261 "c_attr_head",
1262 "c_attr_values",
1263 "c_existence",
1264 "c_cardinality",
1265 "invariants",
1266 "invariant",
1267 "any_identifier",
1268 "boolean_expression",
1269 "attr_vals",
1270 "complex_object_block",
1271 "attr_val",
1272 "attr_id",
1273 "object_block",
1274 "primitive_object_block",
1275 "single_attr_object_block",
1276 "multiple_attr_object_block",
1277 "untyped_multiple_attr_object_block",
1278 "multiple_attr_object_block_head",
1279 "keyed_objects",
1280 "keyed_object",
1281 "object_key",
1282 "simple_value",
1283 "untyped_single_attr_object_block",
1284 "single_attr_object_complex_head",
1285 "untyped_primitive_object_block",
1286 "primitive_object_value",
1287 "simple_list_value",
1288 "simple_interval_value",
1289 "term_code",
1290 "term_code_list_value",
1291 "string_value",
1292 "integer_value",
1293 "real_value",
1294 "boolean_value",
1295 "character_value",
1296 "date_value",
1297 "time_value",
1298 "date_time_value",
1299 "duration_value",
1300 "uri_value",
1301 "string_list_value",
1302 "integer_list_value",
1303 "real_list_value",
1304 "boolean_list_value",
1305 "character_list_value",
1306 "date_list_value",
1307 "time_list_value",
1308 "date_time_list_value",
1309 "duration_list_value",
1310 "integer_interval_value",
1311 "real_interval_value",
1312 "date_interval_value",
1313 "time_interval_value",
1314 "date_time_interval_value",
1315 "duration_interval_value",
1316 "assertion",
1317 "boolean_leaf",
1318 "boolean_node",
1319 "relative_path",
1320 "arithmetic_expression",
1321 "arithmetic_leaf",
1322 "arithmetic_node",
1323 "path_segment",
1324 "existence_spec",
1325 "cardinality_spec",
1326 "occurrence_spec",
1327 "cardinality_limit_value",
1328 "c_integer_spec",
1329 "c_real_spec",
1330 "c_date_constraint",
1331 "c_time_constraint",
1332 "c_date_time_constraint",
1333 "c_duration_constraint",
1334 "duration_pattern",
1335 "c_string_spec",
1336 "c_boolean_spec",
1337 "c_ordinal_spec",
1338 "ordinal",
1339 "term_code_constraint_section",
1340 "term_code_body" ]
1341
1342Racc_debug_parser = false
1343
1344##### State transition tables end #####
1345
1346# reduce 0 omitted
1347
1348module_eval(<<'.,.,', 'parser.y', 30)
1349 def _reduce_1(val, _values, result)
1350 result = val[0]
1351
1352 result
1353 end
1354.,.,
1355
1356# reduce 2 omitted
1357
1358module_eval(<<'.,.,', 'parser.y', 36)
1359 def _reduce_3(val, _values, result)
1360 assert_at(__FILE__,__LINE__) do
1361 val[4].instance_of?(OpenEhr::AM::Archetype::Archetype_Description::ARCHETYPE_DESCRIPTION) and val[5].instance_of?(OpenEhr::AM::Archetype::ConstraintModel::C_COMPLEX_OBJECT) and val[7].instance_of?(OpenEhr::AM::Archetype::Ontology::ARCHETYPE_ONTOLOGY)
1362 end
1363
1364 archetype_id = val[0][:archetype_id]
1365 parent_archtype_id = val[1][:parent_archtype_id] if val[1]
1366 adl_version = val[0][:arch_head][:arch_meta_data][:adl_version]
1367 concept = val[2][:arch_concept]
1368 language = val[3][:arch_language]
1369 archetype = OpenEhr::AM::Archetype::ARCHETYPE.create(
1370 :archetype_id => archetype_id,
1371 :parent_archtype_id => parent_archtype_id,
1372 :adl_version => adl_version,
1373 :concept => concept,
1374 :description => val[4],
1375 :definition => val[5],
1376 :ontology => val[7]
1377 ) do |archetype|
1378 archetype.original_language = language
1379 end
1380 @@logger.debug("#{__FILE__}:#{__LINE__}: archetype = #{archetype.to_yaml} at #{@filename}:#{@lineno}")
1381 result = archetype
1382
1383 result
1384 end
1385.,.,
1386
1387module_eval(<<'.,.,', 'parser.y', 63)
1388 def _reduce_4(val, _values, result)
1389 result = {:arch_head => val[0], :archetype_id => val[1] }
1390
1391 result
1392 end
1393.,.,
1394
1395module_eval(<<'.,.,', 'parser.y', 67)
1396 def _reduce_5(val, _values, result)
1397 raise
1398
1399 result
1400 end
1401.,.,
1402
1403module_eval(<<'.,.,', 'parser.y', 72)
1404 def _reduce_6(val, _values, result)
1405 result = {:arch_meta_data => nil }
1406
1407 result
1408 end
1409.,.,
1410
1411module_eval(<<'.,.,', 'parser.y', 76)
1412 def _reduce_7(val, _values, result)
1413 result = val[1]
1414
1415 result
1416 end
1417.,.,
1418
1419module_eval(<<'.,.,', 'parser.y', 81)
1420 def _reduce_8(val, _values, result)
1421 result = {:arch_meta_data => val[1] }
1422
1423 result
1424 end
1425.,.,
1426
1427module_eval(<<'.,.,', 'parser.y', 86)
1428 def _reduce_9(val, _values, result)
1429 result = val[0]
1430
1431 result
1432 end
1433.,.,
1434
1435module_eval(<<'.,.,', 'parser.y', 90)
1436 def _reduce_10(val, _values, result)
1437 result = val[0].merge(val[2])
1438
1439 result
1440 end
1441.,.,
1442
1443module_eval(<<'.,.,', 'parser.y', 96)
1444 def _reduce_11(val, _values, result)
1445 result = {:adl_version => val[2], :is_controlled => false }
1446
1447 result
1448 end
1449.,.,
1450
1451module_eval(<<'.,.,', 'parser.y', 100)
1452 def _reduce_12(val, _values, result)
1453 result = {:is_controlled => true }
1454
1455 result
1456 end
1457.,.,
1458
1459# reduce 13 omitted
1460
1461module_eval(<<'.,.,', 'parser.y', 108)
1462 def _reduce_14(val, _values, result)
1463 result = {:parent_archtype_id => val[1]}
1464
1465 result
1466 end
1467.,.,
1468
1469# reduce 15 omitted
1470
1471module_eval(<<'.,.,', 'parser.y', 114)
1472 def _reduce_16(val, _values, result)
1473 result = {:arch_concept => val[1] }
1474
1475 result
1476 end
1477.,.,
1478
1479# reduce 17 omitted
1480
1481module_eval(<<'.,.,', 'parser.y', 124)
1482 def _reduce_18(val, _values, result)
1483 result = {:arch_language => nil}
1484
1485 result
1486 end
1487.,.,
1488
1489module_eval(<<'.,.,', 'parser.y', 128)
1490 def _reduce_19(val, _values, result)
1491 result = {:arch_language => val[1]}
1492
1493 result
1494 end
1495.,.,
1496
1497# reduce 20 omitted
1498
1499# reduce 21 omitted
1500
1501module_eval(<<'.,.,', 'parser.y', 139)
1502 def _reduce_22(val, _values, result)
1503 result = OpenEhr::AM::Archetype::Archetype_Description::ARCHETYPE_DESCRIPTION.new(:details => val[1])
1504
1505 result
1506 end
1507.,.,
1508
1509# reduce 23 omitted
1510
1511module_eval(<<'.,.,', 'parser.y', 147)
1512 def _reduce_24(val, _values, result)
1513 result = val[1]
1514
1515 result
1516 end
1517.,.,
1518
1519# reduce 25 omitted
1520
1521module_eval(<<'.,.,', 'parser.y', 155)
1522 def _reduce_26(val, _values, result)
1523 assert_at(__FILE__,__LINE__){val[0].instance_of?(OpenEhr::AM::Archetype::ConstraintModel::C_COMPLEX_OBJECT)}
1524 @@logger.debug("#{__FILE__}:#{__LINE__}: c_complex_object = #{val[0]} at #{@filename}:#{@lineno}")
1525 result = val[0]
1526
1527 result
1528 end
1529.,.,
1530
1531module_eval(<<'.,.,', 'parser.y', 161)
1532 def _reduce_27(val, _values, result)
1533 result = val[0]
1534
1535 result
1536 end
1537.,.,
1538
1539module_eval(<<'.,.,', 'parser.y', 169)
1540 def _reduce_28(val, _values, result)
1541 result = OpenEhr::AM::Archetype::ConstraintModel::C_COMPLEX_OBJECT.create(:attributes => val[3]) do |c_complex_object|
1542 c_complex_object.node_id = val[0][:c_complex_object_id][:local_term_code_ref]
1543 c_complex_object.rm_type_name = val[0][:c_complex_object_id][:type_identifier]
1544 c_complex_object.occurrences = val[0][:c_occurrences]
1545 end
1546
1547 result
1548 end
1549.,.,
1550
1551module_eval(<<'.,.,', 'parser.y', 177)
1552 def _reduce_29(val, _values, result)
1553 result = OpenEhr::AM::Archetype::ConstraintModel::C_COMPLEX_OBJECT.create(:attributes => val[3]) do |c_complex_object|
1554 c_complex_object.node_id = val[0][:c_complex_object_id][:local_term_code_ref]
1555 c_complex_object.rm_type_name = val[0][:c_complex_object_id][:type_identifier]
1556 c_complex_object.occurrences = val[0][:c_occurrences]
1557 end
1558
1559 result
1560 end
1561.,.,
1562
1563module_eval(<<'.,.,', 'parser.y', 188)
1564 def _reduce_30(val, _values, result)
1565 result = {:c_complex_object_id => val[0], :c_occurrences => val[1]}
1566
1567 result
1568 end
1569.,.,
1570
1571module_eval(<<'.,.,', 'parser.y', 193)
1572 def _reduce_31(val, _values, result)
1573 result = {:type_identifier => val[0]}
1574
1575 result
1576 end
1577.,.,
1578
1579module_eval(<<'.,.,', 'parser.y', 197)
1580 def _reduce_32(val, _values, result)
1581 result = {:type_identifier => val[0], :local_term_code_ref => val[1]}
1582
1583 result
1584 end
1585.,.,
1586
1587# reduce 33 omitted
1588
1589module_eval(<<'.,.,', 'parser.y', 203)
1590 def _reduce_34(val, _values, result)
1591 result = OpenEhr::AM::Archetype::ConstraintModel::C_COMPLEX_OBJECT.new(:attributes => val[0])
1592
1593 result
1594 end
1595.,.,
1596
1597module_eval(<<'.,.,', 'parser.y', 221)
1598 def _reduce_35(val, _values, result)
1599 @@logger.debug("#{__FILE__}:#{__LINE__}: c_complex_object = #{val[0].inspect} at #{@filename}:#{@lineno}")
1600 result = val[0]
1601
1602 result
1603 end
1604.,.,
1605
1606module_eval(<<'.,.,', 'parser.y', 226)
1607 def _reduce_36(val, _values, result)
1608 result = OpenEhr::AM::Archetype::ConstraintModel::ARCHETYPE_INTERNAL_REF.create do |archetype_internal_ref|
1609 archetype_internal_ref.target_path = val[0][:absolute_path]
1610 archetype_internal_ref.rm_type_name = val[0][:type_identifier]
1611 archetype_internal_ref.occurrences = val[0][:c_occurrences]
1612 end
1613
1614 result
1615 end
1616.,.,
1617
1618module_eval(<<'.,.,', 'parser.y', 234)
1619 def _reduce_37(val, _values, result)
1620 result = val[0]
1621
1622 result
1623 end
1624.,.,
1625
1626module_eval(<<'.,.,', 'parser.y', 238)
1627 def _reduce_38(val, _values, result)
1628 result = OpenEhr::AM::Archetype::ConstraintModel::CONSTRAINT_REF.create do |constraint_ref|
1629 constraint_ref.reference = val[0]
1630 end
1631
1632 result
1633 end
1634.,.,
1635
1636module_eval(<<'.,.,', 'parser.y', 244)
1637 def _reduce_39(val, _values, result)
1638 result = val[0]
1639
1640 result
1641 end
1642.,.,
1643
1644module_eval(<<'.,.,', 'parser.y', 248)
1645 def _reduce_40(val, _values, result)
1646 result = val[0]
1647
1648 result
1649 end
1650.,.,
1651
1652module_eval(<<'.,.,', 'parser.y', 252)
1653 def _reduce_41(val, _values, result)
1654 result = val[0]
1655
1656 result
1657 end
1658.,.,
1659
1660module_eval(<<'.,.,', 'parser.y', 256)
1661 def _reduce_42(val, _values, result)
1662 result = val[0]
1663
1664 result
1665 end
1666.,.,
1667
1668# reduce 43 omitted
1669
1670# reduce 44 omitted
1671
1672module_eval(<<'.,.,', 'parser.y', 289)
1673 def _reduce_45(val, _values, result)
1674 result = val[1]
1675
1676 result
1677 end
1678.,.,
1679
1680module_eval(<<'.,.,', 'parser.y', 295)
1681 def _reduce_46(val, _values, result)
1682 result = {:type_identifier => val[1], :c_occurrences => val[2], :absolute_path => val[3] }
1683
1684 result
1685 end
1686.,.,
1687
1688# reduce 47 omitted
1689
1690module_eval(<<'.,.,', 'parser.y', 302)
1691 def _reduce_48(val, _values, result)
1692 result = OpenEhr::AM::Archetype::ConstraintModel::ARCHETYPE_SLOT.create do |archetype_slot|
1693 archetype_slot.includes = val[3]
1694 archetype_slot.excludes = val[4]
1695 archetype_slot.rm_type_name = val[0][:c_archetype_slot_id]
1696 archetype_slot.occurrences = val[0][:c_occurrences]
1697 end
1698
1699 result
1700 end
1701.,.,
1702
1703module_eval(<<'.,.,', 'parser.y', 311)
1704 def _reduce_49(val, _values, result)
1705 result = {:c_archetype_slot_id => val[0],:c_occurrences => val[1]}
1706
1707 result
1708 end
1709.,.,
1710
1711module_eval(<<'.,.,', 'parser.y', 316)
1712 def _reduce_50(val, _values, result)
1713 result = val[1]
1714
1715 result
1716 end
1717.,.,
1718
1719# reduce 51 omitted
1720
1721# reduce 52 omitted
1722
1723module_eval(<<'.,.,', 'parser.y', 324)
1724 def _reduce_53(val, _values, result)
1725 assert_at(__FILE__,__LINE__){val[0].kind_of?(OpenEhr::AM::Archetype::ConstraintModel::Primitive::C_PRIMITIVE)}
1726 result = OpenEhr::AM::Archetype::ConstraintModel::C_PRIMITIVE_OBJECT.create do |c_primitive_object|
1727 c_primitive_object.item = val[0]
1728 end
1729
1730 result
1731 end
1732.,.,
1733
1734module_eval(<<'.,.,', 'parser.y', 332)
1735 def _reduce_54(val, _values, result)
1736 @@logger.debug("#{__FILE__}:#{__LINE__}: c_integer = #{val[0]} at #{@filename}:#{@lineno}")
1737 result = OpenEhr::AM::Archetype::ConstraintModel::Primitive::C_INTEGER.create do |c_integer|
1738 c_integer.list
1739 c_integer.range
1740 c_integer.assumed_value
1741 end
1742
1743 result
1744 end
1745.,.,
1746
1747module_eval(<<'.,.,', 'parser.y', 341)
1748 def _reduce_55(val, _values, result)
1749 @@logger.debug("#{__FILE__}:#{__LINE__}: c_real = #{val[0]} at #{@filename}:#{@lineno}")
1750 result = OpenEhr::AM::Archetype::ConstraintModel::Primitive::C_REAL.new
1751
1752 result
1753 end
1754.,.,
1755
1756module_eval(<<'.,.,', 'parser.y', 346)
1757 def _reduce_56(val, _values, result)
1758 @@logger.debug("#{__FILE__}:#{__LINE__}: c_date = #{val[0]} at #{@filename}:#{@lineno}")
1759 result = OpenEhr::AM::Archetype::ConstraintModel::Primitive::C_DATE.new
1760
1761 result
1762 end
1763.,.,
1764
1765module_eval(<<'.,.,', 'parser.y', 351)
1766 def _reduce_57(val, _values, result)
1767 @@logger.debug("#{__FILE__}:#{__LINE__}: c_time = #{val[0]} at #{@filename}:#{@lineno}")
1768 result = OpenEhr::AM::Archetype::ConstraintModel::Primitive::C_TIME.new
1769
1770 result
1771 end
1772.,.,
1773
1774module_eval(<<'.,.,', 'parser.y', 356)
1775 def _reduce_58(val, _values, result)
1776 @@logger.debug("#{__FILE__}:#{__LINE__}: c_date_time = #{val[0]} at #{@filename}:#{@lineno}")
1777 result = OpenEhr::AM::Archetype::ConstraintModel::Primitive::C_DATE_TIME.new
1778
1779 result
1780 end
1781.,.,
1782
1783module_eval(<<'.,.,', 'parser.y', 361)
1784 def _reduce_59(val, _values, result)
1785 @@logger.debug("#{__FILE__}:#{__LINE__}: c_duration = #{val[0]} at #{@filename}:#{@lineno}")
1786 result = OpenEhr::AM::Archetype::ConstraintModel::Primitive::C_DURATION.new
1787
1788 result
1789 end
1790.,.,
1791
1792module_eval(<<'.,.,', 'parser.y', 366)
1793 def _reduce_60(val, _values, result)
1794 @@logger.debug("#{__FILE__}:#{__LINE__}: c_string = #{val[0]} at #{@filename}:#{@lineno}")
1795 result = OpenEhr::AM::Archetype::ConstraintModel::Primitive::C_STRING.new
1796
1797 result
1798 end
1799.,.,
1800
1801module_eval(<<'.,.,', 'parser.y', 371)
1802 def _reduce_61(val, _values, result)
1803 assert_at(__FILE__,__LINE__){val[0].instance_of?(OpenEhr::AM::Archetype::ConstraintModel::Primitive::C_BOOLEAN)}
1804 @@logger.debug("#{__FILE__}:#{__LINE__}: c_boolean = #{val[0]} at #{@filename}:#{@lineno}")
1805 result = val[0]
1806
1807 result
1808 end
1809.,.,
1810
1811# reduce 62 omitted
1812
1813module_eval(<<'.,.,', 'parser.y', 383)
1814 def _reduce_63(val, _values, result)
1815 result = [val[0]]
1816
1817 result
1818 end
1819.,.,
1820
1821module_eval(<<'.,.,', 'parser.y', 387)
1822 def _reduce_64(val, _values, result)
1823 result = (val[0] << val[1])
1824
1825 result
1826 end
1827.,.,
1828
1829module_eval(<<'.,.,', 'parser.y', 393)
1830 def _reduce_65(val, _values, result)
1831 assert_at(__FILE__,__LINE__){ val[0].kind_of?(OpenEhr::AM::Archetype::ConstraintModel::C_ATTRIBUTE)}
1832 c_attribute = val[0]
1833 c_attribute.children = val[3]
1834 result = c_attribute
1835
1836 result
1837 end
1838.,.,
1839
1840module_eval(<<'.,.,', 'parser.y', 401)
1841 def _reduce_66(val, _values, result)
1842 assert_at(__FILE__,__LINE__){ val[0].kind_of?(OpenEhr::AM::Archetype::ConstraintModel::C_ATTRIBUTE)}
1843 result = val[0]
1844
1845 result
1846 end
1847.,.,
1848
1849module_eval(<<'.,.,', 'parser.y', 406)
1850 def _reduce_67(val, _values, result)
1851 assert_at(__FILE__,__LINE__){ val[0].kind_of?(OpenEhr::AM::Archetype::ConstraintModel::C_ATTRIBUTE)}
1852 result = val[0]
1853
1854 result
1855 end
1856.,.,
1857
1858module_eval(<<'.,.,', 'parser.y', 413)
1859 def _reduce_68(val, _values, result)
1860 @@logger.debug("#{__FILE__}:#{__LINE__}: V_ATTRIBUTE_IDENTIFIER = #{val[0]}, c_existence = #{val[1]} at #{@filename}")
1861 result = OpenEhr::AM::Archetype::ConstraintModel::C_SINGLE_ATTRIBUTE.new(
1862 :rm_attribute_name => val[0],
1863 :existence => val[1]
1864 )
1865
1866
1867 result
1868 end
1869.,.,
1870
1871module_eval(<<'.,.,', 'parser.y', 422)
1872 def _reduce_69(val, _values, result)
1873 assert_at(__FILE__,__LINE__){ val[2].instance_of?(OpenEhr::AM::Archetype::ConstraintModel::CARDINALITY) }
1874 @@logger.debug("#{__FILE__}:#{__LINE__}: V_ATTRIBUTE_IDENTIFIER: #{val[0]}, c_existence = #{val[1]}, c_cardinality = #{val[2]} at #{@filename}")
1875 result = OpenEhr::AM::Archetype::ConstraintModel::C_MULTIPLE_ATTRIBUTE.new(
1876 :rm_attribute_name => val[0],
1877 :existence => val[1],
1878 :cardinality => val[2]
1879 )
1880
1881 result
1882 end
1883.,.,
1884
1885module_eval(<<'.,.,', 'parser.y', 433)
1886 def _reduce_70(val, _values, result)
1887 result = Array[val[0]]
1888
1889 result
1890 end
1891.,.,
1892
1893module_eval(<<'.,.,', 'parser.y', 437)
1894 def _reduce_71(val, _values, result)
1895 result = (val[0] << val[1])
1896
1897 result
1898 end
1899.,.,
1900
1901module_eval(<<'.,.,', 'parser.y', 441)
1902 def _reduce_72(val, _values, result)
1903 result = Array[val[0]]
1904
1905 result
1906 end
1907.,.,
1908
1909# reduce 73 omitted
1910
1911module_eval(<<'.,.,', 'parser.y', 449)
1912 def _reduce_74(val, _values, result)
1913 result = val[1]
1914
1915 result
1916 end
1917.,.,
1918
1919# reduce 75 omitted
1920
1921module_eval(<<'.,.,', 'parser.y', 457)
1922 def _reduce_76(val, _values, result)
1923 result = val[1]
1924
1925 result
1926 end
1927.,.,
1928
1929# reduce 77 omitted
1930
1931# reduce 78 omitted
1932
1933# reduce 79 omitted
1934
1935# reduce 80 omitted
1936
1937# reduce 81 omitted
1938
1939# reduce 82 omitted
1940
1941# reduce 83 omitted
1942
1943# reduce 84 omitted
1944
1945module_eval(<<'.,.,', 'parser.y', 477)
1946 def _reduce_85(val, _values, result)
1947 dadl_section = val[1]
1948 result = OpenEhr::AM::Archetype::Ontology::ARCHETYPE_ONTOLOGY.new
1949
1950 result
1951 end
1952.,.,
1953
1954# reduce 86 omitted
1955
1956# reduce 87 omitted
1957
1958module_eval(<<'.,.,', 'parser.y', 487)
1959 def _reduce_88(val, _values, result)
1960 @@logger.debug("#{__FILE__}:#{__LINE__}:dadl_section attr_vals = \n#{val[0].to_yaml}")
1961 result = val[0]
1962
1963 result
1964 end
1965.,.,
1966
1967module_eval(<<'.,.,', 'parser.y', 492)
1968 def _reduce_89(val, _values, result)
1969 @@logger.debug("#{__FILE__}:#{__LINE__}:dadl_section complex_object_block = \n#{val[0].to_yaml}")
1970 result = val[0]
1971
1972 result
1973 end
1974.,.,
1975
1976module_eval(<<'.,.,', 'parser.y', 499)
1977 def _reduce_90(val, _values, result)
1978 result = Array[val[0]]
1979
1980 result
1981 end
1982.,.,
1983
1984module_eval(<<'.,.,', 'parser.y', 503)
1985 def _reduce_91(val, _values, result)
1986 result = (val[0] << val[1])
1987
1988 result
1989 end
1990.,.,
1991
1992module_eval(<<'.,.,', 'parser.y', 507)
1993 def _reduce_92(val, _values, result)
1994 result = (val[0] << val[2])
1995
1996 result
1997 end
1998.,.,
1999
2000module_eval(<<'.,.,', 'parser.y', 512)
2001 def _reduce_93(val, _values, result)
2002 @@logger.debug("#{__FILE__}:#{__LINE__}:attr_val\n attr_id = #{val[0]}, object_block = #{val[1]}")
2003 result = {:attr_id => val[0], :object_block => val[2]}
2004
2005 result
2006 end
2007.,.,
2008
2009module_eval(<<'.,.,', 'parser.y', 518)
2010 def _reduce_94(val, _values, result)
2011 @@logger.debug("#{__FILE__}:#{__LINE__}: V_ATTRIBUTE_IDENTIFIER = #{val[0]}")
2012 result = val[0]
2013
2014 result
2015 end
2016.,.,
2017
2018# reduce 95 omitted
2019
2020module_eval(<<'.,.,', 'parser.y', 525)
2021 def _reduce_96(val, _values, result)
2022 result = val[0]
2023
2024 result
2025 end
2026.,.,
2027
2028module_eval(<<'.,.,', 'parser.y', 529)
2029 def _reduce_97(val, _values, result)
2030 result = val[0]
2031
2032 result
2033 end
2034.,.,
2035
2036module_eval(<<'.,.,', 'parser.y', 534)
2037 def _reduce_98(val, _values, result)
2038 result = val[0]
2039
2040 result
2041 end
2042.,.,
2043
2044module_eval(<<'.,.,', 'parser.y', 538)
2045 def _reduce_99(val, _values, result)
2046 result = val[0]
2047
2048 result
2049 end
2050.,.,
2051
2052module_eval(<<'.,.,', 'parser.y', 543)
2053 def _reduce_100(val, _values, result)
2054 result = {:untyped_multiple_attr_object_block => val[0]}
2055
2056 result
2057 end
2058.,.,
2059
2060module_eval(<<'.,.,', 'parser.y', 547)
2061 def _reduce_101(val, _values, result)
2062 result = {:type_identifier => val[0], :untyped_multiple_attr_object_block => val[1]}
2063
2064 result
2065 end
2066.,.,
2067
2068module_eval(<<'.,.,', 'parser.y', 552)
2069 def _reduce_102(val, _values, result)
2070 result = {:multiple_attr_object_block_head => val[0], :keyed_objects => val[1]}
2071
2072 result
2073 end
2074.,.,
2075
2076module_eval(<<'.,.,', 'parser.y', 557)
2077 def _reduce_103(val, _values, result)
2078 result = val[0]
2079
2080 result
2081 end
2082.,.,
2083
2084module_eval(<<'.,.,', 'parser.y', 562)
2085 def _reduce_104(val, _values, result)
2086 result = Array[val[0]]
2087
2088 result
2089 end
2090.,.,
2091
2092module_eval(<<'.,.,', 'parser.y', 566)
2093 def _reduce_105(val, _values, result)
2094 result = (val[0] << val[1])
2095
2096 result
2097 end
2098.,.,
2099
2100module_eval(<<'.,.,', 'parser.y', 571)
2101 def _reduce_106(val, _values, result)
2102 @@logger.debug("#{__FILE__}:#{__LINE__}: keyed_object = #{val[0]} at #{@filename}:#{@lineno}")
2103 result = {:object_key => val[0], :object_block => val[2]}
2104
2105 result
2106 end
2107.,.,
2108
2109module_eval(<<'.,.,', 'parser.y', 577)
2110 def _reduce_107(val, _values, result)
2111 @@logger.debug("object_key: [#{val[1]}] at #{@filename}:#{@lineno}")
2112 result = val[1]
2113
2114 result
2115 end
2116.,.,
2117
2118module_eval(<<'.,.,', 'parser.y', 583)
2119 def _reduce_108(val, _values, result)
2120 result = {:untyped_single_attr_object_block => val[0]}
2121
2122 result
2123 end
2124.,.,
2125
2126module_eval(<<'.,.,', 'parser.y', 587)
2127 def _reduce_109(val, _values, result)
2128 result = {:type_identifier => val[0], :untyped_single_attr_object_block => val[1]}
2129
2130 result
2131 end
2132.,.,
2133
2134module_eval(<<'.,.,', 'parser.y', 592)
2135 def _reduce_110(val, _values, result)
2136 @@logger.debug("#{__FILE__}:#{__LINE__}: single_attr_object_complex_head = #{val[0]} at #{@filename}:#{@lineno}")
2137 result = {:single_attr_object_complex_head => val[0]}
2138
2139 result
2140 end
2141.,.,
2142
2143module_eval(<<'.,.,', 'parser.y', 597)
2144 def _reduce_111(val, _values, result)
2145 @@logger.debug("#{__FILE__}:#{__LINE__}: attr_vals = #{val[1]} at #{@filename}:#{@lineno}")
2146 result = {:single_attr_object_complex_head => val[0], :attr_vals => val[1]}
2147
2148 result
2149 end
2150.,.,
2151
2152# reduce 112 omitted
2153
2154module_eval(<<'.,.,', 'parser.y', 603)
2155 def _reduce_113(val, _values, result)
2156 @@logger.debug("#{__FILE__}:#{__LINE__}: untyped_primitive_object_block = #{val[0]} at #{@filename}:#{@lineno}")
2157 result = {:untyped_primitive_object_block => val[0]}
2158
2159 result
2160 end
2161.,.,
2162
2163module_eval(<<'.,.,', 'parser.y', 608)
2164 def _reduce_114(val, _values, result)
2165 @@logger.debug("#{__FILE__}:#{__LINE__}: type_identifier = #{val[0]}, untyped_primitive_object_block = #{val[1]} at #{@filename}:#{@lineno}")
2166 result = {:type_identifier => val[0], :untyped_primitive_object_block => val[1]}
2167
2168 result
2169 end
2170.,.,
2171
2172module_eval(<<'.,.,', 'parser.y', 613)
2173 def _reduce_115(val, _values, result)
2174 @@logger.debug("#{__FILE__}:#{__LINE__}: primitive_object_block = <#{val[1]}> at #{@filename}:#{@lineno}")
2175 result = val[1]
2176
2177 result
2178 end
2179.,.,
2180
2181module_eval(<<'.,.,', 'parser.y', 618)
2182 def _reduce_116(val, _values, result)
2183 result = val[0]
2184
2185 result
2186 end
2187.,.,
2188
2189module_eval(<<'.,.,', 'parser.y', 622)
2190 def _reduce_117(val, _values, result)
2191 result = val[0]
2192
2193 result
2194 end
2195.,.,
2196
2197module_eval(<<'.,.,', 'parser.y', 626)
2198 def _reduce_118(val, _values, result)
2199 result = val[0]
2200
2201 result
2202 end
2203.,.,
2204
2205module_eval(<<'.,.,', 'parser.y', 630)
2206 def _reduce_119(val, _values, result)
2207 result = val[0]
2208
2209 result
2210 end
2211.,.,
2212
2213module_eval(<<'.,.,', 'parser.y', 634)
2214 def _reduce_120(val, _values, result)
2215 result = val[0]
2216
2217 result
2218 end
2219.,.,
2220
2221module_eval(<<'.,.,', 'parser.y', 638)
2222 def _reduce_121(val, _values, result)
2223 @@logger.debug("string_value: #{val[0]} at #{@filename}:#{@lineno}")
2224 result = val[0]
2225
2226 result
2227 end
2228.,.,
2229
2230module_eval(<<'.,.,', 'parser.y', 643)
2231 def _reduce_122(val, _values, result)
2232 @@logger.debug("integer_value: #{val[0]} at #{@filename}:#{@lineno}")
2233 result = val[0]
2234
2235 result
2236 end
2237.,.,
2238
2239module_eval(<<'.,.,', 'parser.y', 648)
2240 def _reduce_123(val, _values, result)
2241 @@logger.debug("real_value: #{val[0]} at #{@filename}:#{@lineno}")
2242 result = val[0]
2243
2244 result
2245 end
2246.,.,
2247
2248module_eval(<<'.,.,', 'parser.y', 653)
2249 def _reduce_124(val, _values, result)
2250 @@logger.debug("boolean_value: #{val[0]} at #{@filename}:#{@lineno}")
2251 result = val[0]
2252
2253 result
2254 end
2255.,.,
2256
2257module_eval(<<'.,.,', 'parser.y', 658)
2258 def _reduce_125(val, _values, result)
2259 @@logger.debug("character_value: #{val[0]} at #{@filename}:#{@lineno}")
2260 result = val[0]
2261
2262 result
2263 end
2264.,.,
2265
2266module_eval(<<'.,.,', 'parser.y', 663)
2267 def _reduce_126(val, _values, result)
2268 @@logger.debug("date_value: #{val[0]} at #{@filename}:#{@lineno}")
2269 result = val[0]
2270
2271 result
2272 end
2273.,.,
2274
2275module_eval(<<'.,.,', 'parser.y', 668)
2276 def _reduce_127(val, _values, result)
2277 @@logger.debug("time_value: #{val[0]} at #{@filename}:#{@lineno}")
2278 result = val[0]
2279
2280 result
2281 end
2282.,.,
2283
2284module_eval(<<'.,.,', 'parser.y', 673)
2285 def _reduce_128(val, _values, result)
2286 @@logger.debug("date_time_value: #{val[0]} at #{@filename}:#{@lineno}")
2287 result = val[0]
2288
2289 result
2290 end
2291.,.,
2292
2293module_eval(<<'.,.,', 'parser.y', 678)
2294 def _reduce_129(val, _values, result)
2295 @@logger.debug("duration_value: #{val[0]} at #{@filename}:#{@lineno}")
2296 result = val[0]
2297
2298 result
2299 end
2300.,.,
2301
2302module_eval(<<'.,.,', 'parser.y', 683)
2303 def _reduce_130(val, _values, result)
2304 @@logger.debug("uri_value: #{val[0]} at #{@filename}:#{@lineno}")
2305 result = val[0]
2306
2307 result
2308 end
2309.,.,
2310
2311module_eval(<<'.,.,', 'parser.y', 689)
2312 def _reduce_131(val, _values, result)
2313 @@logger.debug("string_list_value: #{val[0]} at #{@filename}:#{@lineno}")
2314 result = val[0]
2315
2316 result
2317 end
2318.,.,
2319
2320module_eval(<<'.,.,', 'parser.y', 694)
2321 def _reduce_132(val, _values, result)
2322 result = val[0]
2323
2324 result
2325 end
2326.,.,
2327
2328module_eval(<<'.,.,', 'parser.y', 698)
2329 def _reduce_133(val, _values, result)
2330 result = val[0]
2331
2332 result
2333 end
2334.,.,
2335
2336module_eval(<<'.,.,', 'parser.y', 702)
2337 def _reduce_134(val, _values, result)
2338 result = val[0]
2339
2340 result
2341 end
2342.,.,
2343
2344module_eval(<<'.,.,', 'parser.y', 706)
2345 def _reduce_135(val, _values, result)
2346 result = val[0]
2347
2348 result
2349 end
2350.,.,
2351
2352module_eval(<<'.,.,', 'parser.y', 710)
2353 def _reduce_136(val, _values, result)
2354 result = val[0]
2355
2356 result
2357 end
2358.,.,
2359
2360module_eval(<<'.,.,', 'parser.y', 714)
2361 def _reduce_137(val, _values, result)
2362 result = val[0]
2363
2364 result
2365 end
2366.,.,
2367
2368module_eval(<<'.,.,', 'parser.y', 718)
2369 def _reduce_138(val, _values, result)
2370 result = val[0]
2371
2372 result
2373 end
2374.,.,
2375
2376module_eval(<<'.,.,', 'parser.y', 722)
2377 def _reduce_139(val, _values, result)
2378 result = val[0]
2379
2380 result
2381 end
2382.,.,
2383
2384# reduce 140 omitted
2385
2386# reduce 141 omitted
2387
2388# reduce 142 omitted
2389
2390# reduce 143 omitted
2391
2392# reduce 144 omitted
2393
2394# reduce 145 omitted
2395
2396module_eval(<<'.,.,', 'parser.y', 734)
2397 def _reduce_146(val, _values, result)
2398 @@logger.debug("V_TYPE_IDENTIFIER: #{val[0]} at #{@filename}:#{@lineno}")
2399 result = val[0]
2400
2401 result
2402 end
2403.,.,
2404
2405module_eval(<<'.,.,', 'parser.y', 739)
2406 def _reduce_147(val, _values, result)
2407 @@logger.debug("V_GENERIC_TYPE_IDENTIFIER: #{val[0]} at #{@filename}:#{@lineno}")
2408 result = val[0]
2409
2410 result
2411 end
2412.,.,
2413
2414module_eval(<<'.,.,', 'parser.y', 745)
2415 def _reduce_148(val, _values, result)
2416 @@logger.debug("V_STRING: #{val[0]} at #{@filename}:#{@lineno}")
2417 result = val[0]
2418
2419 result
2420 end
2421.,.,
2422
2423module_eval(<<'.,.,', 'parser.y', 751)
2424 def _reduce_149(val, _values, result)
2425 result = [val[0],val[2]]
2426
2427 result
2428 end
2429.,.,
2430
2431module_eval(<<'.,.,', 'parser.y', 755)
2432 def _reduce_150(val, _values, result)
2433 result = val[0] << val[2]
2434
2435 result
2436 end
2437.,.,
2438
2439module_eval(<<'.,.,', 'parser.y', 759)
2440 def _reduce_151(val, _values, result)
2441 result = val[0]
2442
2443 result
2444 end
2445.,.,
2446
2447module_eval(<<'.,.,', 'parser.y', 764)
2448 def _reduce_152(val, _values, result)
2449 begin
2450 integer = Integer(val[0])
2451 rescue
2452 raise
2453 end
2454 result = integer
2455
2456 result
2457 end
2458.,.,
2459
2460module_eval(<<'.,.,', 'parser.y', 773)
2461 def _reduce_153(val, _values, result)
2462 begin
2463 integer = Integer(val[0])
2464 rescue
2465 raise
2466 end
2467 result = integer
2468
2469 result
2470 end
2471.,.,
2472
2473module_eval(<<'.,.,', 'parser.y', 782)
2474 def _reduce_154(val, _values, result)
2475 begin
2476 integer = Integer(val[0])
2477 rescue
2478 raise
2479 end
2480 result = - integer
2481
2482 result
2483 end
2484.,.,
2485
2486# reduce 155 omitted
2487
2488# reduce 156 omitted
2489
2490# reduce 157 omitted
2491
2492# reduce 158 omitted
2493
2494# reduce 159 omitted
2495
2496# reduce 160 omitted
2497
2498# reduce 161 omitted
2499
2500# reduce 162 omitted
2501
2502# reduce 163 omitted
2503
2504# reduce 164 omitted
2505
2506# reduce 165 omitted
2507
2508# reduce 166 omitted
2509
2510module_eval(<<'.,.,', 'parser.y', 808)
2511 def _reduce_167(val, _values, result)
2512 begin
2513 real = Float(val[0])
2514 rescue
2515 raise
2516 end
2517 result = real
2518
2519 result
2520 end
2521.,.,
2522
2523module_eval(<<'.,.,', 'parser.y', 817)
2524 def _reduce_168(val, _values, result)
2525 begin
2526 real = Float(val[1])
2527 rescue
2528 raise
2529 end
2530 result = real
2531
2532 result
2533 end
2534.,.,
2535
2536module_eval(<<'.,.,', 'parser.y', 826)
2537 def _reduce_169(val, _values, result)
2538 begin
2539 real = Float(val[1])
2540 rescue
2541 raise
2542 end
2543 result = - real
2544
2545 result
2546 end
2547.,.,
2548
2549# reduce 170 omitted
2550
2551# reduce 171 omitted
2552
2553# reduce 172 omitted
2554
2555# reduce 173 omitted
2556
2557# reduce 174 omitted
2558
2559# reduce 175 omitted
2560
2561# reduce 176 omitted
2562
2563# reduce 177 omitted
2564
2565# reduce 178 omitted
2566
2567# reduce 179 omitted
2568
2569# reduce 180 omitted
2570
2571# reduce 181 omitted
2572
2573module_eval(<<'.,.,', 'parser.y', 851)
2574 def _reduce_182(val, _values, result)
2575 result = true
2576
2577 result
2578 end
2579.,.,
2580
2581module_eval(<<'.,.,', 'parser.y', 855)
2582 def _reduce_183(val, _values, result)
2583 result = false
2584
2585 result
2586 end
2587.,.,
2588
2589# reduce 184 omitted
2590
2591# reduce 185 omitted
2592
2593# reduce 186 omitted
2594
2595# reduce 187 omitted
2596
2597# reduce 188 omitted
2598
2599# reduce 189 omitted
2600
2601# reduce 190 omitted
2602
2603module_eval(<<'.,.,', 'parser.y', 870)
2604 def _reduce_191(val, _values, result)
2605 result = val[0]
2606
2607 result
2608 end
2609.,.,
2610
2611# reduce 192 omitted
2612
2613# reduce 193 omitted
2614
2615# reduce 194 omitted
2616
2617# reduce 195 omitted
2618
2619# reduce 196 omitted
2620
2621# reduce 197 omitted
2622
2623# reduce 198 omitted
2624
2625# reduce 199 omitted
2626
2627# reduce 200 omitted
2628
2629# reduce 201 omitted
2630
2631# reduce 202 omitted
2632
2633# reduce 203 omitted
2634
2635# reduce 204 omitted
2636
2637# reduce 205 omitted
2638
2639# reduce 206 omitted
2640
2641# reduce 207 omitted
2642
2643# reduce 208 omitted
2644
2645# reduce 209 omitted
2646
2647# reduce 210 omitted
2648
2649# reduce 211 omitted
2650
2651# reduce 212 omitted
2652
2653# reduce 213 omitted
2654
2655# reduce 214 omitted
2656
2657# reduce 215 omitted
2658
2659# reduce 216 omitted
2660
2661module_eval(<<'.,.,', 'parser.y', 905)
2662 def _reduce_217(val, _values, result)
2663 @@logger.debug("V_ISO8601_EXTENDED_DATE_TIME: #{val[0]} at #{@filename}:#{@lineno}")
2664 result = val[0]
2665
2666 result
2667 end
2668.,.,
2669
2670# reduce 218 omitted
2671
2672# reduce 219 omitted
2673
2674# reduce 220 omitted
2675
2676# reduce 221 omitted
2677
2678# reduce 222 omitted
2679
2680# reduce 223 omitted
2681
2682# reduce 224 omitted
2683
2684# reduce 225 omitted
2685
2686# reduce 226 omitted
2687
2688# reduce 227 omitted
2689
2690# reduce 228 omitted
2691
2692# reduce 229 omitted
2693
2694module_eval(<<'.,.,', 'parser.y', 925)
2695 def _reduce_230(val, _values, result)
2696 @@logger.debug("V_ISO8601_DURATION: #{val[0]} at #{@filename}:#{@lineno}")
2697 result = val[0]
2698
2699 result
2700 end
2701.,.,
2702
2703# reduce 231 omitted
2704
2705# reduce 232 omitted
2706
2707# reduce 233 omitted
2708
2709# reduce 234 omitted
2710
2711# reduce 235 omitted
2712
2713# reduce 236 omitted
2714
2715# reduce 237 omitted
2716
2717# reduce 238 omitted
2718
2719# reduce 239 omitted
2720
2721# reduce 240 omitted
2722
2723# reduce 241 omitted
2724
2725# reduce 242 omitted
2726
2727module_eval(<<'.,.,', 'parser.y', 945)
2728 def _reduce_243(val, _values, result)
2729 @@logger.debug("#{__FILE__}:#{__LINE__}: V_QUALIFIED_TERM_CODE_REF = #{val[0]} at #{@filename}:#{@lineno}")
2730 result = val[0]
2731
2732 result
2733 end
2734.,.,
2735
2736# reduce 244 omitted
2737
2738# reduce 245 omitted
2739
2740# reduce 246 omitted
2741
2742module_eval(<<'.,.,', 'parser.y', 955)
2743 def _reduce_247(val, _values, result)
2744 @@logger.debug("#{__FILE__}:#{__LINE__}: V_URI = #{val[0]} at #{@filename}:#{@lineno}")
2745 result = val[0]
2746
2747 result
2748 end
2749.,.,
2750
2751# reduce 248 omitted
2752
2753# reduce 249 omitted
2754
2755# reduce 250 omitted
2756
2757# reduce 251 omitted
2758
2759# reduce 252 omitted
2760
2761# reduce 253 omitted
2762
2763# reduce 254 omitted
2764
2765# reduce 255 omitted
2766
2767# reduce 256 omitted
2768
2769# reduce 257 omitted
2770
2771# reduce 258 omitted
2772
2773# reduce 259 omitted
2774
2775# reduce 260 omitted
2776
2777# reduce 261 omitted
2778
2779# reduce 262 omitted
2780
2781# reduce 263 omitted
2782
2783# reduce 264 omitted
2784
2785# reduce 265 omitted
2786
2787# reduce 266 omitted
2788
2789# reduce 267 omitted
2790
2791# reduce 268 omitted
2792
2793# reduce 269 omitted
2794
2795# reduce 270 omitted
2796
2797# reduce 271 omitted
2798
2799# reduce 272 omitted
2800
2801# reduce 273 omitted
2802
2803# reduce 274 omitted
2804
2805# reduce 275 omitted
2806
2807# reduce 276 omitted
2808
2809# reduce 277 omitted
2810
2811# reduce 278 omitted
2812
2813# reduce 279 omitted
2814
2815# reduce 280 omitted
2816
2817# reduce 281 omitted
2818
2819# reduce 282 omitted
2820
2821# reduce 283 omitted
2822
2823# reduce 284 omitted
2824
2825# reduce 285 omitted
2826
2827# reduce 286 omitted
2828
2829# reduce 287 omitted
2830
2831module_eval(<<'.,.,', 'parser.y', 1026)
2832 def _reduce_288(val, _values, result)
2833 @@logger.debug("#{__FILE__}:#{__LINE__}, V_ATTRIBUTE_IDENTIFIER = #{val[0]} at #{@filename}")
2834
2835 result
2836 end
2837.,.,
2838
2839module_eval(<<'.,.,', 'parser.y', 1030)
2840 def _reduce_289(val, _values, result)
2841 @@logger.debug("#{__FILE__}:#{__LINE__}, V_ATTRIBUTE_IDENTIFIER = #{val[0]} at #{@filename}")
2842
2843 result
2844 end
2845.,.,
2846
2847module_eval(<<'.,.,', 'parser.y', 1041)
2848 def _reduce_290(val, _values, result)
2849 result = Range.new(1,1)
2850
2851 result
2852 end
2853.,.,
2854
2855module_eval(<<'.,.,', 'parser.y', 1045)
2856 def _reduce_291(val, _values, result)
2857 result = val[3]
2858
2859 result
2860 end
2861.,.,
2862
2863module_eval(<<'.,.,', 'parser.y', 1050)
2864 def _reduce_292(val, _values, result)
2865 begin
2866 integer = Integer(val[0])
2867 rescue
2868 raise
2869 end
2870 result = integer
2871
2872 result
2873 end
2874.,.,
2875
2876module_eval(<<'.,.,', 'parser.y', 1059)
2877 def _reduce_293(val, _values, result)
2878 begin
2879 from_integer = Integer(val[0])
2880 to_integer = Integer(val[2])
2881 rescue
2882 raise
2883 end
2884 result = Range.new(from_integer,to_integer)
2885
2886 result
2887 end
2888.,.,
2889
2890module_eval(<<'.,.,', 'parser.y', 1070)
2891 def _reduce_294(val, _values, result)
2892 result = OpenEhr::AM::Archetype::ConstraintModel::CARDINALITY.new
2893
2894 result
2895 end
2896.,.,
2897
2898# reduce 295 omitted
2899
2900# reduce 296 omitted
2901
2902# reduce 297 omitted
2903
2904# reduce 298 omitted
2905
2906# reduce 299 omitted
2907
2908# reduce 300 omitted
2909
2910# reduce 301 omitted
2911
2912# reduce 302 omitted
2913
2914module_eval(<<'.,.,', 'parser.y', 1084)
2915 def _reduce_303(val, _values, result)
2916 result = val[0]
2917
2918 result
2919 end
2920.,.,
2921
2922module_eval(<<'.,.,', 'parser.y', 1088)
2923 def _reduce_304(val, _values, result)
2924 result = val[0]
2925
2926 result
2927 end
2928.,.,
2929
2930# reduce 305 omitted
2931
2932module_eval(<<'.,.,', 'parser.y', 1095)
2933 def _reduce_306(val, _values, result)
2934 case val[3]
2935 when OpenEhr::RM::Support::AssumedTypes::Interval
2936 result = val[3]
2937 else
2938 result = val[3]
2939 end
2940
2941 result
2942 end
2943.,.,
2944
2945# reduce 307 omitted
2946
2947module_eval(<<'.,.,', 'parser.y', 1106)
2948 def _reduce_308(val, _values, result)
2949 result = val[0]
2950
2951 result
2952 end
2953.,.,
2954
2955module_eval(<<'.,.,', 'parser.y', 1110)
2956 def _reduce_309(val, _values, result)
2957 result = OpenEhr::RM::Support::AssumedTypes::Interval.new(val[0], val[2])
2958
2959 result
2960 end
2961.,.,
2962
2963# reduce 310 omitted
2964
2965# reduce 311 omitted
2966
2967# reduce 312 omitted
2968
2969# reduce 313 omitted
2970
2971# reduce 314 omitted
2972
2973# reduce 315 omitted
2974
2975# reduce 316 omitted
2976
2977# reduce 317 omitted
2978
2979# reduce 318 omitted
2980
2981# reduce 319 omitted
2982
2983# reduce 320 omitted
2984
2985# reduce 321 omitted
2986
2987# reduce 322 omitted
2988
2989# reduce 323 omitted
2990
2991# reduce 324 omitted
2992
2993# reduce 325 omitted
2994
2995# reduce 326 omitted
2996
2997# reduce 327 omitted
2998
2999# reduce 328 omitted
3000
3001# reduce 329 omitted
3002
3003# reduce 330 omitted
3004
3005# reduce 331 omitted
3006
3007# reduce 332 omitted
3008
3009# reduce 333 omitted
3010
3011# reduce 334 omitted
3012
3013# reduce 335 omitted
3014
3015# reduce 336 omitted
3016
3017# reduce 337 omitted
3018
3019# reduce 338 omitted
3020
3021# reduce 339 omitted
3022
3023# reduce 340 omitted
3024
3025# reduce 341 omitted
3026
3027# reduce 342 omitted
3028
3029# reduce 343 omitted
3030
3031# reduce 344 omitted
3032
3033# reduce 345 omitted
3034
3035# reduce 346 omitted
3036
3037# reduce 347 omitted
3038
3039# reduce 348 omitted
3040
3041# reduce 349 omitted
3042
3043# reduce 350 omitted
3044
3045# reduce 351 omitted
3046
3047# reduce 352 omitted
3048
3049module_eval(<<'.,.,', 'parser.y', 1176)
3050 def _reduce_353(val, _values, result)
3051 result = OpenEhr::AM::Archetype::ConstraintModel::Primitive::C_BOOLEAN.new(:true_valid => true)
3052
3053 result
3054 end
3055.,.,
3056
3057module_eval(<<'.,.,', 'parser.y', 1180)
3058 def _reduce_354(val, _values, result)
3059 result = OpenEhr::AM::Archetype::ConstraintModel::Primitive::C_BOOLEAN.new(:true_valid => false)
3060
3061 result
3062 end
3063.,.,
3064
3065module_eval(<<'.,.,', 'parser.y', 1184)
3066 def _reduce_355(val, _values, result)
3067 result = OpenEhr::AM::Archetype::ConstraintModel::Primitive::C_BOOLEAN.new(:true_valid => true,:false_valid => false)
3068
3069 result
3070 end
3071.,.,
3072
3073module_eval(<<'.,.,', 'parser.y', 1188)
3074 def _reduce_356(val, _values, result)
3075 result = OpenEhr::AM::Archetype::ConstraintModel::Primitive::C_BOOLEAN.new(:true_valid => false,:false_valid => true)
3076
3077 result
3078 end
3079.,.,
3080
3081module_eval(<<'.,.,', 'parser.y', 1193)
3082 def _reduce_357(val, _values, result)
3083 result = val[0]
3084
3085 result
3086 end
3087.,.,
3088
3089module_eval(<<'.,.,', 'parser.y', 1197)
3090 def _reduce_358(val, _values, result)
3091 raise 'Not implemented yet'
3092
3093 result
3094 end
3095.,.,
3096
3097module_eval(<<'.,.,', 'parser.y', 1201)
3098 def _reduce_359(val, _values, result)
3099 raise 'Not implemented yet'
3100
3101 result
3102 end
3103.,.,
3104
3105# reduce 360 omitted
3106
3107# reduce 361 omitted
3108
3109# reduce 362 omitted
3110
3111# reduce 363 omitted
3112
3113# reduce 364 omitted
3114
3115module_eval(<<'.,.,', 'parser.y', 1213)
3116 def _reduce_365(val, _values, result)
3117 @in_interval = false
3118 @@logger.debug("#{__FILE__}:#{__LINE__}, #{val[0]}|#{val[2]} at #{@filename}")
3119
3120 result
3121 end
3122.,.,
3123
3124module_eval(<<'.,.,', 'parser.y', 1220)
3125 def _reduce_366(val, _values, result)
3126 result = val[0]
3127
3128 result
3129 end
3130.,.,
3131
3132module_eval(<<'.,.,', 'parser.y', 1224)
3133 def _reduce_367(val, _values, result)
3134 result = val[0]
3135
3136 result
3137 end
3138.,.,
3139
3140module_eval(<<'.,.,', 'parser.y', 1230)
3141 def _reduce_368(val, _values, result)
3142 @@logger.debug("#{__FILE__}:#{__LINE__}, START_TERM_CODE_CONSTRAINT = #{val[0]} at #{@filename}")
3143 @@logger.debug("#{__FILE__}:#{__LINE__}, term_code_body = #{val[1]}")
3144 @@logger.debug("#{__FILE__}:#{__LINE__}, END_TERM_CODE_CONSTRAINT = #{val[2]}")
3145 result = val[1]
3146
3147 result
3148 end
3149.,.,
3150
3151# reduce 369 omitted
3152
3153# reduce 370 omitted
3154
3155# reduce 371 omitted
3156
3157module_eval(<<'.,.,', 'parser.y', 1246)
3158 def _reduce_372(val, _values, result)
3159 result = val[0]
3160
3161 result
3162 end
3163.,.,
3164
3165module_eval(<<'.,.,', 'parser.y', 1251)
3166 def _reduce_373(val, _values, result)
3167 result = val[0]
3168
3169 result
3170 end
3171.,.,
3172
3173module_eval(<<'.,.,', 'parser.y', 1255)
3174 def _reduce_374(val, _values, result)
3175 @@logger.debug("#{__FILE__}:#{__LINE__}, V_ATTRIBUTE_IDENTIFIER = #{word} at #{@filename}")
3176 result = val[0]
3177
3178 result
3179 end
3180.,.,
3181
3182module_eval(<<'.,.,', 'parser.y', 1266)
3183 def _reduce_375(val, _values, result)
3184 result = OpenEhr::AM::Archetype::ConstraintModel::Primitive::C_DURATION.new #val[0]
3185
3186 result
3187 end
3188.,.,
3189
3190def _reduce_none(val, _values, result)
3191 val[0]
3192end
3193
3194 end # class Parser
3195 end # module ADL
3196 end # module OpenEhr
Note: See TracBrowser for help on using the repository browser.