/*
* Copyright (C) Yichun Zhang (agentzh)
*
* WARNING: DO NOT EVER EDIT THIS FILE!!
*
* This file was automatically generated by the re.pl script of sregex's
* "dfa-multi-re" git branch.
*/
#include "ngx_http_lua_lex.h"
#include <stdlib.h>
#include <stdint.h>
#include <stdio.h>
#include <ctype.h>
#include <errno.h>
#include <string.h>
#if __GNUC__ > 3
# define likely(x) __builtin_expect((x),1)
# define unlikely(x) __builtin_expect((x),0)
#else
# define likely(x) (x)
# define unlikely(x) (x)
#endif
#ifndef u_char
#define u_char unsigned char
#endif
enum {
NO_MATCH = -1,
};
/*
* ngx_http_lua_lex: the "ovec" array should be allocated by the caller with at
* least 2 elements.
*/
int
ngx_http_lua_lex(const u_char *const s, size_t len, int *const ovec)
{
unsigned i = 0;
int matched_0 = -1;
int matched_1 = -1;
int matched_id = NO_MATCH; /* (pending) matched regex ID */
int c;
int caps0_0 = -1;
int caps0_10 = -1;
int caps0_12 = -1;
int caps0_14 = -1;
int caps0_2 = -1;
int caps0_4 = -1;
int caps0_6 = -1;
int caps0_8 = -1;
int caps1_0 = -1;
int caps1_10 = -1;
int caps1_12 = -1;
int caps1_14 = -1;
int caps1_2 = -1;
int caps1_4 = -1;
int caps1_6 = -1;
int caps1_8 = -1;
int caps2_0 = -1;
int caps2_10 = -1;
int caps2_2 = -1;
int caps2_4 = -1;
int caps2_6 = -1;
int caps2_8 = -1;
int caps3_10 = -1;
{ /* DFA node {0} 0 */
if (unlikely(i >= len)) {
i++;
goto st0_error;
}
c = s[i];
i++;
switch (c) {
case 34: {
/* transfer caps from row 0 to row 1 */
/* capture stores */
caps0_12 = i - 1;
goto st2;
break;
}
case 39: {
/* transfer caps from row 0 to row 1 */
/* capture stores */
caps0_14 = i - 1;
goto st3;
break;
}
case 45: {
/* transfer caps from row 0 to row 1 */
/* transfer caps from row 0 to row 2 */
/* capture stores */
caps0_6 = i - 1;
caps1_10 = i - 1;
goto st4;
break;
}
case 91: {
/* transfer caps from row 0 to row 1 */
/* capture stores */
caps0_4 = i - 1;
goto st5;
break;
}
case 93: {
/* transfer caps from row 0 to row 1 */
/* capture stores */
caps0_8 = i - 1;
goto st6;
break;
}
case 123: {
/* transfer caps from row 0 to row 1 */
/* capture stores */
caps0_0 = i - 1;
goto st7;
break;
}
case 125: {
/* transfer caps from row 0 to row 1 */
/* capture stores */
caps0_2 = i - 1;
goto st8;
break;
}
default:
break;
}
/* (c >= 0 && c <= 33)
* || (c >= 35 && c <= 38)
* || (c >= 40 && c <= 44)
* || (c >= 46 && c <= 90)
* || (c == 92)
* || (c >= 94 && c <= 122)
* || (c == 124)
* || (c >= 126 && c <= 255)
*/
goto st1;
} /* end state */
goto st0_error;
st1: { /* DFA node {1} 1 */
if (unlikely(i >= len)) {
i++;
goto st1_error;
}
c = s[i];
i++;
switch (c) {
case 34: {
/* transfer caps from row 0 to row 1 */
/* capture stores */
caps0_12 = i - 1;
goto st2;
break;
}
case 39: {
/* transfer caps from row 0 to row 1 */
/* capture stores */
caps0_14 = i - 1;
goto st3;
break;
}
case 45: {
/* transfer caps from row 0 to row 1 */
/* transfer caps from row 0 to row 2 */
/* capture stores */
caps0_6 = i - 1;
caps1_10 = i - 1;
goto st4;
break;
}
case 91: {
/* transfer caps from row 0 to row 1 */
/* capture stores */
caps0_4 = i - 1;
goto st5;
break;
}
case 93: {
/* transfer caps from row 0 to row 1 */
/* capture stores */
caps0_8 = i - 1;
goto st6;
break;
}
case 123: {
/* transfer caps from row 0 to row 1 */
/* capture stores */
caps0_0 = i - 1;
goto st7;
break;
}
case 125: {
/* transfer caps from row 0 to row 1 */
/* capture stores */
caps0_2 = i - 1;
goto st8;
break;
}
default:
break;
}
/* (c >= 0 && c <= 33)
* || (c >= 35 && c <= 38)
* || (c >= 40 && c <= 44)
* || (c >= 46 && c <= 90)
* || (c == 92)
* || (c >= 94 && c <= 122)
* || (c == 124)
* || (c >= 126 && c <= 255)
*/
goto st1;
} /* end state */
goto st1_error;
st2: { /* DFA node {59,1} 2 */
if (unlikely(i >= len)) {
i++;
goto st2_error;
}
c = s[i];
i++;
switch (c) {
case 10: {
/* transfer caps from row 1 to row 0 */
goto st1;
break;
}
case 34: {
/* transfer caps from row 1 to row 2 */
/* capture stores */
caps1_12 = i - 1;
goto st10;
break;
}
case 39: {
/* transfer caps from row 1 to row 2 */
/* capture stores */
caps1_14 = i - 1;
goto st11;
break;
}
case 45: {
/* transfer caps from row 1 to row 2 */
/* transfer caps from row 1 to row 3 */
/* capture stores */
caps1_6 = i - 1;
caps2_10 = i - 1;
goto st12;
break;
}
case 91: {
/* transfer caps from row 1 to row 2 */
/* capture stores */
caps1_4 = i - 1;
goto st13;
break;
}
case 92: {
goto st14;
break;
}
case 93: {
/* transfer caps from row 1 to row 2 */
/* capture stores */
caps1_8 = i - 1;
goto st15;
break;
}
case 123: {
/* transfer caps from row 1 to row 2 */
/* capture stores */
caps1_0 = i - 1;
goto st16;
break;
}
case 125: {
/* transfer caps from row 1 to row 2 */
/* capture stores */
caps1_2 = i - 1;
goto st17;
break;
}
default:
break;
}
/* (c >= 0 && c <= 9)
* || (c >= 11 && c <= 33)
* || (c >= 35 && c <= 38)
* || (c >= 40 && c <= 44)
* || (c >= 46 && c <= 90)
* || (c >= 94 && c <= 122)
* || (c == 124)
* || (c >= 126 && c <= 255)
*/
goto st9;
} /* end state */
goto st2_error;
st3: { /* DFA node {72,1} 3 */
if (unlikely(i >= len)) {
i++;
goto st3_error;
}
c = s[i];
i++;
switch (c) {
case 10: {
/* transfer caps from row 1 to row 0 */
goto st1;
break;
}
case 34: {
/* transfer caps from row 1 to row 2 */
/* capture stores */
caps1_12 = i - 1;
goto st19;
break;
}
case 39: {
/* transfer caps from row 1 to row 2 */
/* capture stores */
caps1_14 = i - 1;
goto st20;
break;
}
case 45: {
/* transfer caps from row 1 to row 2 */
/* transfer caps from row 1 to row 3 */
/* capture stores */
caps1_6 = i - 1;
caps2_10 = i - 1;
goto st21;
break;
}
case 91: {
/* transfer caps from row 1 to row 2 */
/* capture stores */
caps1_4 = i - 1;
goto st22;
break;
}
case 92: {
goto st23;
break;
}
case 93: {
/* transfer caps from row 1 to row 2 */
/* capture stores */
caps1_8 = i - 1;
goto st24;
break;
}
case 123: {
/* transfer caps from row 1 to row 2 */
/* capture stores */
caps1_0 = i - 1;
goto st25;