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

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

created remote_adl_test.rb

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