/
staskobzar
/
amiws
Обзор
Документация
Войти
/
staskobzar
/
amiws
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/lib/amipack_parser_queue.c
1 486 строк
23 KB
Stas Kobzar
Reworked parsing machine.
06 сен 2017, 05:14
06 сен 2017, 05:14
7ecf80f
Код
Авторство
О чём код?
/* Generated by re2c 1.0.2 */ #line 1 "src/lib/amipack_parser_queue.re" /** * amiws -- Library with functions for read/create AMI packets * Copyright (C) 2016, Stas Kobzar <staskobzar@modulis.ca> * * This file is part of amiws. * * amiws is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * amiws is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with amiws. If not, see <http://www.gnu.org/licenses/>. */ /** * @file amipack_parser_detect.c * @brief AMI (Asterisk Management Interface) Queue action output parser. * * @author Stas Kobzar <stas.kobzar@modulis.ca> */ #include "amipack.h" // types:re2c enum YYCONDTYPE { yycheader, yycmembers, yyccallers, }; static int get_num(const char *start, const char *end) { int num = 0; if (start >= end) return -1; for(const char *p = start; p < end; p++) { if ( *p < '0' || *p > '9' ) { return -1; } num = num * 10 + (*p - '0'); } return num; } // if string is number then convert to int and return // if string == unlimited then return 0 static int get_maxlen(const char *start, const char *end) { if(strncmp("unlimited", start, (end - start)) == 0) { return 0; } return get_num (start, end); } AMIQueue *amipack_parser_queue (const char *packet) { const char *cursor = packet; const char *YYCTXMARKER; int c = yycheader; // header's stags const char *name_s, *name_e, *calls_s, *calls_e, *max_s, *max_e, *stgy_s, *stgy_e, *hold_s, *hold_e, *tt_s, *tt_e, *w_s, *w_e, *c_s, *c_e, *a_s, *a_e, *sl_s, *sl_e, *slt_s, *slt_e; const char *yyt1; const char *yyt10; const char *yyt11; const char *yyt2; const char *yyt3; const char *yyt4; const char *yyt5; const char *yyt6; const char *yyt7; const char *yyt8; const char *yyt9; AMIQueue *queue = amipack_queue_init(); #line 78 "src/lib/amipack_parser_queue.c" { char yych; switch (c) { case yycheader: goto yyc_header; case yycmembers: goto yyc_members; case yyccallers: goto yyc_callers; } /* *********************************** */ yyc_header: yych = *cursor; switch (yych) { case ' ': goto yy5; default: yyt1 = cursor; goto yy3; } yy3: yych = *(packet = ++cursor); goto yy7; yy4: #line 96 "src/lib/amipack_parser_queue.re" { amipack_queue_destroy(queue); queue = NULL; goto done; } #line 105 "src/lib/amipack_parser_queue.c" yy5: ++cursor; goto yy4; yy6: yych = *++cursor; yy7: switch (yych) { case ' ': goto yy8; default: goto yy6; } yy8: yych = *++cursor; switch (yych) { case 'h': goto yy10; default: goto yy9; } yy9: cursor = packet; goto yy4; yy10: yych = *++cursor; switch (yych) { case 'a': goto yy11; default: goto yy9; } yy11: yych = *++cursor; switch (yych) { case 's': goto yy12; default: goto yy9; } yy12: yych = *++cursor; switch (yych) { case ' ': goto yy13; default: goto yy9; } yy13: yych = *++cursor; switch (yych) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': yyt2 = cursor; goto yy14; default: goto yy9; } yy14: yych = *++cursor; switch (yych) { case ' ': goto yy16; case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': goto yy14; default: goto yy9; } yy16: yych = *++cursor; switch (yych) { case 'c': goto yy17; default: goto yy9; } yy17: yych = *++cursor; switch (yych) { case 'a': goto yy18; default: goto yy9; } yy18: yych = *++cursor; switch (yych) { case 'l': goto yy19; default: goto yy9; } yy19: yych = *++cursor; switch (yych) { case 'l': goto yy20; default: goto yy9; } yy20: yych = *++cursor; switch (yych) { case 's': goto yy21; default: goto yy9; } yy21: yych = *++cursor; switch (yych) { case ' ': goto yy22; default: goto yy9; } yy22: yych = *++cursor; switch (yych) { case '(': goto yy23; default: goto yy9; } yy23: yych = *++cursor; switch (yych) { case 'm': goto yy24; default: goto yy9; } yy24: yych = *++cursor; switch (yych) { case 'a': goto yy25; default: goto yy9; } yy25: yych = *++cursor; switch (yych) { case 'x': goto yy26; default: goto yy9; } yy26: yych = *++cursor; switch (yych) { case ' ': goto yy27; default: goto yy9; } yy27: yych = *++cursor; switch (yych) { case ')': goto yy9; default: yyt3 = cursor; goto yy28; } yy28: yych = *++cursor; switch (yych) { case ')': goto yy30; default: goto yy28; } yy30: yych = *++cursor; switch (yych) { case ' ': goto yy31; default: goto yy9; } yy31: yych = *++cursor; switch (yych) { case 'i': goto yy32; default: goto yy9; } yy32: yych = *++cursor; switch (yych) { case 'n': goto yy33; default: goto yy9; } yy33: yych = *++cursor; switch (yych) { case ' ': goto yy34; default: goto yy9; } yy34: yych = *++cursor; switch (yych) { case '\'': goto yy35; default: goto yy9; } yy35: yych = *++cursor; switch (yych) { case '\'': goto yy9; default: yyt4 = cursor; goto yy36; } yy36: yych = *++cursor; switch (yych) { case '\'': goto yy38; default: goto yy36; } yy38: yych = *++cursor; switch (yych) { case ' ': goto yy39; default: goto yy9; } yy39: yych = *++cursor; switch (yych) { case 's': goto yy40; default: goto yy9; } yy40: yych = *++cursor; switch (yych) { case 't': goto yy41; default: goto yy9; } yy41: yych = *++cursor; switch (yych) { case 'r': goto yy42; default: goto yy9; } yy42: yych = *++cursor; switch (yych) { case 'a': goto yy43; default: goto yy9; } yy43: yych = *++cursor; switch (yych) { case 't': goto yy44; default: goto yy9; } yy44: yych = *++cursor; switch (yych) { case 'e': goto yy45; default: goto yy9; } yy45: yych = *++cursor; switch (yych) { case 'g': goto yy46; default: goto yy9; } yy46: yych = *++cursor; switch (yych) { case 'y': goto yy47; default: goto yy9; } yy47: yych = *++cursor; switch (yych) { case ' ': goto yy48; default: goto yy9; } yy48: yych = *++cursor; switch (yych) { case '(': goto yy49; default: goto yy9; } yy49: yych = *++cursor; switch (yych) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': yyt5 = cursor; goto yy50; default: goto yy9; } yy50: yych = *++cursor; switch (yych) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': goto yy50; case 's': goto yy52; default: goto yy9; } yy52: yych = *++cursor; switch (yych) { case ' ': goto yy53; default: goto yy9; } yy53: yych = *++cursor; switch (yych) { case 'h': goto yy54; default: goto yy9; } yy54: yych = *++cursor; switch (yych) { case 'o': goto yy55; default: goto yy9; } yy55: yych = *++cursor; switch (yych) { case 'l': goto yy56; default: goto yy9; } yy56: yych = *++cursor; switch (yych) { case 'd': goto yy57; default: goto yy9; } yy57: yych = *++cursor; switch (yych) { case 't': goto yy58; default: goto yy9; } yy58: yych = *++cursor; switch (yych) { case 'i': goto yy59; default: goto yy9; } yy59: yych = *++cursor; switch (yych) { case 'm': goto yy60; default: goto yy9; } yy60: yych = *++cursor; switch (yych) { case 'e': goto yy61; default: goto yy9; } yy61: yych = *++cursor; switch (yych) { case ',': goto yy62; default: goto yy9; } yy62: yych = *++cursor; switch (yych) { case ' ': goto yy63; default: goto yy9; } yy63: yych = *++cursor; switch (yych) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': yyt6 = cursor; goto yy64; default: goto yy9; } yy64: yych = *++cursor; switch (yych) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': goto yy64; case 's': goto yy66; default: goto yy9; } yy66: yych = *++cursor; switch (yych) { case ' ': goto yy67; default: goto yy9; } yy67: yych = *++cursor; switch (yych) { case 't': goto yy68; default: goto yy9; } yy68: yych = *++cursor; switch (yych) { case 'a': goto yy69; default: goto yy9; } yy69: yych = *++cursor; switch (yych) { case 'l': goto yy70; default: goto yy9; } yy70: yych = *++cursor; switch (yych) { case 'k': goto yy71; default: goto yy9; } yy71: yych = *++cursor; switch (yych) { case 't': goto yy72; default: goto yy9; } yy72: yych = *++cursor; switch (yych) { case 'i': goto yy73; default: goto yy9; } yy73: yych = *++cursor; switch (yych) { case 'm': goto yy74; default: goto yy9; } yy74: yych = *++cursor; switch (yych) { case 'e': goto yy75; default: goto yy9; } yy75: yych = *++cursor; switch (yych) { case ')': goto yy76; default: goto yy9; } yy76: yych = *++cursor; switch (yych) { case ',': goto yy77; default: goto yy9; } yy77: yych = *++cursor; switch (yych) { case ' ': goto yy78; default: goto yy9; } yy78: yych = *++cursor; switch (yych) { case 'W': goto yy79; default: goto yy9; } yy79: yych = *++cursor; switch (yych) { case ':': goto yy80; default: goto yy9; } yy80: yych = *++cursor; switch (yych) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': yyt7 = cursor; goto yy81; default: goto yy9; } yy81: yych = *++cursor; switch (yych) { case ',': goto yy83; case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': goto yy81; default: goto yy9; } yy83: yych = *++cursor; switch (yych) { case ' ': goto yy84; default: goto yy9; } yy84: yych = *++cursor; switch (yych) { case 'C': goto yy85; default: goto yy9; } yy85: yych = *++cursor; switch (yych) { case ':': goto yy86; default: goto yy9; } yy86: yych = *++cursor; switch (yych) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': yyt8 = cursor; goto yy87; default: goto yy9; } yy87: yych = *++cursor; switch (yych) { case ',': goto yy89; case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': goto yy87; default: goto yy9; } yy89: yych = *++cursor; switch (yych) { case ' ': goto yy90; default: goto yy9; } yy90: yych = *++cursor; switch (yych) { case 'A': goto yy91; default: goto yy9; } yy91: yych = *++cursor; switch (yych) { case ':': goto yy92; default: goto yy9; } yy92: yych = *++cursor; switch (yych) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': yyt9 = cursor; goto yy93; default: goto yy9; } yy93: yych = *++cursor; switch (yych) { case ',': goto yy95; case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': goto yy93; default: goto yy9; } yy95: yych = *++cursor; switch (yych) { case ' ': goto yy96; default: goto yy9; } yy96: yych = *++cursor; switch (yych) { case 'S': goto yy97; default: goto yy9; } yy97: yych = *++cursor; switch (yych) { case 'L': goto yy98; default: goto yy9; } yy98: yych = *++cursor; switch (yych) { case ':': goto yy99; default: goto yy9; } yy99: yych = *++cursor; switch (yych) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': yyt10 = cursor; goto yy100; default: goto yy9; } yy100: yych = *++cursor; switch (yych) { case '.': goto yy102; case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': goto yy100; default: goto yy9; } yy102: yych = *++cursor; switch (yych) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': goto yy103; default: goto yy9; } yy103: yych = *++cursor; switch (yych) { case '%': goto yy105; case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': goto yy103; default: goto yy9; } yy105: yych = *++cursor; switch (yych) { case ' ': goto yy106; default: goto yy9; } yy106: yych = *++cursor; switch (yych) { case 'w': goto yy107; default: goto yy9; } yy107: yych = *++cursor; switch (yych) { case 'i': goto yy108; default: goto yy9; } yy108: yych = *++cursor; switch (yych) { case 't': goto yy109; default: goto yy9; } yy109: yych = *++cursor; switch (yych) { case 'h': goto yy110; default: goto yy9; } yy110: yych = *++cursor; switch (yych) { case 'i': goto yy111; default: goto yy9; } yy111: yych = *++cursor; switch (yych) { case 'n': goto yy112; default: goto yy9; } yy112: yych = *++cursor; switch (yych) { case ' ': goto yy113; default: goto yy9; } yy113: yych = *++cursor; switch (yych) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': yyt11 = cursor; goto yy114; default: goto yy9; } yy114: yych = *++cursor; switch (yych) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': goto yy114; case 's': goto yy116; default: goto yy9; } yy116: yych = *++cursor; switch (yych) { case '\r': goto yy117; default: goto yy9; } yy117: yych = *++cursor; switch (yych) { case '\n': goto yy118; default: goto yy9; } yy118: ++cursor; name_s = yyt1; calls_s = yyt2; max_s = yyt3; stgy_s = yyt4; hold_s = yyt5; tt_s = yyt6; w_s = yyt7; c_s = yyt8; a_s = yyt9; sl_s = yyt10; slt_s = yyt11; name_e = yyt2 - 5; calls_e = yyt3 - 12; max_e = yyt4 - 6; stgy_e = yyt5 - 12; hold_e = yyt6 - 12; tt_e = yyt7 - 15; w_e = yyt8 - 4; c_e = yyt9 - 4; a_e = yyt10 - 5; sl_e = yyt11 - 8; slt_e = cursor - 3; #line 102 "src/lib/amipack_parser_queue.re" { int len = (int)(name_e - name_s); queue->name = strndup(name_s, len); queue->calls = get_num(calls_s, calls_e); queue->maxlen = get_maxlen(max_s, max_e); queue->strategy = strndup(stgy_s, (int)(stgy_e - stgy_s)); queue->holdtime = get_num(hold_s, hold_e); queue->talktime = get_num(tt_s, tt_e); queue->weight = get_num(w_s, w_e); queue->callscompleted = get_num(c_s, c_e); queue->callsabandoned = get_num(a_s, a_e); queue->sl = strndup(sl_s, (int)(sl_e - sl_s)); queue->sl_sec = get_num(slt_s, slt_e); goto yyc_members; } #line 938 "src/lib/amipack_parser_queue.c" /* *********************************** */ yyc_members: yych = *cursor; switch (yych) { case ' ': goto yy124; default: goto yy122; } yy122: ++cursor; yy123: #line 96 "src/lib/amipack_parser_queue.re" { amipack_queue_destroy(queue); queue = NULL; goto done; } #line 955 "src/lib/amipack_parser_queue.c" yy124: yych = *(packet = ++cursor); switch (yych) { case ' ': goto yy125; default: goto yy123; } yy125: yych = *++cursor; switch (yych) { case ' ': goto yy127; default: goto yy126; } yy126: cursor = packet; goto yy123; yy127: yych = *++cursor; switch (yych) { case ' ': goto yy128; case 'C': goto yy129; case 'M': goto yy130; case 'N': goto yy131; default: goto yy126; } yy128: yych = *++cursor; switch (yych) { case ' ': goto yy132; default: goto yy126; } yy129: yych = *++cursor; switch (yych) { case 'a': goto yy133; default: goto yy126; } yy130: yych = *++cursor; switch (yych) { case 'e': goto yy134; default: goto yy126; } yy131: yych = *++cursor; switch (yych) { case 'o': goto yy135; default: goto yy126; } yy132: yych = *++cursor; switch (yych) { case ' ': goto yy136; default: goto yy126; } yy133: yych = *++cursor; switch (yych) { case 'l': goto yy137; default: goto yy126; } yy134: yych = *++cursor; switch (yych) { case 'm': goto yy138; default: goto yy126; } yy135: yych = *++cursor; switch (yych) { case ' ': goto yy139; default: goto yy126; } yy136: yych = *++cursor; switch (yych) { case '\r': goto yy126; default: goto yy141; } yy137: yych = *++cursor; switch (yych) { case 'l': goto yy142; default: goto yy126; } yy138: yych = *++cursor; switch (yych) { case 'b': goto yy143; default: goto yy126; } yy139: yych = *++cursor; switch (yych) { case 'C': goto yy144; case 'M': goto yy145; default: goto yy126; } yy140: yych = *++cursor; yy141: switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\t': case '\n': case '\v': case '\f': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy126; case '\r': goto yy146; default: goto yy140; } yy142: yych = *++cursor; switch (yych) { case 'e': goto yy147; default: goto yy126; } yy143: yych = *++cursor; switch (yych) { case 'e': goto yy148; default: goto yy126; } yy144: yych = *++cursor; switch (yych) { case 'a': goto yy149; default: goto yy126; } yy145: yych = *++cursor; switch (yych) { case 'e': goto yy150; default: goto yy126; } yy146: yych = *++cursor; switch (yych) { case '\n': goto yy151; default: goto yy126; } yy147: yych = *++cursor; switch (yych) { case 'r': goto yy153; default: goto yy126; } yy148: yych = *++cursor; switch (yych) { case 'r': goto yy154; default: goto yy126; } yy149: yych = *++cursor; switch (yych) { case 'l': goto yy155; default: goto yy126; } yy150: yych = *++cursor; switch (yych) { case 'm': goto yy156; default: goto yy126; } yy151: ++cursor; #line 126 "src/lib/amipack_parser_queue.re" { queue->members_size++; goto yyc_members; } #line 1152 "src/lib/amipack_parser_queue.c" yy153: yych = *++cursor; switch (yych) { case 's': goto yy157; default: goto yy126; } yy154: yych = *++cursor; switch (yych) { case 's': goto yy158; default: goto yy126; } yy155: yych = *++cursor; switch (yych) { case 'l': goto yy159; default: goto yy126; } yy156: yych = *++cursor; switch (yych) { case 'b': goto yy160; default: goto yy126; } yy157: yych = *++cursor; switch (yych) { case ':': goto yy161; default: goto yy126; } yy158: yych = *++cursor; switch (yych) { case ':': goto yy162; default: goto yy126; } yy159: yych = *++cursor; switch (yych) { case 'e': goto yy163; default: goto yy126; } yy160: yych = *++cursor; switch (yych) { case 'e': goto yy164; default: goto yy126; } yy161: yych = *++cursor; switch (yych) { case ' ': goto yy165; default: goto yy126; } yy162: yych = *++cursor; switch (yych) { case ' ': goto yy166; default: goto yy126; } yy163: yych = *++cursor; switch (yych) { case 'r': goto yy167; default: goto yy126; } yy164: yych = *++cursor; switch (yych) { case 'r': goto yy168; default: goto yy126; } yy165: yych = *++cursor; switch (yych) { case '\r': goto yy169; default: goto yy126; } yy166: yych = *++cursor; switch (yych) { case '\r': goto yy170; default: goto yy126; } yy167: yych = *++cursor; switch (yych) { case 's': goto yy171; default: goto yy126; } yy168: yych = *++cursor; switch (yych) { case 's': goto yy172; default: goto yy126; } yy169: yych = *++cursor; switch (yych) { case '\n': goto yy173; default: goto yy126; } yy170: yych = *++cursor; switch (yych) { case '\n': goto yy175; default: goto yy126; } yy171: yych = *++cursor; switch (yych) { case '\r': goto yy177; default: goto yy126; } yy172: yych = *++cursor; switch (yych) { case '\r': goto yy178; default: goto yy126; } yy173: ++cursor; #line 135 "src/lib/amipack_parser_queue.re" { goto yyc_callers; } #line 1279 "src/lib/amipack_parser_queue.c" yy175: ++cursor; #line 122 "src/lib/amipack_parser_queue.re" { goto yyc_members; } #line 1286 "src/lib/amipack_parser_queue.c" yy177: yych = *++cursor; switch (yych) { case '\n': goto yy179; default: goto yy126; } yy178: yych = *++cursor; switch (yych) { case '\n': goto yy180; default: goto yy126; } yy179: yych = *++cursor; switch (yych) { case '\r': goto yy182; default: goto yy126; } yy180: ++cursor; #line 118 "src/lib/amipack_parser_queue.re" { goto yyc_members; } #line 1311 "src/lib/amipack_parser_queue.c" yy182: yych = *++cursor; switch (yych) { case '\n': goto yy183; default: goto yy126; } yy183: ++cursor; #line 131 "src/lib/amipack_parser_queue.re" { goto done; } #line 1324 "src/lib/amipack_parser_queue.c" /* *********************************** */ yyc_callers: yych = *cursor; switch (yych) { case '\r': goto yy189; case ' ': goto yy190; default: goto yy187; } yy187: ++cursor; yy188: #line 96 "src/lib/amipack_parser_queue.re" { amipack_queue_destroy(queue); queue = NULL; goto done; } #line 1342 "src/lib/amipack_parser_queue.c" yy189: yych = *++cursor; switch (yych) { case '\n': goto yy191; default: goto yy188; } yy190: yych = *(packet = ++cursor); switch (yych) { case ' ': goto yy193; default: goto yy188; } yy191: ++cursor; #line 144 "src/lib/amipack_parser_queue.re" { goto done; } #line 1359 "src/lib/amipack_parser_queue.c" yy193: yych = *++cursor; switch (yych) { case ' ': goto yy195; default: goto yy194; } yy194: cursor = packet; goto yy188; yy195: yych = *++cursor; switch (yych) { case ' ': goto yy196; default: goto yy194; } yy196: yych = *++cursor; switch (yych) { case ' ': goto yy197; default: goto yy194; } yy197: yych = *++cursor; switch (yych) { case ' ': goto yy198; default: goto yy194; } yy198: yych = *++cursor; switch (yych) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': goto yy199; default: goto yy194; } yy199: yych = *++cursor; switch (yych) { case '.': goto yy201; case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': goto yy199; default: goto yy194; } yy201: yych = *++cursor; switch (yych) { case ' ': goto yy202; default: goto yy194; } yy202: yych = *++cursor; switch (yych) { case '\r': goto yy194; default: goto yy204; } yy203: yych = *++cursor; yy204: switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\t': case '\n': case '\v': case '\f': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy194; case '\r': goto yy205; default: goto yy203; } yy205: yych = *++cursor; switch (yych) { case '\n': goto yy206; default: goto yy194; } yy206: ++cursor; #line 139 "src/lib/amipack_parser_queue.re" { queue->callers_size++; goto yyc_callers; } #line 1481 "src/lib/amipack_parser_queue.c" } #line 146 "src/lib/amipack_parser_queue.re" done: return queue; }