Google OR-Tools: ortools/flatzinc/parser.yy.cc Source File
14#line 2 "./ortools/flatzinc/parser.yy.cc"
16#line 4 "./ortools/flatzinc/parser.yy.cc"
18#define YY_INT_ALIGNED short int
22#define FLEX_SCANNER
23#define YY_FLEX_MAJOR_VERSION 2
24#define YY_FLEX_MINOR_VERSION 6
25#define YY_FLEX_SUBMINOR_VERSION 4
26#if YY_FLEX_SUBMINOR_VERSION > 0
31#define orfz__create_buffer_ALREADY_DEFINED
33#define yy_create_buffer orfz__create_buffer
37#define orfz__delete_buffer_ALREADY_DEFINED
39#define yy_delete_buffer orfz__delete_buffer
43#define orfz__scan_buffer_ALREADY_DEFINED
45#define yy_scan_buffer orfz__scan_buffer
49#define orfz__scan_string_ALREADY_DEFINED
51#define yy_scan_string orfz__scan_string
55#define orfz__scan_bytes_ALREADY_DEFINED
57#define yy_scan_bytes orfz__scan_bytes
61#define orfz__init_buffer_ALREADY_DEFINED
63#define yy_init_buffer orfz__init_buffer
67#define orfz__flush_buffer_ALREADY_DEFINED
69#define yy_flush_buffer orfz__flush_buffer
73#define orfz__load_buffer_state_ALREADY_DEFINED
75#define yy_load_buffer_state orfz__load_buffer_state
79#define orfz__switch_to_buffer_ALREADY_DEFINED
81#define yy_switch_to_buffer orfz__switch_to_buffer
85#define orfz_push_buffer_state_ALREADY_DEFINED
87#define yypush_buffer_state orfz_push_buffer_state
91#define orfz_pop_buffer_state_ALREADY_DEFINED
93#define yypop_buffer_state orfz_pop_buffer_state
96#ifdef yyensure_buffer_stack
97#define orfz_ensure_buffer_stack_ALREADY_DEFINED
99#define yyensure_buffer_stack orfz_ensure_buffer_stack
103#define orfz_lex_ALREADY_DEFINED
105#define yylex orfz_lex
109#define orfz_restart_ALREADY_DEFINED
111#define yyrestart orfz_restart
115#define orfz_lex_init_ALREADY_DEFINED
117#define yylex_init orfz_lex_init
121#define orfz_lex_init_extra_ALREADY_DEFINED
123#define yylex_init_extra orfz_lex_init_extra
127#define orfz_lex_destroy_ALREADY_DEFINED
129#define yylex_destroy orfz_lex_destroy
133#define orfz_get_debug_ALREADY_DEFINED
135#define yyget_debug orfz_get_debug
139#define orfz_set_debug_ALREADY_DEFINED
141#define yyset_debug orfz_set_debug
145#define orfz_get_extra_ALREADY_DEFINED
147#define yyget_extra orfz_get_extra
151#define orfz_set_extra_ALREADY_DEFINED
153#define yyset_extra orfz_set_extra
157#define orfz_get_in_ALREADY_DEFINED
159#define yyget_in orfz_get_in
163#define orfz_set_in_ALREADY_DEFINED
165#define yyset_in orfz_set_in
169#define orfz_get_out_ALREADY_DEFINED
171#define yyget_out orfz_get_out
175#define orfz_set_out_ALREADY_DEFINED
177#define yyset_out orfz_set_out
181#define orfz_get_leng_ALREADY_DEFINED
183#define yyget_leng orfz_get_leng
187#define orfz_get_text_ALREADY_DEFINED
189#define yyget_text orfz_get_text
193#define orfz_get_lineno_ALREADY_DEFINED
195#define yyget_lineno orfz_get_lineno
199#define orfz_set_lineno_ALREADY_DEFINED
201#define yyset_lineno orfz_set_lineno
205#define orfz_get_column_ALREADY_DEFINED
207#define yyget_column orfz_get_column
211#define orfz_set_column_ALREADY_DEFINED
213#define yyset_column orfz_set_column
217#define orfz_wrap_ALREADY_DEFINED
219#define yywrap orfz_wrap
223#define orfz_get_lval_ALREADY_DEFINED
225#define yyget_lval orfz_get_lval
229#define orfz_set_lval_ALREADY_DEFINED
231#define yyset_lval orfz_set_lval
235#define orfz_alloc_ALREADY_DEFINED
237#define yyalloc orfz_alloc
241#define orfz_realloc_ALREADY_DEFINED
243#define yyrealloc orfz_realloc
247#define orfz_free_ALREADY_DEFINED
249#define yyfree orfz_free
265#define FLEXINT_H
269#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
274#ifndef __STDC_LIMIT_MACROS
275#define __STDC_LIMIT_MACROS 1
295#define INT8_MIN (-128)
298#define INT16_MIN (-32767 - 1)
301#define INT32_MIN (-2147483647 - 1)
304#define INT8_MAX (127)
307#define INT16_MAX (32767)
310#define INT32_MAX (2147483647)
313#define UINT8_MAX (255U)
316#define UINT16_MAX (65535U)
319#define UINT32_MAX (4294967295U)
323#define SIZE_MAX (~(size_t)0)
333#define yyconst const
335#if defined(__GNUC__) && __GNUC__ >= 3
336#define yynoreturn __attribute__((__noreturn__))
338#define yynoreturn
342#define YY_NULL 0
347#define YY_SC_TO_UI(c) ((YY_CHAR)(c))
350#ifndef YY_TYPEDEF_YY_SCANNER_T
351#define YY_TYPEDEF_YY_SCANNER_T
357#define yyin yyg->yyin_r
358#define yyout yyg->yyout_r
359#define yyextra yyg->yyextra_r
360#define yyleng yyg->yyleng_r
361#define yytext yyg->yytext_r
362#define yylineno (YY_CURRENT_BUFFER_LVALUE->yy_bs_lineno)
363#define yycolumn (YY_CURRENT_BUFFER_LVALUE->yy_bs_column)
364#define yy_flex_debug yyg->yy_flex_debug_r
370#define BEGIN yyg->yy_start = 1 + 2 *
375#define YY_START ((yyg->yy_start - 1) / 2)
376#define YYSTATE YY_START
378#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
380#define YY_NEW_FILE yyrestart(yyin, yyscanner)
381#define YY_END_OF_BUFFER_CHAR 0
392#define YY_BUF_SIZE 16384
399#define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
401#ifndef YY_TYPEDEF_YY_BUFFER_STATE
402#define YY_TYPEDEF_YY_BUFFER_STATE
406#ifndef YY_TYPEDEF_YY_SIZE_T
407#define YY_TYPEDEF_YY_SIZE_T
411#define EOB_ACT_CONTINUE_SCAN 0
412#define EOB_ACT_END_OF_FILE 1
413#define EOB_ACT_LAST_MATCH 2
422#define YY_LESS_LINENO(n) \
425 for (yyl = n; yyl < yyleng; ++yyl) \
428#define YY_LINENO_REWIND_TO(dst) \
431 for (p = yy_cp - 1; p >= (dst); --p) \
436#define yyless(n) \
439 int yyless_macro_arg = (n); \
440 YY_LESS_LINENO(yyless_macro_arg); \
441 *yy_cp = yyg->yy_hold_char; \
442 YY_RESTORE_YY_MORE_OFFSET \
443 yyg->yy_c_buf_p = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
446#define unput(c) yyunput(c, yyg->yytext_ptr, yyscanner)
448#ifndef YY_STRUCT_YY_BUFFER_STATE
449#define YY_STRUCT_YY_BUFFER_STATE
454 char* yy_buf_pos;
495#define YY_BUFFER_NEW 0
496#define YY_BUFFER_NORMAL 1
507#define YY_BUFFER_EOF_PENDING 2
517#define YY_CURRENT_BUFFER \
518 (yyg->yy_buffer_stack ? yyg->yy_buffer_stack[yyg->yy_buffer_stack_top] : NULL)
522#define YY_CURRENT_BUFFER_LVALUE yyg->yy_buffer_stack[yyg->yy_buffer_stack_top]
535#define YY_FLUSH_BUFFER yy_flush_buffer(YY_CURRENT_BUFFER, yyscanner)
545#define yy_new_buffer yy_create_buffer
546#define yy_set_interactive(is_interactive) \
548 if (!YY_CURRENT_BUFFER) { \
549 yyensure_buffer_stack(yyscanner); \
550 YY_CURRENT_BUFFER_LVALUE = \
551 yy_create_buffer(yyin, YY_BUF_SIZE, yyscanner); \
553 YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
555#define yy_set_bol(at_bol) \
557 if (!YY_CURRENT_BUFFER) { \
558 yyensure_buffer_stack(yyscanner); \
559 YY_CURRENT_BUFFER_LVALUE = \
560 yy_create_buffer(yyin, YY_BUF_SIZE, yyscanner); \
564#define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
568#define orfz_wrap(yyscanner) ( 1)
569#define YY_SKIP_YYWRAP
574#define yytext_ptr yytext_r
585#define YY_DO_BEFORE_ACTION \
586 yyg->yytext_ptr = yy_bp; \
587 yyleng = (int)(yy_cp - yy_bp); \
591#define YY_NUM_RULES 31
592#define YY_END_OF_BUFFER 32
600 0, 0, 0, 32, 30, 28, 27, 30, 29, 30, 30, 18, 18, 30, 24, 30, 24,
601 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 0, 26, 29, 18, 18, 14, 0,
602 0, 0, 0, 15, 24, 25, 0, 24, 24, 24, 24, 24, 24, 24, 24, 8, 24,
603 24, 24, 24, 24, 24, 21, 0, 23, 20, 19, 25, 24, 24, 24, 24, 24, 5,
604 24, 24, 24, 24, 11, 24, 24, 13, 0, 24, 2, 24, 24, 24, 24, 24, 24,
605 24, 24, 16, 0, 22, 1, 24, 17, 4, 24, 24, 24, 24, 12, 24, 24,
607 24, 24, 24, 24, 24, 24, 24, 10, 24, 6, 7, 24, 24, 9, 3, 0};
610 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 1, 1, 1, 1, 1, 1, 1, 1,
611 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 4, 1, 1, 5,
612 1, 1, 1, 1, 1, 6, 1, 7, 8, 1, 9, 10, 10, 10, 10, 10, 10, 10, 11,
613 11, 12, 1, 1, 1, 1, 1, 1, 13, 13, 13, 13, 14, 13, 15, 15, 15, 15, 15,
614 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 1, 1, 1, 1,
617 21, 22, 15, 15, 23, 15, 15, 24, 25, 26, 27, 28, 15, 29, 30, 31, 32, 33, 15,
618 34, 35, 36, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
619 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
620 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
621 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
624 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
625 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
628static const YY_CHAR yy_meta[37] = {0, 1, 1, 2, 1, 1, 1, 1, 1, 3, 3, 3, 1,
633 0, 0, 0, 174, 175, 175, 175, 169, 0, 28, 164, 32, 17, 159, 0,
634 154, 140, 141, 140, 28, 140, 31, 143, 135, 40, 134, 145, 157, 175, 0,
635 0, 0, 175, 53, 62, 40, 0, 175, 0, 0, 144, 130, 131, 131, 132,
636 128, 123, 119, 126, 0, 130, 119, 118, 124, 115, 117, 65, 71, 74, 46,
637 0, 0, 128, 120, 113, 112, 124, 0, 117, 116, 118, 114, 0, 103, 114,
638 0, 81, 99, 0, 102, 111, 100, 105, 104, 105, 97, 105, 0, 84, 87,
639 0, 96, 0, 0, 101, 100, 103, 99, 0, 103, 83,
645 0, 116, 1, 116, 116, 116, 116, 117, 118, 116, 116, 116, 11, 116, 119,
646 120, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 117, 116, 118,
647 11, 12, 116, 116, 116, 116, 121, 116, 119, 122, 120, 119, 119, 119, 119,
648 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 116, 116, 116, 116,
649 121, 122, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
650 119, 116, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 116, 116,
651 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
653 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
657 0, 4, 5, 6, 7, 8, 4, 9, 10, 11, 12, 12, 13, 14, 14,
658 14, 15, 16, 17, 18, 14, 14, 19, 20, 14, 21, 14, 22, 23, 14,
659 24, 25, 14, 26, 14, 14, 14, 30, 31, 31, 33, 31, 31, 31, 116,
660 44, 34, 115, 47, 59, 59, 116, 45, 34, 48, 59, 59, 51, 114, 35,
661 113, 52, 56, 56, 56, 112, 36, 53, 57, 57, 111, 58, 58, 58, 56,
662 56, 56, 110, 109, 76, 58, 58, 58, 58, 58, 58, 76, 88, 88, 108,
663 89, 89, 89, 89, 89, 89, 89, 89, 89, 27, 107,
665 27, 27, 27, 29, 106, 29, 29, 29, 38, 38, 38, 39, 39, 60, 60,
666 61, 61, 61, 105, 104, 103, 102, 101, 100, 99, 98, 97, 96, 95, 94,
667 93, 92, 91, 90, 87, 86, 85, 84, 83, 82, 81, 80, 79, 78, 77,
668 75, 74, 73, 72, 71, 70, 69, 68, 67, 66, 65, 64, 63, 62, 40,
669 28, 55, 54, 50, 49, 46, 43, 42, 41, 40, 37, 32, 28, 116, 3,
670 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116,
676 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
677 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
678 1, 1, 1, 1, 1, 1, 1, 9, 9, 9, 11, 11, 11, 11, 12,
679 19, 11, 113, 21, 35, 35, 12, 19, 11, 21, 59, 59, 24, 112, 11,
680 109, 24, 33, 33, 33, 107, 11, 24, 34, 34, 106, 34, 34, 34, 56,
681 56, 56, 105, 104, 56, 57, 57, 57, 58, 58, 58, 56, 76, 76, 103,
682 76, 76, 76, 88, 88, 88, 89, 89, 89, 117, 102,
684 117, 117, 117, 118, 101, 118, 118, 118, 119, 119, 119, 120, 120, 121, 121,
685 122, 122, 122, 100, 99, 97, 96, 95, 94, 91, 86, 85, 84, 83, 82,
686 81, 80, 79, 77, 74, 73, 71, 70, 69, 68, 66, 65, 64, 63, 62,
687 55, 54, 53, 52, 51, 50, 48, 47, 46, 45, 44, 43, 42, 41, 40,
688 27, 26, 25, 23, 22, 20, 18, 17, 16, 15, 13, 10, 7, 3, 116,
689 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116,
696 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
703#define REJECT reject_used_but_not_detected
704#define yymore() yymore_used_but_not_detected
705#define YY_MORE_ADJ 0
706#define YY_RESTORE_YY_MORE_OFFSET
707#line 1 "./ortools/flatzinc/parser.lex"
711#line 11 "./ortools/flatzinc/parser.lex"
715#include "absl/log/check.h"
716#include "absl/strings/numbers.h"
723#line 769 "./ortools/flatzinc/parser.yy.cc"
727#line 773 "./ortools/flatzinc/parser.yy.cc"
729#define INITIAL 0
740#define YY_EXTRA_TYPE void*
782#define yylval yyg->yylval_r
844static void yy_flex_strncpy(char*, const char*, int, yyscan_t yyscanner);
848static int yy_flex_strlen(const char*, yyscan_t yyscanner);
853static int yyinput(yyscan_t yyscanner);
864#define YY_READ_BUF_SIZE 16384
866#define YY_READ_BUF_SIZE 8192
875#define ECHO \
886#define YY_INPUT(buf, result, max_size) \
887 if (YY_CURRENT_BUFFER_LVALUE->yy_is_interactive) { \
890 for (n = 0; n < max_size && (c = getc(yyin)) != EOF && c != '\n'; ++n) \
892 if (c == '\n') buf[n++] = (char)c; \
893 if (c == EOF && ferror(yyin)) \
894 YY_FATAL_ERROR("input in flex scanner failed"); \
898 while ((result = (int)fread(buf, 1, (yy_size_t)max_size, yyin)) == 0 && \
916#define yyterminate() return YY_NULL
920#ifndef YY_START_STACK_INCR
921#define YY_START_STACK_INCR 25
926#define YY_FATAL_ERROR(msg) yy_fatal_error(msg, yyscanner)
935#define YY_DECL_IS_OURS 1
939#define YY_DECL int yylex(YYSTYPE* yylval_param, yyscan_t yyscanner)
946#define YY_USER_ACTION
951#define YY_BREAK break;
954#define YY_RULE_SETUP YY_USER_ACTION
988#line 26 "./ortools/flatzinc/parser.lex"
990#line 1049 "./ortools/flatzinc/parser.yy.cc"
1004 yy_current_state = yyg->yy_start;
1008 if (yy_accept[yy_current_state]) {
1009 yyg->yy_last_accepting_state = yy_current_state;
1010 yyg->yy_last_accepting_cpos = yy_cp;
1012 while (yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state) {
1013 yy_current_state = (int)yy_def[yy_current_state];
1014 if (yy_current_state >= 117) yy_c = yy_meta[yy_c];
1016 yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
1018 } while (yy_base[yy_current_state] != 175);
1022 if (yy_act == 0) {
1023 yy_cp = yyg->yy_last_accepting_cpos;
1024 yy_current_state = yyg->yy_last_accepting_state;
1032 for (yyl = 0; yyl < yyleng; ++yyl)
1033 if (yytext[yyl] == '\n') do {
1041 switch (yy_act) {
1045 yy_cp = yyg->yy_last_accepting_cpos;
1046 yy_current_state = yyg->yy_last_accepting_state;
1051#line 27 "./ortools/flatzinc/parser.lex"
1058#line 28 "./ortools/flatzinc/parser.lex"
1065#line 29 "./ortools/flatzinc/parser.lex"
1072#line 30 "./ortools/flatzinc/parser.lex"
1079#line 31 "./ortools/flatzinc/parser.lex"
1086#line 32 "./ortools/flatzinc/parser.lex"
1093#line 33 "./ortools/flatzinc/parser.lex"
1100#line 34 "./ortools/flatzinc/parser.lex"
1102 return OF;
1107#line 35 "./ortools/flatzinc/parser.lex"
1114#line 36 "./ortools/flatzinc/parser.lex"
1121#line 37 "./ortools/flatzinc/parser.lex"
1123 return SET;
1128#line 38 "./ortools/flatzinc/parser.lex"
1135#line 39 "./ortools/flatzinc/parser.lex"
1137 return VAR;
1142#line 40 "./ortools/flatzinc/parser.lex"
1149#line 41 "./ortools/flatzinc/parser.lex"
1156#line 43 "./ortools/flatzinc/parser.lex"
1158 yylval->integer_value = 1;
1164#line 47 "./ortools/flatzinc/parser.lex"
1166 yylval->integer_value = 0;
1172#line 51 "./ortools/flatzinc/parser.lex"
1174 CHECK(absl::SimpleAtoi(yytext, &yylval->integer_value));
1180#line 55 "./ortools/flatzinc/parser.lex"
1182 CHECK(absl::SimpleAtoi(yytext, &yylval->integer_value));
1188#line 59 "./ortools/flatzinc/parser.lex"
1190 CHECK(absl::SimpleAtoi(yytext, &yylval->integer_value));
1196#line 63 "./ortools/flatzinc/parser.lex"
1198 CHECK(absl::SimpleAtod(yytext, &yylval->double_value));
1204#line 67 "./ortools/flatzinc/parser.lex"
1206 CHECK(absl::SimpleAtod(yytext, &yylval->double_value));
1212#line 71 "./ortools/flatzinc/parser.lex"
1214 CHECK(absl::SimpleAtod(yytext, &yylval->double_value));
1220#line 76 "./ortools/flatzinc/parser.lex"
1228#line 80 "./ortools/flatzinc/parser.lex"
1236#line 84 "./ortools/flatzinc/parser.lex"
1245#line 85 "./ortools/flatzinc/parser.lex"
1250#line 86 "./ortools/flatzinc/parser.lex"
1255#line 87 "./ortools/flatzinc/parser.lex"
1260#line 88 "./ortools/flatzinc/parser.lex"
1267#line 89 "./ortools/flatzinc/parser.lex"
1270#line 1305 "./ortools/flatzinc/parser.yy.cc"
1276 int yy_amount_of_matched_text = (int)(yy_cp - yyg->yytext_ptr) - 1;
1304 if (yyg->yy_c_buf_p <=
1306 ->yy_ch_buf[yyg->yy_n_chars]) {
1309 yyg->yy_c_buf_p = yyg->yytext_ptr + yy_amount_of_matched_text;
1322 yy_next_state = yy_try_NUL_trans(yy_current_state, yyscanner);
1329 yy_current_state = yy_next_state;
1342 yyg->yy_did_buffer_switch_on_eof = 0;
1344 if (yywrap(yyscanner)) {
1367 yyg->yy_c_buf_p = yyg->yytext_ptr + yy_amount_of_matched_text;
1376 yyg->yy_c_buf_p =
1389 YY_FATAL_ERROR("fatal flex scanner internal error--no action found");
1405 char* source = yyg->yytext_ptr;
1406 int number_to_move, i;
1409 if (yyg->yy_c_buf_p >
1411 YY_FATAL_ERROR("fatal flex scanner internal error--end of buffer missed");
1433 number_to_move = (int)(yyg->yy_c_buf_p - yyg->yytext_ptr - 1);
1435 for (i = 0; i < number_to_move; ++i) *(dest++) = *(source++);
1447 while (num_to_read <= 0) {
1452 int yy_c_buf_p_offset = (int)(yyg->yy_c_buf_p - b->yy_ch_buf);
1454 if (b->yy_is_our_buffer) {
1455 int new_size = b->yy_buf_size * 2;
1458 b->yy_buf_size += b->yy_buf_size / 8;
1460 b->yy_buf_size *= 2;
1462 b->yy_ch_buf = (char*)
1468 b->yy_ch_buf = NULL;
1470 if (!b->yy_ch_buf)
1471 YY_FATAL_ERROR("fatal error - scanner input buffer overflow");
1473 yyg->yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
1482 yyg->yy_n_chars, num_to_read);
1487 if (yyg->yy_n_chars == 0) {
1502 if ((yyg->yy_n_chars + number_to_move) >
1505 int new_size = yyg->yy_n_chars + number_to_move + (yyg->yy_n_chars >> 1);
1508 (yy_size_t)new_size, yyscanner);
1510 YY_FATAL_ERROR("out of dynamic memory in yy_get_next_buffer()");
1515 yyg->yy_n_chars += number_to_move;
1532 yy_current_state = yyg->yy_start;
1537 if (yy_accept[yy_current_state]) {
1538 yyg->yy_last_accepting_state = yy_current_state;
1539 yyg->yy_last_accepting_cpos = yy_cp;
1541 while (yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state) {
1542 yy_current_state = (int)yy_def[yy_current_state];
1543 if (yy_current_state >= 117) yy_c = yy_meta[yy_c];
1545 yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
1561 char* yy_cp = yyg->yy_c_buf_p;
1564 if (yy_accept[yy_current_state]) {
1565 yyg->yy_last_accepting_state = yy_current_state;
1566 yyg->yy_last_accepting_cpos = yy_cp;
1568 while (yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state) {
1569 yy_current_state = (int)yy_def[yy_current_state];
1570 if (yy_current_state >= 117) yy_c = yy_meta[yy_c];
1572 yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
1573 yy_is_jam = (yy_current_state == 116);
1575 (void)yyg;
1576 return yy_is_jam ? 0 : yy_current_state;
1593 int number_to_move = yyg->yy_n_chars + 2;
1600 yy_cp += (int)(dest - source);
1601 yy_bp += (int)(dest - source);
1609 *--yy_cp = (char)c;
1624static int yyinput(yyscan_t yyscanner)
1630 int c;
1633 *yyg->yy_c_buf_p = yyg->yy_hold_char;
1642 *yyg->yy_c_buf_p = '\0';
1645 int offset = (int)(yyg->yy_c_buf_p - yyg->yytext_ptr);
1646 ++yyg->yy_c_buf_p;
1666 if (yywrap(yyscanner)) return 0;
1670 return yyinput(yyscanner);
1672 return input(yyscanner);
1677 yyg->yy_c_buf_p = yyg->yytext_ptr + offset;
1683 c = *(unsigned char*)yyg->yy_c_buf_p;
1684 *yyg->yy_c_buf_p = '\0';
1685 yyg->yy_hold_char = *++yyg->yy_c_buf_p;
1692 return c;
1730 *yyg->yy_c_buf_p = yyg->yy_hold_char;
1743 yyg->yy_did_buffer_switch_on_eof = 1;
1751 yyg->yy_hold_char = *yyg->yy_c_buf_p;
1765 if (!b) YY_FATAL_ERROR("out of dynamic memory in yy_create_buffer()");
1767 b->yy_buf_size = size;
1772 b->yy_ch_buf = (char*)yyalloc((yy_size_t)(b->yy_buf_size + 2), yyscanner);
1773 if (!b->yy_ch_buf)
1774 YY_FATAL_ERROR("out of dynamic memory in yy_create_buffer()");
1776 b->yy_is_our_buffer = 1;
1780 return b;
1792 if (b == YY_CURRENT_BUFFER)
1795 if (b->yy_is_our_buffer) yyfree((void*)b->yy_ch_buf, yyscanner);
1797 yyfree((void*)b, yyscanner);
1813 b->yy_fill_buffer = 1;
1820 b->yy_bs_lineno = 1;
1821 b->yy_bs_column = 0;
1824 b->yy_is_interactive = file ? (isatty(fileno(file)) > 0) : 0;
1837 b->yy_n_chars = 0;
1846 b->yy_buf_pos = &b->yy_ch_buf[0];
1848 b->yy_at_bol = 1;
1862 if (new_buffer == NULL) return;
1869 *yyg->yy_c_buf_p = yyg->yy_hold_char;
1880 yyg->yy_did_buffer_switch_on_eof = 1;
1893 if (yyg->yy_buffer_stack_top > 0) --yyg->yy_buffer_stack_top;
1897 yyg->yy_did_buffer_switch_on_eof = 1;
1908 if (!yyg->yy_buffer_stack) {
1915 num_to_alloc * sizeof(struct yy_buffer_state*), yyscanner);
1916 if (!yyg->yy_buffer_stack)
1917 YY_FATAL_ERROR("out of dynamic memory in yyensure_buffer_stack()");
1919 memset(yyg->yy_buffer_stack, 0,
1922 yyg->yy_buffer_stack_max = num_to_alloc;
1923 yyg->yy_buffer_stack_top = 0;
1927 if (yyg->yy_buffer_stack_top >= (yyg->yy_buffer_stack_max) - 1) {
1929 yy_size_t grow_size = 8 ;
1931 num_to_alloc = yyg->yy_buffer_stack_max + grow_size;
1933 yyg->yy_buffer_stack, num_to_alloc * sizeof(struct yy_buffer_state*),
1935 if (!yyg->yy_buffer_stack)
1936 YY_FATAL_ERROR("out of dynamic memory in yyensure_buffer_stack()");
1939 memset(yyg->yy_buffer_stack + yyg->yy_buffer_stack_max, 0,
1941 yyg->yy_buffer_stack_max = num_to_alloc;
1961 if (!b) YY_FATAL_ERROR("out of dynamic memory in yy_scan_buffer()");
1963 b->yy_buf_size = (int)(size - 2);
1964 b->yy_buf_pos = b->yy_ch_buf = base;
1965 b->yy_is_our_buffer = 0;
1966 b->yy_input_file = NULL;
1967 b->yy_n_chars = b->yy_buf_size;
1968 b->yy_is_interactive = 0;
1969 b->yy_at_bol = 1;
1970 b->yy_fill_buffer = 0;
1975 return b;
1987 return yy_scan_bytes(yystr, (int)strlen(yystr), yyscanner);
2002 int i;
2005 n = (yy_size_t)(_yybytes_len + 2);
2006 buf = (char*)yyalloc(n, yyscanner);
2007 if (!buf) YY_FATAL_ERROR("out of dynamic memory in yy_scan_bytes()");
2009 for (i = 0; i < _yybytes_len; ++i) buf[i] = yybytes[i];
2014 if (!b) YY_FATAL_ERROR("bad buffer in yy_scan_bytes()");
2019 b->yy_is_our_buffer = 1;
2021 return b;
2030 (void)yyg;
2031 fprintf(stderr, "%s\n", msg);
2041 int yyless_macro_arg = (n); \
2042 YY_LESS_LINENO(yyless_macro_arg); \
2043 yytext[yyleng] = yyg->yy_hold_char; \
2044 yyg->yy_c_buf_p = yytext + yyless_macro_arg; \
2045 yyg->yy_hold_char = *yyg->yy_c_buf_p; \
2046 *yyg->yy_c_buf_p = '\0'; \
2047 yyleng = yyless_macro_arg; \
2087 return yyin;
2158 yyin = _in_str;
2163 yyout = _out_str;
2185 yylval = yylval_param;
2196 if (ptr_yy_globals == NULL) {
2203 if (*ptr_yy_globals == NULL) {
2210 memset(*ptr_yy_globals, 0x00, sizeof(struct yyguts_t));
2223 struct yyguts_t dummy_yyguts;
2225 yyset_extra(yy_user_defined, &dummy_yyguts);
2227 if (ptr_yy_globals == NULL) {
2234 if (*ptr_yy_globals == NULL) {
2241 memset(*ptr_yy_globals, 0x00, sizeof(struct yyguts_t));
2243 yyset_extra(yy_user_defined, *ptr_yy_globals);
2254 yyg->yy_buffer_stack = NULL;
2255 yyg->yy_buffer_stack_top = 0;
2256 yyg->yy_buffer_stack_max = 0;
2257 yyg->yy_c_buf_p = NULL;
2258 yyg->yy_init = 0;
2259 yyg->yy_start = 0;
2261 yyg->yy_start_stack_ptr = 0;
2262 yyg->yy_start_stack_depth = 0;
2263 yyg->yy_start_stack = NULL;
2267 yyin = stdin;
2270 yyin = NULL;
2292 yyfree(yyg->yy_buffer_stack, yyscanner);
2293 yyg->yy_buffer_stack = NULL;
2296 yyfree(yyg->yy_start_stack, yyscanner);
2297 yyg->yy_start_stack = NULL;
2304 yyfree(yyscanner, yyscanner);
2314static void yy_flex_strncpy(char* s1, const char* s2, int n,
2317 (void)yyg;
2319 int i;
2320 for (i = 0; i < n; ++i) s1[i] = s2[i];
2325static int yy_flex_strlen(const char* s, yyscan_t yyscanner) {
2335 (void)yyg;
2336 return malloc(size);
2341 (void)yyg;
2350 return realloc(ptr, size);
2355 (void)yyg;
2356 free((char*)ptr);
2359#define YYTABLES_NAME "yytables"
2361#line 89 "./ortools/flatzinc/parser.lex"
#define yy_load_buffer_state
Definition parser.yy.cc:75
#define YY_NEW_FILE
Definition parser.yy.cc:380
#define yyset_extra
Definition parser.yy.cc:153
#define yytext
Definition parser.yy.cc:361
#define yyget_lval
Definition parser.yy.cc:225
#define yyget_column
Definition parser.yy.cc:207
unsigned char flex_uint8_t
Definition parser.yy.cc:289
#define yyset_lineno
Definition parser.yy.cc:201
#define yyset_lval
Definition parser.yy.cc:231
static const flex_int16_t yy_nxt[212]
Definition parser.yy.cc:656
void * yyscan_t
Definition parser.yy.cc:352
#define yylex_init
Definition parser.yy.cc:117
static int yy_init_globals(yyscan_t yyscanner)
static void yynoreturn yy_fatal_error(const char *msg, yyscan_t yyscanner)
#define yyrestart
Definition parser.yy.cc:111
#define yyset_debug
Definition parser.yy.cc:141
#define YY_EXTRA_TYPE
Definition parser.yy.cc:740
static int yy_get_next_buffer(yyscan_t yyscanner)
static const YY_CHAR yy_meta[37]
Definition parser.yy.cc:628
short int flex_int16_t
Definition parser.yy.cc:287
#define yy_flex_debug
Definition parser.yy.cc:364
#define yyget_out
Definition parser.yy.cc:171
unsigned int flex_uint32_t
Definition parser.yy.cc:291
static yy_state_type yy_try_NUL_trans(yy_state_type current_state, yyscan_t yyscanner)
#define yy_scan_bytes
Definition parser.yy.cc:57
#define YY_BREAK
Definition parser.yy.cc:951
#define yylex_init_extra
Definition parser.yy.cc:123
#define yynoreturn
Definition parser.yy.cc:338
#define yyget_debug
Definition parser.yy.cc:135
int yy_act
Definition parser.yy.cc:961
#define yypush_buffer_state
Definition parser.yy.cc:87
struct yy_buffer_state * YY_BUFFER_STATE
Definition parser.yy.cc:403
#define yyfree
Definition parser.yy.cc:249
#define yyout
Definition parser.yy.cc:358
#define YY_BUFFER_NEW
Definition parser.yy.cc:495
#define yyget_lineno
Definition parser.yy.cc:195
#define yylex
Definition parser.yy.cc:105
#define YY_RESTORE_YY_MORE_OFFSET
Definition parser.yy.cc:706
static int input(yyscan_t yyscanner)
#define yywrap
Definition parser.yy.cc:219
#define yyget_text
Definition parser.yy.cc:189
#define YY_BUFFER_NORMAL
Definition parser.yy.cc:496
char * yy_cp
Definition parser.yy.cc:960
#define yyensure_buffer_stack
Definition parser.yy.cc:99
#define yy_scan_buffer
Definition parser.yy.cc:45
#define YY_MORE_ADJ
Definition parser.yy.cc:705
#define YY_RULE_SETUP
Definition parser.yy.cc:954
#define yy_scan_string
Definition parser.yy.cc:51
static const flex_int16_t yy_base[123]
Definition parser.yy.cc:632
#define yyextra
Definition parser.yy.cc:359
struct yyguts_t * yyg
Definition parser.yy.cc:962
#define yylval
Definition parser.yy.cc:782
signed char flex_int8_t
Definition parser.yy.cc:286
#define yyget_leng
Definition parser.yy.cc:183
#define EOB_ACT_END_OF_FILE
Definition parser.yy.cc:412
#define yyalloc
Definition parser.yy.cc:237
static void yyunput(int c, char *buf_ptr, yyscan_t yyscanner)
#define yypop_buffer_state
Definition parser.yy.cc:93
#define YY_CURRENT_BUFFER_LVALUE
Definition parser.yy.cc:522
int flex_int32_t
Definition parser.yy.cc:288
#define yylex_destroy
Definition parser.yy.cc:129
#define YY_START
Definition parser.yy.cc:375
#define yyset_column
Definition parser.yy.cc:213
#define yy_switch_to_buffer
Definition parser.yy.cc:81
static const flex_int16_t yy_def[123]
Definition parser.yy.cc:644
int yy_state_type
Definition parser.yy.cc:572
#define YY_CURRENT_BUFFER
Definition parser.yy.cc:517
#define yy_init_buffer
Definition parser.yy.cc:63
#define INITIAL
Definition parser.yy.cc:729
#define yyget_extra
Definition parser.yy.cc:147
char * yy_bp
Definition parser.yy.cc:960
#define yyin
Definition parser.yy.cc:357
static const flex_int16_t yy_chk[212]
Definition parser.yy.cc:675
#define YY_READ_BUF_SIZE
Definition parser.yy.cc:866
#define YY_INPUT(buf, result, max_size)
Definition parser.yy.cc:886
#define ECHO
Definition parser.yy.cc:875
#define yy_flush_buffer
Definition parser.yy.cc:69
#define yyrealloc
Definition parser.yy.cc:243
#define YY_END_OF_BUFFER
Definition parser.yy.cc:592
#define YY_STATE_EOF(state)
Definition parser.yy.cc:378
#define YY_END_OF_BUFFER_CHAR
Definition parser.yy.cc:381
static const flex_int16_t yy_accept[117]
Definition parser.yy.cc:599
#define YY_FATAL_ERROR(msg)
Definition parser.yy.cc:926
#define yyterminate()
Definition parser.yy.cc:916
unsigned short int flex_uint16_t
Definition parser.yy.cc:290
static const flex_int32_t yy_rule_can_match_eol[32]
Definition parser.yy.cc:695
#define yy_create_buffer
Definition parser.yy.cc:33
flex_uint8_t YY_CHAR
Definition parser.yy.cc:570
#define YY_DO_BEFORE_ACTION
Definition parser.yy.cc:585
#define yy_delete_buffer
Definition parser.yy.cc:39
#define EOB_ACT_LAST_MATCH
Definition parser.yy.cc:413
#define yyget_in
Definition parser.yy.cc:159
size_t yy_size_t
Definition parser.yy.cc:408
#define YY_BUFFER_EOF_PENDING
Definition parser.yy.cc:507
#define yylineno
Definition parser.yy.cc:362
static const YY_CHAR yy_ec[256]
Definition parser.yy.cc:609
#define yycolumn
Definition parser.yy.cc:363
#define yyset_out
Definition parser.yy.cc:177
#define EOB_ACT_CONTINUE_SCAN
Definition parser.yy.cc:411
#define YY_DECL
Definition parser.yy.cc:939
#define YY_BUF_SIZE
Definition parser.yy.cc:392
static yy_state_type yy_get_previous_state(yyscan_t yyscanner)
#define YY_SC_TO_UI(c)
Definition parser.yy.cc:347
#define yyleng
Definition parser.yy.cc:360
#define yyset_in
Definition parser.yy.cc:165
Definition parser.yy.cc:450
int yy_n_chars
Definition parser.yy.cc:464
int yy_bs_column
Definition parser.yy.cc:486
int yy_buf_size
Definition parser.yy.cc:459
FILE * yy_input_file
Definition parser.yy.cc:451
char * yy_buf_pos
Definition parser.yy.cc:454
int yy_fill_buffer
Definition parser.yy.cc:491
int yy_buffer_status
Definition parser.yy.cc:493
int yy_is_our_buffer
Definition parser.yy.cc:470
int yy_bs_lineno
Definition parser.yy.cc:485
int yy_at_bol
Definition parser.yy.cc:483
int yy_is_interactive
Definition parser.yy.cc:477
char * yy_ch_buf
Definition parser.yy.cc:453
Definition parser.yy.cc:595
flex_int32_t yy_verify
Definition parser.yy.cc:596
flex_int32_t yy_nxt
Definition parser.yy.cc:597
Definition parser.yy.cc:744
FILE * yyin_r
Definition parser.yy.cc:750
int yy_did_buffer_switch_on_eof
Definition parser.yy.cc:760
int yy_start_stack_depth
Definition parser.yy.cc:762
FILE * yyout_r
Definition parser.yy.cc:750
size_t yy_buffer_stack_max
Definition parser.yy.cc:752
char * yy_last_accepting_cpos
Definition parser.yy.cc:765
YYSTYPE * yylval_r
Definition parser.yy.cc:774
int yy_flex_debug_r
Definition parser.yy.cc:768
int yy_more_flag
Definition parser.yy.cc:771
int yy_more_len
Definition parser.yy.cc:772
yy_state_type yy_last_accepting_state
Definition parser.yy.cc:764
int yy_start
Definition parser.yy.cc:759
int yy_n_chars
Definition parser.yy.cc:755
int yylineno_r
Definition parser.yy.cc:767
char * yy_c_buf_p
Definition parser.yy.cc:757
int yyleng_r
Definition parser.yy.cc:756
int yy_init
Definition parser.yy.cc:758
YY_BUFFER_STATE * yy_buffer_stack
Definition parser.yy.cc:753
int yy_start_stack_ptr
Definition parser.yy.cc:761
char yy_hold_char
Definition parser.yy.cc:754
char * yytext_r
Definition parser.yy.cc:770
YY_EXTRA_TYPE yyextra_r
Definition parser.yy.cc:746
int * yy_start_stack
Definition parser.yy.cc:763
size_t yy_buffer_stack_top
Definition parser.yy.cc:751