Initial public import
[afterthought.git] / aft_parser.ml
1 type token =
2   | POINT
3   | LBRACE
4   | RBRACE
5   | SLASH
6   | LPAREN
7   | RPAREN
8   | LBRACKET
9   | RBRACKET
10   | DOUBLESLASH
11   | DOUBLEDOT
12   | AT
13   | DOT
14   | COMMA
15   | PIPE
16   | OR
17   | AND
18   | EQUAL
19   | NOTEQUAL
20   | LT
21   | GT
22   | LTE
23   | GTE
24   | PLUS
25   | MINUS
26   | MUL
27   | DIV
28   | MOD
29   | VAR of (string)
30   | NAME_TEST of (string)
31   | AXIS of (string)
32   | FUNCTION_NAME of (string)
33   | NODE_TYPE of (string)
34   | LITERAL of (string)
35   | NUMBER of (float)
36   | EOF
37
38 open Parsing;;
39 # 2 "aft_parser.mly"
40   open Xpath_syntax
41   open Xpath_ext
42   open Axis
43   open Aft_types
44 # 45 "aft_parser.ml"
45 let yytransl_const = [|
46   257 (* POINT *);
47   258 (* LBRACE *);
48   259 (* RBRACE *);
49   260 (* SLASH *);
50   261 (* LPAREN *);
51   262 (* RPAREN *);
52   263 (* LBRACKET *);
53   264 (* RBRACKET *);
54   265 (* DOUBLESLASH *);
55   266 (* DOUBLEDOT *);
56   267 (* AT *);
57   268 (* DOT *);
58   269 (* COMMA *);
59   270 (* PIPE *);
60   271 (* OR *);
61   272 (* AND *);
62   273 (* EQUAL *);
63   274 (* NOTEQUAL *);
64   275 (* LT *);
65   276 (* GT *);
66   277 (* LTE *);
67   278 (* GTE *);
68   279 (* PLUS *);
69   280 (* MINUS *);
70   281 (* MUL *);
71   282 (* DIV *);
72   283 (* MOD *);
73     0 (* EOF *);
74     0|]
75
76 let yytransl_block = [|
77   284 (* VAR *);
78   285 (* NAME_TEST *);
79   286 (* AXIS *);
80   287 (* FUNCTION_NAME *);
81   288 (* NODE_TYPE *);
82   289 (* LITERAL *);
83   290 (* NUMBER *);
84     0|]
85
86 let yylhs = "\255\255\
87 \002\000\002\000\004\000\001\000\001\000\005\000\005\000\007\000\
88 \007\000\007\000\006\000\006\000\006\000\008\000\008\000\008\000\
89 \008\000\010\000\010\000\009\000\009\000\011\000\011\000\011\000\
90 \012\000\012\000\012\000\012\000\012\000\013\000\013\000\014\000\
91 \014\000\015\000\015\000\016\000\016\000\016\000\016\000\017\000\
92 \017\000\003\000\018\000\018\000\019\000\019\000\020\000\020\000\
93 \020\000\021\000\021\000\021\000\021\000\021\000\022\000\022\000\
94 \022\000\023\000\023\000\023\000\023\000\024\000\024\000\000\000\
95 \000\000"
96
97 let yylen = "\002\000\
98 \001\000\001\000\005\000\001\000\003\000\001\000\001\000\001\000\
99 \002\000\002\000\001\000\003\000\003\000\002\000\001\000\001\000\
100 \001\000\004\000\001\000\001\000\001\000\001\000\002\000\003\000\
101 \001\000\001\000\003\000\001\000\001\000\002\000\003\000\003\000\
102 \001\000\001\000\003\000\001\000\001\000\003\000\003\000\001\000\
103 \004\000\001\000\001\000\003\000\001\000\003\000\001\000\003\000\
104 \003\000\001\000\003\000\003\000\003\000\003\000\001\000\003\000\
105 \003\000\001\000\003\000\003\000\003\000\001\000\002\000\002\000\
106 \002\000"
107
108 let yydefred = "\000\000\
109 \000\000\000\000\000\000\000\000\000\000\017\000\021\000\016\000\
110 \022\000\020\000\000\000\064\000\000\000\000\000\000\000\007\000\
111 \011\000\000\000\000\000\019\000\000\000\000\000\026\000\000\000\
112 \028\000\029\000\002\000\065\000\001\000\000\000\040\000\025\000\
113 \000\000\034\000\000\000\000\000\000\000\000\000\000\000\000\000\
114 \000\000\058\000\000\000\000\000\023\000\000\000\000\000\000\000\
115 \000\000\000\000\000\000\000\000\000\000\036\000\063\000\030\000\
116 \033\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
117 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
118 \000\000\000\000\000\000\024\000\005\000\000\000\012\000\013\000\
119 \000\000\027\000\031\000\000\000\035\000\000\000\000\000\000\000\
120 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
121 \000\000\000\000\059\000\060\000\061\000\000\000\018\000\032\000\
122 \041\000\003\000"
123
124 let yydgoto = "\003\000\
125 \027\000\028\000\029\000\013\000\054\000\015\000\016\000\017\000\
126 \018\000\019\000\020\000\031\000\032\000\058\000\033\000\034\000\
127 \035\000\036\000\037\000\038\000\039\000\040\000\041\000\042\000"
128
129 let yysindex = "\060\000\
130 \102\255\062\255\000\000\001\255\001\255\000\000\000\000\000\000\
131 \000\000\000\000\252\254\000\000\022\255\046\255\014\255\000\000\
132 \000\000\003\255\047\255\000\000\062\255\062\255\000\000\010\255\
133 \000\000\000\000\000\000\000\000\000\000\046\255\000\000\000\000\
134 \050\255\000\000\041\255\053\255\054\255\066\255\038\255\064\255\
135 \000\255\000\000\014\255\014\255\000\000\073\255\102\255\079\255\
136 \001\255\001\255\047\255\062\255\083\255\000\000\000\000\000\000\
137 \000\000\011\255\093\255\001\255\062\255\001\255\062\255\062\255\
138 \062\255\062\255\062\255\062\255\062\255\062\255\062\255\062\255\
139 \062\255\062\255\062\255\000\000\000\000\062\255\000\000\000\000\
140 \077\255\000\000\000\000\062\255\000\000\014\255\109\255\014\255\
141 \054\255\066\255\038\255\038\255\064\255\064\255\064\255\064\255\
142 \000\255\000\255\000\000\000\000\000\000\098\255\000\000\000\000\
143 \000\000\000\000"
144
145 let yyrindex = "\000\000\
146 \000\000\000\000\000\000\055\000\000\000\000\000\000\000\000\000\
147 \000\000\000\000\000\000\000\000\005\000\000\000\082\000\000\000\
148 \000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\
149 \000\000\000\000\000\000\000\000\000\000\006\001\000\000\000\000\
150 \236\000\000\000\161\000\166\001\038\002\014\002\240\001\111\001\
151 \033\001\000\000\109\000\136\000\000\000\000\000\000\000\000\000\
152 \000\000\000\000\028\000\000\000\000\000\000\000\000\000\000\000\
153 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
154 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
155 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
156 \000\000\000\000\000\000\000\000\000\000\186\000\000\000\211\000\
157 \058\002\034\002\246\001\008\002\138\001\165\001\190\001\215\001\
158 \057\001\084\001\000\000\000\000\000\000\000\000\000\000\000\000\
159 \000\000\000\000"
160
161 let yygindex = "\000\000\
162 \009\000\032\000\241\255\000\000\002\000\003\000\000\000\050\000\
163 \000\000\100\000\000\000\000\000\000\000\000\000\000\000\061\000\
164 \000\000\000\000\056\000\064\000\042\000\008\000\044\000\234\255"
165
166 let yytablesize = 841
167 let yytable = "\055\000\
168 \015\000\045\000\014\000\030\000\004\000\053\000\043\000\044\000\
169 \057\000\012\000\006\000\007\000\008\000\004\000\021\000\056\000\
170 \083\000\049\000\005\000\006\000\007\000\008\000\050\000\084\000\
171 \073\000\074\000\075\000\014\000\046\000\009\000\010\000\009\000\
172 \011\000\022\000\011\000\047\000\081\000\023\000\009\000\010\000\
173 \024\000\011\000\025\000\026\000\060\000\087\000\048\000\061\000\
174 \014\000\062\000\099\000\100\000\101\000\052\000\008\000\077\000\
175 \067\000\068\000\069\000\070\000\001\000\002\000\086\000\059\000\
176 \088\000\004\000\021\000\063\000\104\000\064\000\005\000\006\000\
177 \007\000\008\000\093\000\094\000\095\000\096\000\076\000\030\000\
178 \078\000\006\000\065\000\066\000\103\000\022\000\071\000\072\000\
179 \082\000\023\000\009\000\010\000\024\000\011\000\025\000\026\000\
180 \004\000\021\000\079\000\080\000\106\000\005\000\006\000\007\000\
181 \008\000\004\000\091\000\092\000\009\000\102\000\005\000\006\000\
182 \007\000\008\000\097\000\098\000\105\000\051\000\089\000\085\000\
183 \023\000\009\000\010\000\024\000\011\000\025\000\026\000\090\000\
184 \000\000\000\000\009\000\010\000\000\000\011\000\000\000\010\000\
185 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
186 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
187 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
188 \037\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
189 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
190 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
191 \000\000\038\000\000\000\000\000\000\000\000\000\000\000\000\000\
192 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
193 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
194 \000\000\000\000\039\000\000\000\000\000\000\000\000\000\000\000\
195 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
196 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
197 \000\000\000\000\000\000\062\000\000\000\000\000\000\000\000\000\
198 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
199 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
200 \000\000\015\000\000\000\015\000\015\000\036\000\015\000\004\000\
201 \015\000\015\000\000\000\000\000\000\000\015\000\015\000\015\000\
202 \015\000\015\000\015\000\015\000\015\000\015\000\015\000\015\000\
203 \015\000\015\000\015\000\015\000\014\000\000\000\014\000\014\000\
204 \055\000\014\000\000\000\014\000\014\000\000\000\000\000\000\000\
205 \014\000\014\000\014\000\014\000\014\000\014\000\014\000\014\000\
206 \014\000\014\000\014\000\014\000\014\000\014\000\014\000\008\000\
207 \056\000\008\000\000\000\000\000\008\000\000\000\008\000\000\000\
208 \000\000\000\000\000\000\008\000\008\000\008\000\008\000\008\000\
209 \008\000\008\000\008\000\008\000\008\000\008\000\008\000\008\000\
210 \008\000\008\000\006\000\057\000\006\000\000\000\000\000\006\000\
211 \000\000\006\000\000\000\000\000\000\000\000\000\006\000\006\000\
212 \006\000\006\000\006\000\006\000\006\000\006\000\006\000\006\000\
213 \006\000\006\000\006\000\006\000\006\000\009\000\050\000\009\000\
214 \000\000\000\000\009\000\000\000\009\000\000\000\000\000\000\000\
215 \000\000\009\000\009\000\009\000\009\000\009\000\009\000\009\000\
216 \009\000\009\000\009\000\009\000\009\000\009\000\009\000\009\000\
217 \010\000\051\000\010\000\000\000\000\000\010\000\000\000\010\000\
218 \000\000\000\000\000\000\000\000\010\000\010\000\010\000\010\000\
219 \010\000\010\000\010\000\010\000\010\000\010\000\010\000\010\000\
220 \010\000\010\000\010\000\037\000\052\000\042\000\037\000\000\000\
221 \037\000\000\000\000\000\000\000\000\000\037\000\037\000\037\000\
222 \037\000\037\000\037\000\037\000\037\000\037\000\037\000\037\000\
223 \037\000\037\000\037\000\037\000\038\000\053\000\000\000\038\000\
224 \000\000\038\000\000\000\000\000\000\000\000\000\038\000\038\000\
225 \038\000\038\000\038\000\038\000\038\000\038\000\038\000\038\000\
226 \038\000\038\000\038\000\038\000\038\000\039\000\054\000\000\000\
227 \039\000\000\000\039\000\000\000\000\000\000\000\000\000\039\000\
228 \039\000\039\000\039\000\039\000\039\000\039\000\039\000\039\000\
229 \039\000\039\000\039\000\039\000\039\000\039\000\062\000\047\000\
230 \000\000\062\000\000\000\062\000\000\000\048\000\000\000\000\000\
231 \062\000\000\000\062\000\062\000\062\000\062\000\062\000\062\000\
232 \062\000\062\000\062\000\062\000\062\000\062\000\062\000\049\000\
233 \036\000\000\000\000\000\000\000\000\000\045\000\000\000\000\000\
234 \000\000\000\000\000\000\036\000\036\000\036\000\036\000\036\000\
235 \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
236 \036\000\046\000\000\000\055\000\000\000\043\000\055\000\000\000\
237 \055\000\000\000\000\000\000\000\000\000\055\000\000\000\055\000\
238 \055\000\055\000\055\000\055\000\055\000\055\000\055\000\055\000\
239 \055\000\044\000\000\000\056\000\000\000\000\000\056\000\000\000\
240 \056\000\000\000\000\000\000\000\000\000\056\000\000\000\056\000\
241 \056\000\056\000\056\000\056\000\056\000\056\000\056\000\056\000\
242 \056\000\000\000\000\000\000\000\000\000\000\000\057\000\000\000\
243 \000\000\057\000\000\000\057\000\000\000\000\000\000\000\000\000\
244 \057\000\000\000\057\000\057\000\057\000\057\000\057\000\057\000\
245 \057\000\057\000\057\000\057\000\000\000\000\000\000\000\000\000\
246 \000\000\050\000\000\000\000\000\050\000\000\000\050\000\000\000\
247 \000\000\000\000\000\000\050\000\000\000\050\000\050\000\050\000\
248 \050\000\050\000\050\000\050\000\050\000\000\000\000\000\000\000\
249 \000\000\000\000\000\000\000\000\051\000\000\000\000\000\051\000\
250 \000\000\051\000\000\000\000\000\000\000\000\000\051\000\000\000\
251 \051\000\051\000\051\000\051\000\051\000\051\000\051\000\051\000\
252 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\052\000\
253 \042\000\000\000\052\000\042\000\052\000\042\000\000\000\000\000\
254 \000\000\052\000\042\000\052\000\052\000\052\000\052\000\052\000\
255 \052\000\052\000\052\000\000\000\000\000\000\000\000\000\000\000\
256 \053\000\000\000\000\000\053\000\000\000\053\000\000\000\000\000\
257 \000\000\000\000\053\000\000\000\053\000\053\000\053\000\053\000\
258 \053\000\053\000\053\000\053\000\000\000\000\000\000\000\000\000\
259 \000\000\054\000\000\000\000\000\054\000\000\000\054\000\000\000\
260 \000\000\000\000\000\000\054\000\000\000\054\000\054\000\054\000\
261 \054\000\054\000\054\000\054\000\054\000\000\000\000\000\000\000\
262 \000\000\000\000\047\000\000\000\000\000\047\000\000\000\047\000\
263 \048\000\000\000\000\000\048\000\047\000\048\000\047\000\047\000\
264 \047\000\047\000\048\000\000\000\048\000\048\000\048\000\048\000\
265 \000\000\000\000\049\000\000\000\000\000\049\000\000\000\049\000\
266 \045\000\000\000\000\000\045\000\049\000\045\000\049\000\049\000\
267 \049\000\049\000\045\000\000\000\045\000\045\000\000\000\000\000\
268 \000\000\000\000\000\000\000\000\046\000\000\000\000\000\046\000\
269 \043\000\046\000\000\000\043\000\000\000\043\000\046\000\000\000\
270 \046\000\046\000\043\000\000\000\043\000\000\000\000\000\000\000\
271 \000\000\000\000\000\000\000\000\044\000\000\000\000\000\044\000\
272 \000\000\044\000\000\000\000\000\000\000\000\000\044\000\000\000\
273 \044\000"
274
275 let yycheck = "\022\000\
276 \000\000\006\001\001\000\002\000\000\000\021\000\004\000\005\000\
277 \024\000\001\000\010\001\011\001\012\001\004\001\005\001\006\001\
278 \006\001\004\001\009\001\010\001\011\001\012\001\009\001\013\001\
279 \025\001\026\001\027\001\000\000\033\001\029\001\030\001\029\001\
280 \032\001\024\001\032\001\014\001\052\000\028\001\029\001\030\001\
281 \031\001\032\001\033\001\034\001\004\001\061\000\001\001\007\001\
282 \047\000\009\001\073\000\074\000\075\000\007\001\000\000\047\000\
283 \019\001\020\001\021\001\022\001\001\000\002\000\060\000\014\001\
284 \062\000\004\001\005\001\015\001\084\000\016\001\009\001\010\001\
285 \011\001\012\001\067\000\068\000\069\000\070\000\006\001\078\000\
286 \002\001\000\000\017\001\018\001\008\001\024\001\023\001\024\001\
287 \006\001\028\001\029\001\030\001\031\001\032\001\033\001\034\001\
288 \004\001\005\001\049\000\050\000\003\001\009\001\010\001\011\001\
289 \012\001\004\001\065\000\066\000\000\000\078\000\009\001\010\001\
290 \011\001\012\001\071\000\072\000\008\001\018\000\063\000\059\000\
291 \028\001\029\001\030\001\031\001\032\001\033\001\034\001\064\000\
292 \255\255\255\255\029\001\030\001\255\255\032\001\255\255\000\000\
293 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
294 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
295 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
296 \000\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
297 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
298 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
299 \255\255\000\000\255\255\255\255\255\255\255\255\255\255\255\255\
300 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
301 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
302 \255\255\255\255\000\000\255\255\255\255\255\255\255\255\255\255\
303 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
304 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
305 \255\255\255\255\255\255\000\000\255\255\255\255\255\255\255\255\
306 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
307 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
308 \255\255\001\001\255\255\003\001\004\001\000\000\006\001\003\001\
309 \008\001\009\001\255\255\255\255\255\255\013\001\014\001\015\001\
310 \016\001\017\001\018\001\019\001\020\001\021\001\022\001\023\001\
311 \024\001\025\001\026\001\027\001\001\001\255\255\003\001\004\001\
312 \000\000\006\001\255\255\008\001\009\001\255\255\255\255\255\255\
313 \013\001\014\001\015\001\016\001\017\001\018\001\019\001\020\001\
314 \021\001\022\001\023\001\024\001\025\001\026\001\027\001\001\001\
315 \000\000\003\001\255\255\255\255\006\001\255\255\008\001\255\255\
316 \255\255\255\255\255\255\013\001\014\001\015\001\016\001\017\001\
317 \018\001\019\001\020\001\021\001\022\001\023\001\024\001\025\001\
318 \026\001\027\001\001\001\000\000\003\001\255\255\255\255\006\001\
319 \255\255\008\001\255\255\255\255\255\255\255\255\013\001\014\001\
320 \015\001\016\001\017\001\018\001\019\001\020\001\021\001\022\001\
321 \023\001\024\001\025\001\026\001\027\001\001\001\000\000\003\001\
322 \255\255\255\255\006\001\255\255\008\001\255\255\255\255\255\255\
323 \255\255\013\001\014\001\015\001\016\001\017\001\018\001\019\001\
324 \020\001\021\001\022\001\023\001\024\001\025\001\026\001\027\001\
325 \001\001\000\000\003\001\255\255\255\255\006\001\255\255\008\001\
326 \255\255\255\255\255\255\255\255\013\001\014\001\015\001\016\001\
327 \017\001\018\001\019\001\020\001\021\001\022\001\023\001\024\001\
328 \025\001\026\001\027\001\003\001\000\000\000\000\006\001\255\255\
329 \008\001\255\255\255\255\255\255\255\255\013\001\014\001\015\001\
330 \016\001\017\001\018\001\019\001\020\001\021\001\022\001\023\001\
331 \024\001\025\001\026\001\027\001\003\001\000\000\255\255\006\001\
332 \255\255\008\001\255\255\255\255\255\255\255\255\013\001\014\001\
333 \015\001\016\001\017\001\018\001\019\001\020\001\021\001\022\001\
334 \023\001\024\001\025\001\026\001\027\001\003\001\000\000\255\255\
335 \006\001\255\255\008\001\255\255\255\255\255\255\255\255\013\001\
336 \014\001\015\001\016\001\017\001\018\001\019\001\020\001\021\001\
337 \022\001\023\001\024\001\025\001\026\001\027\001\003\001\000\000\
338 \255\255\006\001\255\255\008\001\255\255\000\000\255\255\255\255\
339 \013\001\255\255\015\001\016\001\017\001\018\001\019\001\020\001\
340 \021\001\022\001\023\001\024\001\025\001\026\001\027\001\000\000\
341 \003\001\255\255\255\255\255\255\255\255\000\000\255\255\255\255\
342 \255\255\255\255\255\255\014\001\015\001\016\001\017\001\018\001\
343 \019\001\020\001\021\001\022\001\023\001\024\001\025\001\026\001\
344 \027\001\000\000\255\255\003\001\255\255\000\000\006\001\255\255\
345 \008\001\255\255\255\255\255\255\255\255\013\001\255\255\015\001\
346 \016\001\017\001\018\001\019\001\020\001\021\001\022\001\023\001\
347 \024\001\000\000\255\255\003\001\255\255\255\255\006\001\255\255\
348 \008\001\255\255\255\255\255\255\255\255\013\001\255\255\015\001\
349 \016\001\017\001\018\001\019\001\020\001\021\001\022\001\023\001\
350 \024\001\255\255\255\255\255\255\255\255\255\255\003\001\255\255\
351 \255\255\006\001\255\255\008\001\255\255\255\255\255\255\255\255\
352 \013\001\255\255\015\001\016\001\017\001\018\001\019\001\020\001\
353 \021\001\022\001\023\001\024\001\255\255\255\255\255\255\255\255\
354 \255\255\003\001\255\255\255\255\006\001\255\255\008\001\255\255\
355 \255\255\255\255\255\255\013\001\255\255\015\001\016\001\017\001\
356 \018\001\019\001\020\001\021\001\022\001\255\255\255\255\255\255\
357 \255\255\255\255\255\255\255\255\003\001\255\255\255\255\006\001\
358 \255\255\008\001\255\255\255\255\255\255\255\255\013\001\255\255\
359 \015\001\016\001\017\001\018\001\019\001\020\001\021\001\022\001\
360 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\003\001\
361 \003\001\255\255\006\001\006\001\008\001\008\001\255\255\255\255\
362 \255\255\013\001\013\001\015\001\016\001\017\001\018\001\019\001\
363 \020\001\021\001\022\001\255\255\255\255\255\255\255\255\255\255\
364 \003\001\255\255\255\255\006\001\255\255\008\001\255\255\255\255\
365 \255\255\255\255\013\001\255\255\015\001\016\001\017\001\018\001\
366 \019\001\020\001\021\001\022\001\255\255\255\255\255\255\255\255\
367 \255\255\003\001\255\255\255\255\006\001\255\255\008\001\255\255\
368 \255\255\255\255\255\255\013\001\255\255\015\001\016\001\017\001\
369 \018\001\019\001\020\001\021\001\022\001\255\255\255\255\255\255\
370 \255\255\255\255\003\001\255\255\255\255\006\001\255\255\008\001\
371 \003\001\255\255\255\255\006\001\013\001\008\001\015\001\016\001\
372 \017\001\018\001\013\001\255\255\015\001\016\001\017\001\018\001\
373 \255\255\255\255\003\001\255\255\255\255\006\001\255\255\008\001\
374 \003\001\255\255\255\255\006\001\013\001\008\001\015\001\016\001\
375 \017\001\018\001\013\001\255\255\015\001\016\001\255\255\255\255\
376 \255\255\255\255\255\255\255\255\003\001\255\255\255\255\006\001\
377 \003\001\008\001\255\255\006\001\255\255\008\001\013\001\255\255\
378 \015\001\016\001\013\001\255\255\015\001\255\255\255\255\255\255\
379 \255\255\255\255\255\255\255\255\003\001\255\255\255\255\006\001\
380 \255\255\008\001\255\255\255\255\255\255\255\255\013\001\255\255\
381 \015\001"
382
383 let yynames_const = "\
384   POINT\000\
385   LBRACE\000\
386   RBRACE\000\
387   SLASH\000\
388   LPAREN\000\
389   RPAREN\000\
390   LBRACKET\000\
391   RBRACKET\000\
392   DOUBLESLASH\000\
393   DOUBLEDOT\000\
394   AT\000\
395   DOT\000\
396   COMMA\000\
397   PIPE\000\
398   OR\000\
399   AND\000\
400   EQUAL\000\
401   NOTEQUAL\000\
402   LT\000\
403   GT\000\
404   LTE\000\
405   GTE\000\
406   PLUS\000\
407   MINUS\000\
408   MUL\000\
409   DIV\000\
410   MOD\000\
411   EOF\000\
412   "
413
414 let yynames_block = "\
415   VAR\000\
416   NAME_TEST\000\
417   AXIS\000\
418   FUNCTION_NAME\000\
419   NODE_TYPE\000\
420   LITERAL\000\
421   NUMBER\000\
422   "
423
424 let yyact = [|
425   (fun _ -> failwith "parser")
426 ; (fun __caml_parser_env ->
427     let _1 = (Parsing.peek_val __caml_parser_env 0 : 'expr) in
428     Obj.repr(
429 # 27 "aft_parser.mly"
430          ( Filter(_1) )
431 # 432 "aft_parser.ml"
432                : Aft_types.access_spec))
433 ; (fun __caml_parser_env ->
434     let _1 = (Parsing.peek_val __caml_parser_env 0 : Aft_types.pattern_match) in
435     Obj.repr(
436 # 28 "aft_parser.mly"
437                       ( PatternMatch(_1) )
438 # 439 "aft_parser.ml"
439                : Aft_types.access_spec))
440 ; (fun __caml_parser_env ->
441     let _1 = (Parsing.peek_val __caml_parser_env 4 : 'location_path) in
442     let _4 = (Parsing.peek_val __caml_parser_env 1 : Aft_types.access_spec) in
443     Obj.repr(
444 # 31 "aft_parser.mly"
445                                                   ( Clause(_1 , _4) )
446 # 447 "aft_parser.ml"
447                : 'aft_clause))
448 ; (fun __caml_parser_env ->
449     let _1 = (Parsing.peek_val __caml_parser_env 0 : 'aft_clause) in
450     Obj.repr(
451 # 34 "aft_parser.mly"
452                ( [ _1 ] )
453 # 454 "aft_parser.ml"
454                : Aft_types.pattern_match))
455 ; (fun __caml_parser_env ->
456     let _1 = (Parsing.peek_val __caml_parser_env 2 : 'aft_clause) in
457     let _3 = (Parsing.peek_val __caml_parser_env 0 : Aft_types.pattern_match) in
458     Obj.repr(
459 # 35 "aft_parser.mly"
460                                       (_1::_3)
461 # 462 "aft_parser.ml"
462                : Aft_types.pattern_match))
463 ; (fun __caml_parser_env ->
464     let _1 = (Parsing.peek_val __caml_parser_env 0 : 'relative_location_path) in
465     Obj.repr(
466 # 38 "aft_parser.mly"
467                                ( _1 )
468 # 469 "aft_parser.ml"
469                : 'location_path))
470 ; (fun __caml_parser_env ->
471     let _1 = (Parsing.peek_val __caml_parser_env 0 : 'absolute_location_path) in
472     Obj.repr(
473 # 39 "aft_parser.mly"
474                                ( _1 )
475 # 476 "aft_parser.ml"
476                : 'location_path))
477 ; (fun __caml_parser_env ->
478     Obj.repr(
479 # 42 "aft_parser.mly"
480            ( Root )
481 # 482 "aft_parser.ml"
482                : 'absolute_location_path))
483 ; (fun __caml_parser_env ->
484     let _2 = (Parsing.peek_val __caml_parser_env 0 : 'relative_location_path) in
485     Obj.repr(
486 # 43 "aft_parser.mly"
487                                  ( Slash (Root,_2) )
488 # 489 "aft_parser.ml"
489                : 'absolute_location_path))
490 ; (fun __caml_parser_env ->
491     let _2 = (Parsing.peek_val __caml_parser_env 0 : 'relative_location_path) in
492     Obj.repr(
493 # 44 "aft_parser.mly"
494                                       ( double_slash Root _2 )
495 # 496 "aft_parser.ml"
496                : 'absolute_location_path))
497 ; (fun __caml_parser_env ->
498     let _1 = (Parsing.peek_val __caml_parser_env 0 : 'step) in
499     Obj.repr(
500 # 47 "aft_parser.mly"
501            ( _1 )
502 # 503 "aft_parser.ml"
503                : 'relative_location_path))
504 ; (fun __caml_parser_env ->
505     let _1 = (Parsing.peek_val __caml_parser_env 2 : 'relative_location_path) in
506     let _3 = (Parsing.peek_val __caml_parser_env 0 : 'step) in
507     Obj.repr(
508 # 48 "aft_parser.mly"
509                                      ( Slash (_1,_3) )
510 # 511 "aft_parser.ml"
511                : 'relative_location_path))
512 ; (fun __caml_parser_env ->
513     let _1 = (Parsing.peek_val __caml_parser_env 2 : 'relative_location_path) in
514     let _3 = (Parsing.peek_val __caml_parser_env 0 : 'step) in
515     Obj.repr(
516 # 49 "aft_parser.mly"
517                                            ( double_slash _1 _3 )
518 # 519 "aft_parser.ml"
519                : 'relative_location_path))
520 ; (fun __caml_parser_env ->
521     let _1 = (Parsing.peek_val __caml_parser_env 1 : 'axis_specifier) in
522     let _2 = (Parsing.peek_val __caml_parser_env 0 : 'step2) in
523     Obj.repr(
524 # 52 "aft_parser.mly"
525                         ( Axis (_1,_2) )
526 # 527 "aft_parser.ml"
527                : 'step))
528 ; (fun __caml_parser_env ->
529     let _1 = (Parsing.peek_val __caml_parser_env 0 : 'step2) in
530     Obj.repr(
531 # 53 "aft_parser.mly"
532          ( _1 )
533 # 534 "aft_parser.ml"
534                : 'step))
535 ; (fun __caml_parser_env ->
536     Obj.repr(
537 # 54 "aft_parser.mly"
538          ( dot  )
539 # 540 "aft_parser.ml"
540                : 'step))
541 ; (fun __caml_parser_env ->
542     Obj.repr(
543 # 55 "aft_parser.mly"
544               ( dotdot )
545 # 546 "aft_parser.ml"
546                : 'step))
547 ; (fun __caml_parser_env ->
548     let _1 = (Parsing.peek_val __caml_parser_env 3 : 'step2) in
549     let _3 = (Parsing.peek_val __caml_parser_env 1 : 'expr) in
550     Obj.repr(
551 # 58 "aft_parser.mly"
552                                 ( Condition (_1,_3) )
553 # 554 "aft_parser.ml"
554                : 'step2))
555 ; (fun __caml_parser_env ->
556     let _1 = (Parsing.peek_val __caml_parser_env 0 : 'node_test) in
557     Obj.repr(
558 # 59 "aft_parser.mly"
559              ( _1 )
560 # 561 "aft_parser.ml"
561                : 'step2))
562 ; (fun __caml_parser_env ->
563     let _1 = (Parsing.peek_val __caml_parser_env 0 : string) in
564     Obj.repr(
565 # 62 "aft_parser.mly"
566         ( 
567      try Axis.of_string _1 
568      with Not_found -> failwith ("Unknown axis :"^_1)
569    )
570 # 571 "aft_parser.ml"
571                : 'axis_specifier))
572 ; (fun __caml_parser_env ->
573     Obj.repr(
574 # 66 "aft_parser.mly"
575       ( Axis.Attribute )
576 # 577 "aft_parser.ml"
577                : 'axis_specifier))
578 ; (fun __caml_parser_env ->
579     let _1 = (Parsing.peek_val __caml_parser_env 0 : string) in
580     Obj.repr(
581 # 70 "aft_parser.mly"
582               ( Name _1 )
583 # 584 "aft_parser.ml"
584                : 'node_test))
585 ; (fun __caml_parser_env ->
586     let _1 = (Parsing.peek_val __caml_parser_env 1 : string) in
587     Obj.repr(
588 # 71 "aft_parser.mly"
589                     ( 
590      try TypeTest (Type_test.of_string _1) 
591      with Not_found -> failwith ("Unknown node type :"^_1)
592    )
593 # 594 "aft_parser.ml"
594                : 'node_test))
595 ; (fun __caml_parser_env ->
596     let _1 = (Parsing.peek_val __caml_parser_env 2 : string) in
597     let _2 = (Parsing.peek_val __caml_parser_env 1 : string) in
598     Obj.repr(
599 # 75 "aft_parser.mly"
600                             (
601      match _1 with
602        | "processing-instruction" ->
603            TypeTest (Type_test.Pi_test (Some _2))
604        | _ -> failwith "Only processing-instruction tests accept argument" 
605    )
606 # 607 "aft_parser.ml"
607                : 'node_test))
608 ; (fun __caml_parser_env ->
609     let _1 = (Parsing.peek_val __caml_parser_env 0 : 'function_call) in
610     Obj.repr(
611 # 83 "aft_parser.mly"
612                    ( _1 )
613 # 614 "aft_parser.ml"
614                : 'primary_expr))
615 ; (fun __caml_parser_env ->
616     let _1 = (Parsing.peek_val __caml_parser_env 0 : string) in
617     Obj.repr(
618 # 84 "aft_parser.mly"
619                    ( Var _1 )
620 # 621 "aft_parser.ml"
621                : 'primary_expr))
622 ; (fun __caml_parser_env ->
623     let _2 = (Parsing.peek_val __caml_parser_env 1 : 'expr) in
624     Obj.repr(
625 # 85 "aft_parser.mly"
626                        ( _2 )
627 # 628 "aft_parser.ml"
628                : 'primary_expr))
629 ; (fun __caml_parser_env ->
630     let _1 = (Parsing.peek_val __caml_parser_env 0 : string) in
631     Obj.repr(
632 # 86 "aft_parser.mly"
633                    ( String_literal _1 )
634 # 635 "aft_parser.ml"
635                : 'primary_expr))
636 ; (fun __caml_parser_env ->
637     let _1 = (Parsing.peek_val __caml_parser_env 0 : float) in
638     Obj.repr(
639 # 87 "aft_parser.mly"
640                    ( Number_literal _1 )
641 # 642 "aft_parser.ml"
642                : 'primary_expr))
643 ; (fun __caml_parser_env ->
644     let _1 = (Parsing.peek_val __caml_parser_env 1 : string) in
645     Obj.repr(
646 # 90 "aft_parser.mly"
647                          ( Function (_1,[]) )
648 # 649 "aft_parser.ml"
649                : 'function_call))
650 ; (fun __caml_parser_env ->
651     let _1 = (Parsing.peek_val __caml_parser_env 2 : string) in
652     let _2 = (Parsing.peek_val __caml_parser_env 1 : 'arguments) in
653     Obj.repr(
654 # 91 "aft_parser.mly"
655                                    ( Function (_1,_2) )
656 # 657 "aft_parser.ml"
657                : 'function_call))
658 ; (fun __caml_parser_env ->
659     let _1 = (Parsing.peek_val __caml_parser_env 2 : 'arguments) in
660     let _3 = (Parsing.peek_val __caml_parser_env 0 : 'expr) in
661     Obj.repr(
662 # 94 "aft_parser.mly"
663                           ( _1@[_3] )
664 # 665 "aft_parser.ml"
665                : 'arguments))
666 ; (fun __caml_parser_env ->
667     let _1 = (Parsing.peek_val __caml_parser_env 0 : 'expr) in
668     Obj.repr(
669 # 95 "aft_parser.mly"
670         ( [_1] )
671 # 672 "aft_parser.ml"
672                : 'arguments))
673 ; (fun __caml_parser_env ->
674     let _1 = (Parsing.peek_val __caml_parser_env 0 : 'path_expr) in
675     Obj.repr(
676 # 98 "aft_parser.mly"
677                     ( _1 )
678 # 679 "aft_parser.ml"
679                : 'union_expr))
680 ; (fun __caml_parser_env ->
681     let _1 = (Parsing.peek_val __caml_parser_env 2 : 'union_expr) in
682     let _3 = (Parsing.peek_val __caml_parser_env 0 : 'path_expr) in
683     Obj.repr(
684 # 99 "aft_parser.mly"
685                               ( path_expr (Pipe(expr _1, expr _3)) )
686 # 687 "aft_parser.ml"
687                : 'union_expr))
688 ; (fun __caml_parser_env ->
689     let _1 = (Parsing.peek_val __caml_parser_env 0 : 'location_path) in
690     Obj.repr(
691 # 102 "aft_parser.mly"
692                     ( path_expr _1 )
693 # 694 "aft_parser.ml"
694                : 'path_expr))
695 ; (fun __caml_parser_env ->
696     let _1 = (Parsing.peek_val __caml_parser_env 0 : 'filter_expr) in
697     Obj.repr(
698 # 103 "aft_parser.mly"
699                     ( _1 )
700 # 701 "aft_parser.ml"
701                : 'path_expr))
702 ; (fun __caml_parser_env ->
703     let _1 = (Parsing.peek_val __caml_parser_env 2 : 'filter_expr) in
704     let _3 = (Parsing.peek_val __caml_parser_env 0 : 'relative_location_path) in
705     Obj.repr(
706 # 105 "aft_parser.mly"
707      (  path_expr (Slash (expr _1,_3)) )
708 # 709 "aft_parser.ml"
709                : 'path_expr))
710 ; (fun __caml_parser_env ->
711     let _1 = (Parsing.peek_val __caml_parser_env 2 : 'filter_expr) in
712     let _3 = (Parsing.peek_val __caml_parser_env 0 : 'relative_location_path) in
713     Obj.repr(
714 # 107 "aft_parser.mly"
715      (  path_expr (double_slash (expr _1) _3) )
716 # 717 "aft_parser.ml"
717                : 'path_expr))
718 ; (fun __caml_parser_env ->
719     let _1 = (Parsing.peek_val __caml_parser_env 0 : 'primary_expr) in
720     Obj.repr(
721 # 111 "aft_parser.mly"
722                 ( _1 )
723 # 724 "aft_parser.ml"
724                : 'filter_expr))
725 ; (fun __caml_parser_env ->
726     let _1 = (Parsing.peek_val __caml_parser_env 3 : 'filter_expr) in
727     let _3 = (Parsing.peek_val __caml_parser_env 1 : 'expr) in
728     Obj.repr(
729 # 112 "aft_parser.mly"
730                                       ( path_expr (Condition (expr _1,_3)) )
731 # 732 "aft_parser.ml"
732                : 'filter_expr))
733 ; (fun __caml_parser_env ->
734     let _1 = (Parsing.peek_val __caml_parser_env 0 : 'or_expr) in
735     Obj.repr(
736 # 116 "aft_parser.mly"
737                    ( _1 )
738 # 739 "aft_parser.ml"
739                : 'expr))
740 ; (fun __caml_parser_env ->
741     let _1 = (Parsing.peek_val __caml_parser_env 0 : 'and_expr) in
742     Obj.repr(
743 # 119 "aft_parser.mly"
744                    ( _1 )
745 # 746 "aft_parser.ml"
746                : 'or_expr))
747 ; (fun __caml_parser_env ->
748     let _1 = (Parsing.peek_val __caml_parser_env 2 : 'or_expr) in
749     let _3 = (Parsing.peek_val __caml_parser_env 0 : 'and_expr) in
750     Obj.repr(
751 # 120 "aft_parser.mly"
752                        ( Or(_1,_3) )
753 # 754 "aft_parser.ml"
754                : 'or_expr))
755 ; (fun __caml_parser_env ->
756     let _1 = (Parsing.peek_val __caml_parser_env 0 : 'equality_expr) in
757     Obj.repr(
758 # 123 "aft_parser.mly"
759                    ( _1 )
760 # 761 "aft_parser.ml"
761                : 'and_expr))
762 ; (fun __caml_parser_env ->
763     let _1 = (Parsing.peek_val __caml_parser_env 2 : 'and_expr) in
764     let _3 = (Parsing.peek_val __caml_parser_env 0 : 'equality_expr) in
765     Obj.repr(
766 # 124 "aft_parser.mly"
767                               ( And(_1,_3) )
768 # 769 "aft_parser.ml"
769                : 'and_expr))
770 ; (fun __caml_parser_env ->
771     let _1 = (Parsing.peek_val __caml_parser_env 0 : 'relational_expr) in
772     Obj.repr(
773 # 127 "aft_parser.mly"
774                     ( _1 )
775 # 776 "aft_parser.ml"
776                : 'equality_expr))
777 ; (fun __caml_parser_env ->
778     let _1 = (Parsing.peek_val __caml_parser_env 2 : 'equality_expr) in
779     let _3 = (Parsing.peek_val __caml_parser_env 0 : 'relational_expr) in
780     Obj.repr(
781 # 128 "aft_parser.mly"
782                                        ( Equal(_1,_3) )
783 # 784 "aft_parser.ml"
784                : 'equality_expr))
785 ; (fun __caml_parser_env ->
786     let _1 = (Parsing.peek_val __caml_parser_env 2 : 'equality_expr) in
787     let _3 = (Parsing.peek_val __caml_parser_env 0 : 'relational_expr) in
788     Obj.repr(
789 # 129 "aft_parser.mly"
790                                           ( NotEqual(_1,_3) )
791 # 792 "aft_parser.ml"
792                : 'equality_expr))
793 ; (fun __caml_parser_env ->
794     let _1 = (Parsing.peek_val __caml_parser_env 0 : 'additive_expr) in
795     Obj.repr(
796 # 132 "aft_parser.mly"
797                     ( _1 )
798 # 799 "aft_parser.ml"
799                : 'relational_expr))
800 ; (fun __caml_parser_env ->
801     let _1 = (Parsing.peek_val __caml_parser_env 2 : 'relational_expr) in
802     let _3 = (Parsing.peek_val __caml_parser_env 0 : 'additive_expr) in
803     Obj.repr(
804 # 133 "aft_parser.mly"
805                                     ( Lower(_1,_3) )
806 # 807 "aft_parser.ml"
807                : 'relational_expr))
808 ; (fun __caml_parser_env ->
809     let _1 = (Parsing.peek_val __caml_parser_env 2 : 'relational_expr) in
810     let _3 = (Parsing.peek_val __caml_parser_env 0 : 'additive_expr) in
811     Obj.repr(
812 # 134 "aft_parser.mly"
813                                     ( Greater(_1,_3) )
814 # 815 "aft_parser.ml"
815                : 'relational_expr))
816 ; (fun __caml_parser_env ->
817     let _1 = (Parsing.peek_val __caml_parser_env 2 : 'relational_expr) in
818     let _3 = (Parsing.peek_val __caml_parser_env 0 : 'additive_expr) in
819     Obj.repr(
820 # 135 "aft_parser.mly"
821                                      ( LowerEqual(_1,_3) )
822 # 823 "aft_parser.ml"
823                : 'relational_expr))
824 ; (fun __caml_parser_env ->
825     let _1 = (Parsing.peek_val __caml_parser_env 2 : 'relational_expr) in
826     let _3 = (Parsing.peek_val __caml_parser_env 0 : 'additive_expr) in
827     Obj.repr(
828 # 136 "aft_parser.mly"
829                                      ( GreaterEqual(_1,_3) )
830 # 831 "aft_parser.ml"
831                : 'relational_expr))
832 ; (fun __caml_parser_env ->
833     let _1 = (Parsing.peek_val __caml_parser_env 0 : 'multiplicative_expr) in
834     Obj.repr(
835 # 139 "aft_parser.mly"
836                         ( _1 )
837 # 838 "aft_parser.ml"
838                : 'additive_expr))
839 ; (fun __caml_parser_env ->
840     let _1 = (Parsing.peek_val __caml_parser_env 2 : 'additive_expr) in
841     let _3 = (Parsing.peek_val __caml_parser_env 0 : 'multiplicative_expr) in
842     Obj.repr(
843 # 140 "aft_parser.mly"
844                                            ( Plus(_1,_3) )
845 # 846 "aft_parser.ml"
846                : 'additive_expr))
847 ; (fun __caml_parser_env ->
848     let _1 = (Parsing.peek_val __caml_parser_env 2 : 'additive_expr) in
849     let _3 = (Parsing.peek_val __caml_parser_env 0 : 'multiplicative_expr) in
850     Obj.repr(
851 # 141 "aft_parser.mly"
852                                             ( Minus(_1,_3) )
853 # 854 "aft_parser.ml"
854                : 'additive_expr))
855 ; (fun __caml_parser_env ->
856     let _1 = (Parsing.peek_val __caml_parser_env 0 : 'unary_expr) in
857     Obj.repr(
858 # 144 "aft_parser.mly"
859                ( _1 )
860 # 861 "aft_parser.ml"
861                : 'multiplicative_expr))
862 ; (fun __caml_parser_env ->
863     let _1 = (Parsing.peek_val __caml_parser_env 2 : 'multiplicative_expr) in
864     let _3 = (Parsing.peek_val __caml_parser_env 0 : 'unary_expr) in
865     Obj.repr(
866 # 145 "aft_parser.mly"
867                                        ( Mul (_1,_3) )
868 # 869 "aft_parser.ml"
869                : 'multiplicative_expr))
870 ; (fun __caml_parser_env ->
871     let _1 = (Parsing.peek_val __caml_parser_env 2 : 'multiplicative_expr) in
872     let _3 = (Parsing.peek_val __caml_parser_env 0 : 'unary_expr) in
873     Obj.repr(
874 # 146 "aft_parser.mly"
875                                        ( Div (_1,_3) )
876 # 877 "aft_parser.ml"
877                : 'multiplicative_expr))
878 ; (fun __caml_parser_env ->
879     let _1 = (Parsing.peek_val __caml_parser_env 2 : 'multiplicative_expr) in
880     let _3 = (Parsing.peek_val __caml_parser_env 0 : 'unary_expr) in
881     Obj.repr(
882 # 147 "aft_parser.mly"
883                                        ( Mod (_1,_3) )
884 # 885 "aft_parser.ml"
885                : 'multiplicative_expr))
886 ; (fun __caml_parser_env ->
887     let _1 = (Parsing.peek_val __caml_parser_env 0 : 'union_expr) in
888     Obj.repr(
889 # 150 "aft_parser.mly"
890                ( _1 )
891 # 892 "aft_parser.ml"
892                : 'unary_expr))
893 ; (fun __caml_parser_env ->
894     let _2 = (Parsing.peek_val __caml_parser_env 0 : 'unary_expr) in
895     Obj.repr(
896 # 151 "aft_parser.mly"
897                     ( UnaryMinus _2 )
898 # 899 "aft_parser.ml"
899                : 'unary_expr))
900 (* Entry aft_pattern_match *)
901 ; (fun __caml_parser_env -> raise (Parsing.YYexit (Parsing.peek_val __caml_parser_env 0)))
902 (* Entry access_spec *)
903 ; (fun __caml_parser_env -> raise (Parsing.YYexit (Parsing.peek_val __caml_parser_env 0)))
904 |]
905 let yytables =
906   { Parsing.actions=yyact;
907     Parsing.transl_const=yytransl_const;
908     Parsing.transl_block=yytransl_block;
909     Parsing.lhs=yylhs;
910     Parsing.len=yylen;
911     Parsing.defred=yydefred;
912     Parsing.dgoto=yydgoto;
913     Parsing.sindex=yysindex;
914     Parsing.rindex=yyrindex;
915     Parsing.gindex=yygindex;
916     Parsing.tablesize=yytablesize;
917     Parsing.table=yytable;
918     Parsing.check=yycheck;
919     Parsing.error_function=parse_error;
920     Parsing.names_const=yynames_const;
921     Parsing.names_block=yynames_block }
922 let aft_pattern_match (lexfun : Lexing.lexbuf -> token) (lexbuf : Lexing.lexbuf) =
923    (Parsing.yyparse yytables 1 lexfun lexbuf : Aft_types.pattern_match)
924 let access_spec (lexfun : Lexing.lexbuf -> token) (lexbuf : Lexing.lexbuf) =
925    (Parsing.yyparse yytables 2 lexfun lexbuf : Aft_types.access_spec)