habaki 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +3 -0
  3. data/ext/katana/extconf.rb +20 -0
  4. data/ext/katana/rb_katana.c +280 -0
  5. data/ext/katana/rb_katana.h +102 -0
  6. data/ext/katana/rb_katana_array.c +144 -0
  7. data/ext/katana/rb_katana_declaration.c +389 -0
  8. data/ext/katana/rb_katana_rule.c +461 -0
  9. data/ext/katana/rb_katana_selector.c +559 -0
  10. data/ext/katana/src/foundation.c +237 -0
  11. data/ext/katana/src/foundation.h +120 -0
  12. data/ext/katana/src/katana.h +590 -0
  13. data/ext/katana/src/katana.lex.c +4104 -0
  14. data/ext/katana/src/katana.lex.h +592 -0
  15. data/ext/katana/src/katana.tab.c +4422 -0
  16. data/ext/katana/src/katana.tab.h +262 -0
  17. data/ext/katana/src/parser.c +1563 -0
  18. data/ext/katana/src/parser.h +237 -0
  19. data/ext/katana/src/selector.c +659 -0
  20. data/ext/katana/src/selector.h +54 -0
  21. data/ext/katana/src/tokenizer.c +300 -0
  22. data/ext/katana/src/tokenizer.h +41 -0
  23. data/lib/habaki/charset_rule.rb +25 -0
  24. data/lib/habaki/declaration.rb +53 -0
  25. data/lib/habaki/declarations.rb +346 -0
  26. data/lib/habaki/error.rb +43 -0
  27. data/lib/habaki/font_face_rule.rb +24 -0
  28. data/lib/habaki/formal_syntax.rb +464 -0
  29. data/lib/habaki/formatter.rb +99 -0
  30. data/lib/habaki/import_rule.rb +34 -0
  31. data/lib/habaki/media_rule.rb +173 -0
  32. data/lib/habaki/namespace_rule.rb +31 -0
  33. data/lib/habaki/node.rb +52 -0
  34. data/lib/habaki/page_rule.rb +24 -0
  35. data/lib/habaki/qualified_name.rb +29 -0
  36. data/lib/habaki/rule.rb +48 -0
  37. data/lib/habaki/rules.rb +225 -0
  38. data/lib/habaki/selector.rb +98 -0
  39. data/lib/habaki/selectors.rb +49 -0
  40. data/lib/habaki/style_rule.rb +35 -0
  41. data/lib/habaki/stylesheet.rb +158 -0
  42. data/lib/habaki/sub_selector.rb +234 -0
  43. data/lib/habaki/sub_selectors.rb +42 -0
  44. data/lib/habaki/supports_rule.rb +65 -0
  45. data/lib/habaki/value.rb +321 -0
  46. data/lib/habaki/values.rb +86 -0
  47. data/lib/habaki/visitor/element.rb +50 -0
  48. data/lib/habaki/visitor/media.rb +22 -0
  49. data/lib/habaki/visitor/nokogiri_element.rb +56 -0
  50. data/lib/habaki.rb +39 -0
  51. metadata +190 -0
