b3780606dec720b7e5e2d60b67d9e2cdc3c26c20
[Faustine.git] / interpretor / lexer.ml
1 # 1 "lexer.mll"
2
3 open Parser
4 open Types
5
6 # 7 "lexer.ml"
7 let __ocaml_lex_tables = {
8 Lexing.lex_base =
9 "\000\000\217\255\218\255\001\000\222\255\223\255\224\255\225\255\
10 \017\000\002\000\001\000\233\255\000\000\236\255\000\000\238\255\
11 \000\000\001\000\000\000\018\000\000\000\000\000\247\255\023\000\
12 \249\255\250\255\251\255\252\255\253\255\254\255\255\255\003\000\
13 \001\000\013\000\248\255\231\255\230\255\014\000\016\000\015\000\
14 \246\255\014\000\245\255\024\000\019\000\024\000\244\255\019\000\
15 \240\255\002\000\001\000\001\000\028\000\002\000\015\000\003\000\
16 \234\255\040\000\024\000\025\000\038\000\029\000\033\000\228\255\
17 \044\000\045\000\227\255\032\000\243\255\051\000\039\000\034\000\
18 \032\000\041\000\241\255\037\000\057\000\057\000\048\000\057\000\
19 \239\255\060\000\044\000\050\000\048\000\058\000\042\000\064\000\
20 \237\255\235\255\220\255\065\000\065\000\063\000\049\000\229\255\
21 \219\255";
22 Lexing.lex_backtrk =
23 "\255\255\255\255\255\255\034\000\255\255\255\255\255\255\255\255\
24 \029\000\255\255\023\000\255\255\255\255\255\255\255\255\255\255\
25 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
26 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
27 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
28 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
29 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
30 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
31 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\013\000\
32 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
33 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
34 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
35 \255\255";
36 Lexing.lex_default =
37 "\255\255\000\000\000\000\255\255\000\000\000\000\000\000\000\000\
38 \255\255\255\255\255\255\000\000\255\255\000\000\255\255\000\000\
39 \255\255\255\255\255\255\255\255\255\255\255\255\000\000\255\255\
40 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\255\255\
41 \255\255\255\255\000\000\000\000\000\000\255\255\255\255\255\255\
42 \000\000\255\255\000\000\255\255\255\255\255\255\000\000\255\255\
43 \000\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
44 \000\000\255\255\255\255\255\255\255\255\255\255\255\255\000\000\
45 \255\255\255\255\000\000\255\255\000\000\255\255\255\255\255\255\
46 \255\255\255\255\000\000\255\255\255\255\255\255\255\255\255\255\
47 \000\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
48 \000\000\000\000\000\000\255\255\255\255\255\255\255\255\000\000\
49 \000\000";
50 Lexing.lex_trans =
51 "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
52 \000\000\030\000\030\000\000\000\000\000\000\000\000\000\000\000\
53 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
54 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
55 \030\000\024\000\000\000\013\000\000\000\015\000\000\000\000\000\
56 \006\000\005\000\027\000\029\000\004\000\028\000\007\000\026\000\
57 \008\000\008\000\008\000\008\000\008\000\008\000\008\000\008\000\
58 \008\000\008\000\003\000\090\000\010\000\000\000\011\000\096\000\
59 \022\000\008\000\008\000\008\000\008\000\008\000\008\000\008\000\
60 \008\000\008\000\008\000\000\000\000\000\000\000\000\000\000\000\
61 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
62 \000\000\000\000\000\000\012\000\000\000\089\000\000\000\025\000\
63 \000\000\017\000\052\000\018\000\075\000\081\000\021\000\057\000\
64 \056\000\020\000\051\000\054\000\037\000\023\000\041\000\067\000\
65 \009\000\036\000\016\000\019\000\091\000\069\000\014\000\043\000\
66 \032\000\035\000\034\000\045\000\033\000\038\000\002\000\039\000\
67 \031\000\040\000\042\000\044\000\049\000\047\000\046\000\048\000\
68 \053\000\055\000\050\000\058\000\059\000\060\000\061\000\064\000\
69 \063\000\065\000\066\000\068\000\070\000\071\000\072\000\073\000\
70 \074\000\076\000\077\000\078\000\079\000\062\000\080\000\082\000\
71 \083\000\084\000\085\000\086\000\087\000\088\000\092\000\093\000\
72 \094\000\095\000\000\000\000\000\000\000\000\000\000\000\000\000\
73 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
74 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
75 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
76 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
77 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
78 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
79 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
80 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
81 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
82 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
83 \001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
84 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
85 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
86 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
87 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
88 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
89 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
90 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
91 \000\000\000\000";
92 Lexing.lex_check =
93 "\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
94 \255\255\000\000\000\000\255\255\255\255\255\255\255\255\255\255\
95 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
96 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
97 \000\000\000\000\255\255\000\000\255\255\000\000\255\255\255\255\
98 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
99 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
100 \000\000\000\000\000\000\010\000\000\000\255\255\000\000\003\000\
101 \000\000\008\000\008\000\008\000\008\000\008\000\008\000\008\000\
102 \008\000\008\000\008\000\255\255\255\255\255\255\255\255\255\255\
103 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
104 \255\255\255\255\255\255\000\000\255\255\012\000\255\255\000\000\
105 \255\255\000\000\051\000\000\000\016\000\014\000\000\000\049\000\
106 \055\000\000\000\050\000\053\000\021\000\000\000\020\000\018\000\
107 \000\000\031\000\000\000\000\000\009\000\017\000\000\000\019\000\
108 \023\000\032\000\033\000\019\000\023\000\037\000\000\000\038\000\
109 \023\000\039\000\041\000\019\000\043\000\044\000\045\000\047\000\
110 \052\000\054\000\043\000\057\000\058\000\059\000\060\000\061\000\
111 \062\000\064\000\065\000\067\000\069\000\070\000\071\000\072\000\
112 \073\000\075\000\076\000\077\000\078\000\060\000\079\000\081\000\
113 \082\000\083\000\084\000\085\000\086\000\087\000\091\000\092\000\
114 \093\000\094\000\255\255\255\255\255\255\255\255\255\255\255\255\
115 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
116 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
117 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
118 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
119 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
120 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
121 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
122 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
123 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
124 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
125 \000\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
126 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
127 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
128 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
129 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
130 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
131 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
132 \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
133 \255\255\255\255";
134 Lexing.lex_base_code =
135 "";
136 Lexing.lex_backtrk_code =
137 "";
138 Lexing.lex_default_code =
139 "";
140 Lexing.lex_trans_code =
141 "";
142 Lexing.lex_check_code =
143 "";
144 Lexing.lex_code =
145 "";
146 }
147
148 let rec token lexbuf =
149 __ocaml_lex_token_rec lexbuf 0
150 and __ocaml_lex_token_rec lexbuf __ocaml_lex_state =
151 match Lexing.engine __ocaml_lex_tables __ocaml_lex_state lexbuf with
152 | 0 ->
153 # 7 "lexer.mll"
154 ( token lexbuf )
155 # 156 "lexer.ml"
156
157 | 1 ->
158 # 9 "lexer.mll"
159 ( IDENT Add)
160 # 161 "lexer.ml"
161
162 | 2 ->
163 # 10 "lexer.mll"
164 ( IDENT Sub)
165 # 166 "lexer.ml"
166
167 | 3 ->
168 # 11 "lexer.mll"
169 ( IDENT Mul)
170 # 171 "lexer.ml"
171
172 | 4 ->
173 # 12 "lexer.mll"
174 ( IDENT Div)
175 # 176 "lexer.ml"
176
177 | 5 ->
178 # 13 "lexer.mll"
179 ( IDENT Pass)
180 # 181 "lexer.ml"
181
182 | 6 ->
183 # 14 "lexer.mll"
184 ( IDENT Stop)
185 # 186 "lexer.ml"
186
187 | 7 ->
188 # 15 "lexer.mll"
189 ( IDENT Mem)
190 # 191 "lexer.ml"
191
192 | 8 ->
193 # 16 "lexer.mll"
194 ( IDENT Delay)
195 # 196 "lexer.ml"
196
197 | 9 ->
198 # 17 "lexer.mll"
199 ( IDENT Floor)
200 # 201 "lexer.ml"
201
202 | 10 ->
203 # 18 "lexer.mll"
204 ( IDENT Int)
205 # 206 "lexer.ml"
206
207 | 11 ->
208 # 19 "lexer.mll"
209 ( IDENT Sin)
210 # 211 "lexer.ml"
211
212 | 12 ->
213 # 20 "lexer.mll"
214 ( IDENT Cos)
215 # 216 "lexer.ml"
216
217 | 13 ->
218 # 21 "lexer.mll"
219 ( IDENT Atan)
220 # 221 "lexer.ml"
221
222 | 14 ->
223 # 22 "lexer.mll"
224 ( IDENT Atan2)
225 # 226 "lexer.ml"
226
227 | 15 ->
228 # 23 "lexer.mll"
229 ( IDENT Sqrt)
230 # 231 "lexer.ml"
231
232 | 16 ->
233 # 24 "lexer.mll"
234 ( IDENT Rdtable)
235 # 236 "lexer.ml"
236
237 | 17 ->
238 # 25 "lexer.mll"
239 ( IDENT Mod)
240 # 241 "lexer.ml"
241
242 | 18 ->
243 # 26 "lexer.mll"
244 ( IDENT Vectorize)
245 # 246 "lexer.ml"
246
247 | 19 ->
248 # 27 "lexer.mll"
249 ( IDENT Vconcat)
250 # 251 "lexer.ml"
251
252 | 20 ->
253 # 28 "lexer.mll"
254 ( IDENT Vpick )
255 # 256 "lexer.ml"
256
257 | 21 ->
258 # 29 "lexer.mll"
259 ( IDENT Serialize)
260 # 261 "lexer.ml"
261
262 | 22 ->
263 # 30 "lexer.mll"
264 ( IDENT Larger)
265 # 266 "lexer.ml"
266
267 | 23 ->
268 # 31 "lexer.mll"
269 ( IDENT Smaller)
270 # 271 "lexer.ml"
271
272 | 24 ->
273 # 32 "lexer.mll"
274 ( IDENT Max)
275 # 276 "lexer.ml"
276
277 | 25 ->
278 # 33 "lexer.mll"
279 ( IDENT Min)
280 # 281 "lexer.ml"
281
282 | 26 ->
283 # 34 "lexer.mll"
284 ( IDENT Prefix)
285 # 286 "lexer.ml"
286
287 | 27 ->
288 # 35 "lexer.mll"
289 ( IDENT Select2)
290 # 291 "lexer.ml"
291
292 | 28 ->
293 # 36 "lexer.mll"
294 ( IDENT Select3)
295 # 296 "lexer.ml"
296
297 | 29 ->
298 let
299 # 39 "lexer.mll"
300 a
301 # 302 "lexer.ml"
302 = Lexing.sub_lexeme lexbuf lexbuf.Lexing.lex_start_pos lexbuf.Lexing.lex_curr_pos in
303 # 39 "lexer.mll"
304 ( CONST a )
305 # 306 "lexer.ml"
306
307 | 30 ->
308 # 40 "lexer.mll"
309 ( POINT )
310 # 311 "lexer.ml"
311
312 | 31 ->
313 # 43 "lexer.mll"
314 ( LPAR )
315 # 316 "lexer.ml"
316
317 | 32 ->
318 # 44 "lexer.mll"
319 ( RPAR )
320 # 321 "lexer.ml"
321
322 | 33 ->
323 # 45 "lexer.mll"
324 ( PAR )
325 # 326 "lexer.ml"
326
327 | 34 ->
328 # 46 "lexer.mll"
329 ( SEQ )
330 # 331 "lexer.ml"
331
332 | 35 ->
333 # 47 "lexer.mll"
334 ( SPLIT )
335 # 336 "lexer.ml"
336
337 | 36 ->
338 # 48 "lexer.mll"
339 ( MERGE )
340 # 341 "lexer.ml"
341
342 | 37 ->
343 # 49 "lexer.mll"
344 ( REC )
345 # 346 "lexer.ml"
346
347 | 38 ->
348 # 50 "lexer.mll"
349 ( EOF )
350 # 351 "lexer.ml"
351
352 | __ocaml_lex_state -> lexbuf.Lexing.refill_buff lexbuf; __ocaml_lex_token_rec lexbuf __ocaml_lex_state
353
354 ;;
355