@@ -0,0 +1,592 @@
1
+ #include "katana.tab.h"
2
+
3
+ /* Substitute the type names. */
4
+ #define YYSTYPE KATANASTYPE
5
+ #define YYLTYPE KATANALTYPE
6
+
7
+ #ifndef katanaHEADER_H
8
+ #define katanaHEADER_H 1
9
+ #define katanaIN_HEADER 1
10
+
11
+ #define YY_INT_ALIGNED short int
12
+
13
+ /* A lexical scanner generated by flex */
14
+
15
+ #define FLEX_SCANNER
16
+ #define YY_FLEX_MAJOR_VERSION 2
17
+ #define YY_FLEX_MINOR_VERSION 6
18
+ #define YY_FLEX_SUBMINOR_VERSION 4
19
+ #if YY_FLEX_SUBMINOR_VERSION > 0
20
+ #define FLEX_BETA
21
+ #endif
22
+
23
+ #ifdef yy_create_buffer
24
+ #define katana_create_buffer_ALREADY_DEFINED
25
+ #else
26
+ #define yy_create_buffer katana_create_buffer
27
+ #endif
28
+
29
+ #ifdef yy_delete_buffer
30
+ #define katana_delete_buffer_ALREADY_DEFINED
31
+ #else
32
+ #define yy_delete_buffer katana_delete_buffer
33
+ #endif
34
+
35
+ #ifdef yy_scan_buffer
36
+ #define katana_scan_buffer_ALREADY_DEFINED
37
+ #else
38
+ #define yy_scan_buffer katana_scan_buffer
39
+ #endif
40
+
41
+ #ifdef yy_scan_string
42
+ #define katana_scan_string_ALREADY_DEFINED
43
+ #else
44
+ #define yy_scan_string katana_scan_string
45
+ #endif
46
+
47
+ #ifdef yy_scan_bytes
48
+ #define katana_scan_bytes_ALREADY_DEFINED
49
+ #else
50
+ #define yy_scan_bytes katana_scan_bytes
51
+ #endif
52
+
53
+ #ifdef yy_init_buffer
54
+ #define katana_init_buffer_ALREADY_DEFINED
55
+ #else
56
+ #define yy_init_buffer katana_init_buffer
57
+ #endif
58
+
59
+ #ifdef yy_flush_buffer
60
+ #define katana_flush_buffer_ALREADY_DEFINED
61
+ #else
62
+ #define yy_flush_buffer katana_flush_buffer
63
+ #endif
64
+
65
+ #ifdef yy_load_buffer_state
66
+ #define katana_load_buffer_state_ALREADY_DEFINED
67
+ #else
68
+ #define yy_load_buffer_state katana_load_buffer_state
69
+ #endif
70
+
71
+ #ifdef yy_switch_to_buffer
72
+ #define katana_switch_to_buffer_ALREADY_DEFINED
73
+ #else
74
+ #define yy_switch_to_buffer katana_switch_to_buffer
75
+ #endif
76
+
77
+ #ifdef yypush_buffer_state
78
+ #define katanapush_buffer_state_ALREADY_DEFINED
79
+ #else
80
+ #define yypush_buffer_state katanapush_buffer_state
81
+ #endif
82
+
83
+ #ifdef yypop_buffer_state
84
+ #define katanapop_buffer_state_ALREADY_DEFINED
85
+ #else
86
+ #define yypop_buffer_state katanapop_buffer_state
87
+ #endif
88
+
89
+ #ifdef yyensure_buffer_stack
90
+ #define katanaensure_buffer_stack_ALREADY_DEFINED
91
+ #else
92
+ #define yyensure_buffer_stack katanaensure_buffer_stack
93
+ #endif
94
+
95
+ #ifdef yylex
96
+ #define katanalex_ALREADY_DEFINED
97
+ #else
98
+ #define yylex katanalex
99
+ #endif
100
+
101
+ #ifdef yyrestart
102
+ #define katanarestart_ALREADY_DEFINED
103
+ #else
104
+ #define yyrestart katanarestart
105
+ #endif
106
+
107
+ #ifdef yylex_init
108
+ #define katanalex_init_ALREADY_DEFINED
109
+ #else
110
+ #define yylex_init katanalex_init
111
+ #endif
112
+
113
+ #ifdef yylex_init_extra
114
+ #define katanalex_init_extra_ALREADY_DEFINED
115
+ #else
116
+ #define yylex_init_extra katanalex_init_extra
117
+ #endif
118
+
119
+ #ifdef yylex_destroy
120
+ #define katanalex_destroy_ALREADY_DEFINED
121
+ #else
122
+ #define yylex_destroy katanalex_destroy
123
+ #endif
124
+
125
+ #ifdef yyget_debug
126
+ #define katanaget_debug_ALREADY_DEFINED
127
+ #else
128
+ #define yyget_debug katanaget_debug
129
+ #endif
130
+
131
+ #ifdef yyset_debug
132
+ #define katanaset_debug_ALREADY_DEFINED
133
+ #else
134
+ #define yyset_debug katanaset_debug
135
+ #endif
136
+
137
+ #ifdef yyget_extra
138
+ #define katanaget_extra_ALREADY_DEFINED
139
+ #else
140
+ #define yyget_extra katanaget_extra
141
+ #endif
142
+
143
+ #ifdef yyset_extra
144
+ #define katanaset_extra_ALREADY_DEFINED
145
+ #else
146
+ #define yyset_extra katanaset_extra
147
+ #endif
148
+
149
+ #ifdef yyget_in
150
+ #define katanaget_in_ALREADY_DEFINED
151
+ #else
152
+ #define yyget_in katanaget_in
153
+ #endif
154
+
155
+ #ifdef yyset_in
156
+ #define katanaset_in_ALREADY_DEFINED
157
+ #else
158
+ #define yyset_in katanaset_in
159
+ #endif
160
+
161
+ #ifdef yyget_out
162
+ #define katanaget_out_ALREADY_DEFINED
163
+ #else
164
+ #define yyget_out katanaget_out
165
+ #endif
166
+
167
+ #ifdef yyset_out
168
+ #define katanaset_out_ALREADY_DEFINED
169
+ #else
170
+ #define yyset_out katanaset_out
171
+ #endif
172
+
173
+ #ifdef yyget_leng
174
+ #define katanaget_leng_ALREADY_DEFINED
175
+ #else
176
+ #define yyget_leng katanaget_leng
177
+ #endif
178
+
179
+ #ifdef yyget_text
180
+ #define katanaget_text_ALREADY_DEFINED
181
+ #else
182
+ #define yyget_text katanaget_text
183
+ #endif
184
+
185
+ #ifdef yyget_lineno
186
+ #define katanaget_lineno_ALREADY_DEFINED
187
+ #else
188
+ #define yyget_lineno katanaget_lineno
189
+ #endif
190
+
191
+ #ifdef yyset_lineno
192
+ #define katanaset_lineno_ALREADY_DEFINED
193
+ #else
194
+ #define yyset_lineno katanaset_lineno
195
+ #endif
196
+
197
+ #ifdef yyget_column
198
+ #define katanaget_column_ALREADY_DEFINED
199
+ #else
200
+ #define yyget_column katanaget_column
201
+ #endif
202
+
203
+ #ifdef yyset_column
204
+ #define katanaset_column_ALREADY_DEFINED
205
+ #else
206
+ #define yyset_column katanaset_column
207
+ #endif
208
+
209
+ #ifdef yywrap
210
+ #define katanawrap_ALREADY_DEFINED
211
+ #else
212
+ #define yywrap katanawrap
213
+ #endif
214
+
215
+ #ifdef yyget_lval
216
+ #define katanaget_lval_ALREADY_DEFINED
217
+ #else
218
+ #define yyget_lval katanaget_lval
219
+ #endif
220
+
221
+ #ifdef yyset_lval
222
+ #define katanaset_lval_ALREADY_DEFINED
223
+ #else
224
+ #define yyset_lval katanaset_lval
225
+ #endif
226
+
227
+ #ifdef yyget_lloc
228
+ #define katanaget_lloc_ALREADY_DEFINED
229
+ #else
230
+ #define yyget_lloc katanaget_lloc
231
+ #endif
232
+
233
+ #ifdef yyset_lloc
234
+ #define katanaset_lloc_ALREADY_DEFINED
235
+ #else
236
+ #define yyset_lloc katanaset_lloc
237
+ #endif
238
+
239
+ #ifdef yyalloc
240
+ #define katanaalloc_ALREADY_DEFINED
241
+ #else
242
+ #define yyalloc katanaalloc
243
+ #endif
244
+
245
+ #ifdef yyrealloc
246
+ #define katanarealloc_ALREADY_DEFINED
247
+ #else
248
+ #define yyrealloc katanarealloc
249
+ #endif
250
+
251
+ #ifdef yyfree
252
+ #define katanafree_ALREADY_DEFINED
253
+ #else
254
+ #define yyfree katanafree
255
+ #endif
256
+
257
+ /* First, we deal with platform-specific or compiler-specific issues. */
258
+
259
+ /* begin standard C headers. */
260
+ #include <stdio.h>
261
+ #include <string.h>
262
+ #include <errno.h>
263
+ #include <stdlib.h>
264
+
265
+ /* end standard C headers. */
266
+
267
+ /* flex integer type definitions */
268
+
269
+ #ifndef FLEXINT_H
270
+ #define FLEXINT_H
271
+
272
+ /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
273
+
274
+ #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
275
+
276
+ /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
277
+ * if you want the limit (max/min) macros for int types.
278
+ */
279
+ #ifndef __STDC_LIMIT_MACROS
280
+ #define __STDC_LIMIT_MACROS 1
281
+ #endif
282
+
283
+ #include <inttypes.h>
284
+ typedef int8_t flex_int8_t;
285
+ typedef uint8_t flex_uint8_t;
286
+ typedef int16_t flex_int16_t;
287
+ typedef uint16_t flex_uint16_t;
288
+ typedef int32_t flex_int32_t;
289
+ typedef uint32_t flex_uint32_t;
290
+ #else
291
+ typedef signed char flex_int8_t;
292
+ typedef short int flex_int16_t;
293
+ typedef int flex_int32_t;
294
+ typedef unsigned char flex_uint8_t;
295
+ typedef unsigned short int flex_uint16_t;
296
+ typedef unsigned int flex_uint32_t;
297
+
298
+ /* Limits of integral types. */
299
+ #ifndef INT8_MIN
300
+ #define INT8_MIN (-128)
301
+ #endif
302
+ #ifndef INT16_MIN
303
+ #define INT16_MIN (-32767-1)
304
+ #endif
305
+ #ifndef INT32_MIN
306
+ #define INT32_MIN (-2147483647-1)
307
+ #endif
308
+ #ifndef INT8_MAX
309
+ #define INT8_MAX (127)
310
+ #endif
311
+ #ifndef INT16_MAX
312
+ #define INT16_MAX (32767)
313
+ #endif
314
+ #ifndef INT32_MAX
315
+ #define INT32_MAX (2147483647)
316
+ #endif
317
+ #ifndef UINT8_MAX
318
+ #define UINT8_MAX (255U)
319
+ #endif
320
+ #ifndef UINT16_MAX
321
+ #define UINT16_MAX (65535U)
322
+ #endif
323
+ #ifndef UINT32_MAX
324
+ #define UINT32_MAX (4294967295U)
325
+ #endif
326
+
327
+ #ifndef SIZE_MAX
328
+ #define SIZE_MAX (~(size_t)0)
329
+ #endif
330
+
331
+ #endif /* ! C99 */
332
+
333
+ #endif /* ! FLEXINT_H */
334
+
335
+ /* begin standard C++ headers. */
336
+
337
+ /* TODO: this is always defined, so inline it */
338
+ #define yyconst const
339
+
340
+ #if defined(__GNUC__) && __GNUC__ >= 3
341
+ #define yynoreturn __attribute__((__noreturn__))
342
+ #else
343
+ #define yynoreturn
344
+ #endif
345
+
346
+ /* An opaque pointer. */
347
+ #ifndef YY_TYPEDEF_YY_SCANNER_T
348
+ #define YY_TYPEDEF_YY_SCANNER_T
349
+ typedef void* yyscan_t;
350
+ #endif
351
+
352
+ /* For convenience, these vars (plus the bison vars far below)
353
+ are macros in the reentrant scanner. */
354
+ #define yyin yyg->yyin_r
355
+ #define yyout yyg->yyout_r
356
+ #define yyextra yyg->yyextra_r
357
+ #define yyleng yyg->yyleng_r
358
+ #define yytext yyg->yytext_r
359
+ #define yylineno (YY_CURRENT_BUFFER_LVALUE->yy_bs_lineno)
360
+ #define yycolumn (YY_CURRENT_BUFFER_LVALUE->yy_bs_column)
361
+ #define yy_flex_debug yyg->yy_flex_debug_r
362
+
363
+ /* Size of default input buffer. */
364
+ #ifndef YY_BUF_SIZE
365
+ #ifdef __ia64__
366
+ /* On IA-64, the buffer size is 16k, not 8k.
367
+ * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.
368
+ * Ditto for the __ia64__ case accordingly.
369
+ */
370
+ #define YY_BUF_SIZE 32768
371
+ #else
372
+ #define YY_BUF_SIZE 16384
373
+ #endif /* __ia64__ */
374
+ #endif
375
+
376
+ #ifndef YY_TYPEDEF_YY_BUFFER_STATE
377
+ #define YY_TYPEDEF_YY_BUFFER_STATE
378
+ typedef struct yy_buffer_state *YY_BUFFER_STATE;
379
+ #endif
380
+
381
+ #ifndef YY_TYPEDEF_YY_SIZE_T
382
+ #define YY_TYPEDEF_YY_SIZE_T
383
+ typedef size_t yy_size_t;
384
+ #endif
385
+
386
+ #ifndef YY_STRUCT_YY_BUFFER_STATE
387
+ #define YY_STRUCT_YY_BUFFER_STATE
388
+ struct yy_buffer_state
389
+ {
390
+ FILE *yy_input_file;
391
+
392
+ char *yy_ch_buf; /* input buffer */
393
+ char *yy_buf_pos; /* current position in input buffer */
394
+
395
+ /* Size of input buffer in bytes, not including room for EOB
396
+ * characters.
397
+ */
398
+ int yy_buf_size;
399
+
400
+ /* Number of characters read into yy_ch_buf, not including EOB
401
+ * characters.
402
+ */
403
+ int yy_n_chars;
404
+
405
+ /* Whether we "own" the buffer - i.e., we know we created it,
406
+ * and can realloc() it to grow it, and should free() it to
407
+ * delete it.
408
+ */
409
+ int yy_is_our_buffer;
410
+
411
+ /* Whether this is an "interactive" input source; if so, and
412
+ * if we're using stdio for input, then we want to use getc()
413
+ * instead of fread(), to make sure we stop fetching input after
414
+ * each newline.
415
+ */
416
+ int yy_is_interactive;
417
+
418
+ /* Whether we're considered to be at the beginning of a line.
419
+ * If so, '^' rules will be active on the next match, otherwise
420
+ * not.
421
+ */
422
+ int yy_at_bol;
423
+
424
+ int yy_bs_lineno; /**< The line count. */
425
+ int yy_bs_column; /**< The column count. */
426
+
427
+ /* Whether to try to fill the input buffer when we reach the
428
+ * end of it.
429
+ */
430
+ int yy_fill_buffer;
431
+
432
+ int yy_buffer_status;
433
+
434
+ };
435
+ #endif /* !YY_STRUCT_YY_BUFFER_STATE */
436
+
437
+ void yyrestart ( FILE *input_file , yyscan_t yyscanner );
438
+ void yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer , yyscan_t yyscanner );
439
+ YY_BUFFER_STATE yy_create_buffer ( FILE *file, int size , yyscan_t yyscanner );
440
+ void yy_delete_buffer ( YY_BUFFER_STATE b , yyscan_t yyscanner );
441
+ void yy_flush_buffer ( YY_BUFFER_STATE b , yyscan_t yyscanner );
442
+ void yypush_buffer_state ( YY_BUFFER_STATE new_buffer , yyscan_t yyscanner );
443
+ void yypop_buffer_state ( yyscan_t yyscanner );
444
+
445
+ YY_BUFFER_STATE yy_scan_buffer ( char *base, yy_size_t size , yyscan_t yyscanner );
446
+ YY_BUFFER_STATE yy_scan_string ( const char *yy_str , yyscan_t yyscanner );
447
+ YY_BUFFER_STATE yy_scan_bytes ( const char *bytes, int len , yyscan_t yyscanner );
448
+
449
+ void *yyalloc ( yy_size_t , yyscan_t yyscanner );
450
+ void *yyrealloc ( void *, yy_size_t , yyscan_t yyscanner );
451
+ void yyfree ( void * , yyscan_t yyscanner );
452
+
453
+ /* Begin user sect3 */
454
+
455
+ #define katanawrap(yyscanner) (/*CONSTCOND*/1)
456
+ #define YY_SKIP_YYWRAP
457
+
458
+ #define yytext_ptr yytext_r
459
+
460
+ #ifdef YY_HEADER_EXPORT_START_CONDITIONS
461
+ #define INITIAL 0
462
+ #define mediaquery 1
463
+ #define supports 2
464
+ #define forkeyword 3
465
+
466
+ #endif
467
+
468
+ #ifndef YY_NO_UNISTD_H
469
+ /* Special case for "unistd.h", since it is non-ANSI. We include it way
470
+ * down here because we want the user's section 1 to have been scanned first.
471
+ * The user has a chance to override it with an option.
472
+ */
473
+ #include <unistd.h>
474
+ #endif
475
+
476
+ #ifndef YY_EXTRA_TYPE
477
+ #define YY_EXTRA_TYPE void *
478
+ #endif
479
+
480
+ int yylex_init (yyscan_t* scanner);
481
+
482
+ int yylex_init_extra ( YY_EXTRA_TYPE user_defined, yyscan_t* scanner);
483
+
484
+ /* Accessor methods to globals.
485
+ These are made visible to non-reentrant scanners for convenience. */
486
+
487
+ int yylex_destroy ( yyscan_t yyscanner );
488
+
489
+ int yyget_debug ( yyscan_t yyscanner );
490
+
491
+ void yyset_debug ( int debug_flag , yyscan_t yyscanner );
492
+
493
+ YY_EXTRA_TYPE yyget_extra ( yyscan_t yyscanner );
494
+
495
+ void yyset_extra ( YY_EXTRA_TYPE user_defined , yyscan_t yyscanner );
496
+
497
+ FILE *yyget_in ( yyscan_t yyscanner );
498
+
499
+ void yyset_in ( FILE * _in_str , yyscan_t yyscanner );
500
+
501
+ FILE *yyget_out ( yyscan_t yyscanner );
502
+
503
+ void yyset_out ( FILE * _out_str , yyscan_t yyscanner );
504
+
505
+ int yyget_leng ( yyscan_t yyscanner );
506
+
507
+ char *yyget_text ( yyscan_t yyscanner );
508
+
509
+ int yyget_lineno ( yyscan_t yyscanner );
510
+
511
+ void yyset_lineno ( int _line_number , yyscan_t yyscanner );
512
+
513
+ int yyget_column ( yyscan_t yyscanner );
514
+
515
+ void yyset_column ( int _column_no , yyscan_t yyscanner );
516
+
517
+ YYSTYPE * yyget_lval ( yyscan_t yyscanner );
518
+
519
+ void yyset_lval ( YYSTYPE * yylval_param , yyscan_t yyscanner );
520
+
521
+ YYLTYPE *yyget_lloc ( yyscan_t yyscanner );
522
+
523
+ void yyset_lloc ( YYLTYPE * yylloc_param , yyscan_t yyscanner );
524
+
525
+ /* Macros after this point can all be overridden by user definitions in
526
+ * section 1.
527
+ */
528
+
529
+ #ifndef YY_SKIP_YYWRAP
530
+ #ifdef __cplusplus
531
+ extern "C" int yywrap ( yyscan_t yyscanner );
532
+ #else
533
+ extern int yywrap ( yyscan_t yyscanner );
534
+ #endif
535
+ #endif
536
+
537
+ #ifndef yytext_ptr
538
+ static void yy_flex_strncpy ( char *, const char *, int , yyscan_t yyscanner);
539
+ #endif
540
+
541
+ #ifdef YY_NEED_STRLEN
542
+ static int yy_flex_strlen ( const char * , yyscan_t yyscanner);
543
+ #endif
544
+
545
+ #ifndef YY_NO_INPUT
546
+
547
+ #endif
548
+
549
+ /* Amount of stuff to slurp up with each read. */
550
+ #ifndef YY_READ_BUF_SIZE
551
+ #ifdef __ia64__
552
+ /* On IA-64, the buffer size is 16k, not 8k */
553
+ #define YY_READ_BUF_SIZE 16384
554
+ #else
555
+ #define YY_READ_BUF_SIZE 8192
556
+ #endif /* __ia64__ */
557
+ #endif
558
+
559
+ /* Number of entries by which start-condition stack grows. */
560
+ #ifndef YY_START_STACK_INCR
561
+ #define YY_START_STACK_INCR 25
562
+ #endif
563
+
564
+ /* Default declaration of generated scanner - a define so the user can
565
+ * easily add parameters.
566
+ */
567
+ #ifndef YY_DECL
568
+ #define YY_DECL_IS_OURS 1
569
+
570
+ extern int yylex \
571
+ (YYSTYPE* yylval_param, YYLTYPE* yylloc_param, yyscan_t yyscanner, void* parser);
572
+
573
+ #define YY_DECL int yylex \
574
+ (YYSTYPE * yylval_param, YYLTYPE* yylloc_param, yyscan_t yyscanner, void* parser);
575
+ #endif /* !YY_DECL */
576
+
577
+ /* yy_get_previous_state - get the state just before the EOB char was reached */
578
+
579
+ //#undef YY_NEW_FILE
580
+ #undef YY_FLUSH_BUFFER
581
+ #undef yy_set_bol
582
+ #undef yy_new_buffer
583
+ #undef yy_set_interactive
584
+ //#undef YY_DO_BEFORE_ACTION
585
+
586
+ #ifdef YY_DECL_IS_OURS
587
+ #undef YY_DECL_IS_OURS
588
+ #undef YY_DECL
589
+ #endif
590
+
591
+ #undef katanaIN_HEADER
592
+ #endif /* katanaHEADER_H */