Skip to content
Snippets Groups Projects
Commit 07c3e9b7 authored by Daniel Salzman's avatar Daniel Salzman
Browse files

wip

parent 274e6add
No related tags found
No related merge requests found
Pipeline #74090 failed
......@@ -27,111 +27,107 @@
static const char _yparser_actions[] = {
0, 1, 0, 1, 1, 1, 2, 1,
3, 1, 4, 1, 6, 1, 8, 1,
9, 1, 10, 1, 11, 1, 12, 1,
15, 2, 1, 0, 2, 1, 2, 2,
1, 15, 2, 2, 0, 2, 3, 4,
2, 5, 4, 2, 6, 0, 2, 7,
8, 2, 12, 13, 2, 14, 12, 3,
1, 2, 0, 3, 1, 7, 8, 3,
1, 12, 13, 3, 1, 14, 12, 3,
2, 7, 8, 3, 2, 12, 13, 3,
2, 14, 12, 4, 1, 2, 7, 8,
4, 1, 2, 12, 13, 4, 1, 2,
14, 12
3, 1, 4, 1, 5, 1, 7, 1,
8, 1, 9, 1, 10, 1, 11, 1,
14, 2, 1, 0, 2, 1, 2, 2,
1, 14, 2, 2, 0, 2, 3, 4,
2, 5, 0, 2, 6, 7, 2, 11,
12, 2, 13, 11, 3, 1, 2, 0,
3, 1, 6, 7, 3, 1, 11, 12,
3, 1, 13, 11, 3, 2, 6, 7,
3, 2, 11, 12, 3, 2, 13, 11,
4, 1, 2, 6, 7, 4, 1, 2,
11, 12, 4, 1, 2, 13, 11
};
static const unsigned char _yparser_key_offsets[] = {
0, 0, 15, 17, 29, 31, 34, 46,
47, 58, 70, 72, 73, 83, 94, 98,
100, 103, 107, 110, 113, 126, 136, 145,
148, 151, 154, 158, 161, 164, 179, 194,
209
0, 0, 14, 16, 27, 29, 32, 43,
44, 54, 65, 67, 68, 78, 89, 93,
95, 97, 101, 104, 106, 119, 129, 138,
141, 144, 146, 150, 153, 155, 169, 183,
197
};
static const char _yparser_trans_keys[] = {
10, 13, 32, 35, 42, 45, 46, 92,
95, 48, 57, 65, 90, 97, 122, 10,
13, 32, 58, 92, 95, 45, 46, 48,
57, 65, 90, 97, 122, 32, 58, 10,
13, 32, 32, 58, 92, 95, 45, 46,
48, 57, 65, 90, 97, 122, 32, 32,
42, 46, 92, 95, 48, 57, 65, 90,
97, 122, 32, 58, 92, 95, 45, 46,
48, 57, 65, 90, 97, 122, 32, 58,
32, 32, 33, 34, 92, 36, 43, 45,
90, 94, 126, 10, 13, 32, 33, 92,
10, 13, 32, 35, 42, 45, 92, 95,
46, 57, 65, 90, 97, 122, 10, 13,
32, 42, 58, 92, 95, 45, 57, 65,
90, 97, 122, 32, 58, 10, 13, 32,
32, 42, 58, 92, 95, 45, 57, 65,
90, 97, 122, 32, 32, 42, 92, 95,
46, 57, 65, 90, 97, 122, 32, 42,
58, 92, 95, 45, 57, 65, 90, 97,
122, 32, 58, 32, 32, 33, 34, 92,
36, 43, 45, 90, 94, 126, 10, 13,
32, 35, 10, 13, 34, 32, 126, 34,
92, 32, 126, 10, 13, 32, 34, 32,
126, 10, 13, 32, 34, 35, 91, 92,
33, 43, 45, 90, 94, 126, 32, 33,
34, 92, 36, 43, 45, 90, 94, 126,
32, 33, 44, 92, 93, 36, 90, 94,
126, 32, 44, 93, 10, 13, 32, 34,
32, 33, 92, 36, 43, 45, 90, 94,
126, 10, 13, 32, 35, 10, 13, 32,
126, 34, 92, 32, 126, 10, 13, 32,
32, 126, 10, 13, 32, 34, 35, 91,
92, 33, 43, 45, 90, 94, 126, 32,
33, 34, 92, 36, 43, 45, 90, 94,
126, 32, 33, 44, 92, 93, 36, 90,
94, 126, 32, 44, 93, 10, 13, 32,
32, 126, 34, 92, 32, 126, 32, 44,
93, 34, 32, 126, 10, 13, 32, 35,
42, 45, 46, 92, 95, 48, 57, 65,
90, 97, 122, 10, 13, 32, 35, 42,
45, 46, 92, 95, 48, 57, 65, 90,
97, 122, 10, 13, 32, 35, 42, 45,
46, 92, 95, 48, 57, 65, 90, 97,
122, 10, 13, 32, 35, 42, 45, 46,
92, 95, 48, 57, 65, 90, 97, 122,
0
93, 32, 126, 10, 13, 32, 35, 42,
45, 92, 95, 46, 57, 65, 90, 97,
122, 10, 13, 32, 35, 42, 45, 92,
95, 46, 57, 65, 90, 97, 122, 10,
13, 32, 35, 42, 45, 92, 95, 46,
57, 65, 90, 97, 122, 10, 13, 32,
35, 42, 45, 92, 95, 46, 57, 65,
90, 97, 122, 0
};
static const char _yparser_single_lengths[] = {
0, 9, 2, 4, 2, 3, 4, 1,
5, 4, 2, 1, 4, 5, 4, 2,
1, 2, 3, 1, 7, 4, 5, 3,
3, 1, 2, 3, 1, 9, 9, 9,
9
0, 8, 2, 5, 2, 3, 5, 1,
4, 5, 2, 1, 4, 5, 4, 2,
0, 2, 3, 0, 7, 4, 5, 3,
3, 0, 2, 3, 0, 8, 8, 8,
8
};
static const char _yparser_range_lengths[] = {
0, 3, 0, 4, 0, 0, 4, 0,
3, 4, 0, 0, 3, 3, 0, 0,
0, 3, 0, 3, 0, 0, 3, 0,
3, 3, 0, 0, 3, 3, 0, 0,
1, 1, 0, 1, 3, 3, 2, 0,
0, 1, 1, 0, 1, 3, 3, 3,
3
};
static const unsigned char _yparser_index_offsets[] = {
0, 0, 13, 16, 25, 28, 32, 41,
43, 52, 61, 64, 66, 74, 83, 88,
91, 94, 98, 102, 105, 116, 124, 132,
136, 140, 143, 147, 151, 154, 167, 180,
193
0, 0, 12, 15, 24, 27, 31, 40,
42, 50, 59, 62, 64, 72, 81, 86,
89, 91, 95, 99, 101, 112, 120, 128,
132, 136, 138, 142, 146, 148, 160, 172,
184
};
static const char _yparser_indicies[] = {
1, 2, 3, 4, 5, 6, 5, 5,
5, 5, 5, 5, 0, 1, 2, 4,
7, 9, 8, 8, 8, 8, 8, 8,
0, 10, 11, 0, 12, 13, 14, 0,
15, 17, 16, 16, 16, 16, 16, 16,
0, 18, 0, 18, 19, 19, 19, 19,
19, 19, 19, 0, 20, 22, 21, 21,
21, 21, 21, 21, 0, 23, 24, 0,
25, 0, 25, 26, 27, 28, 26, 26,
26, 0, 29, 30, 31, 32, 33, 32,
32, 32, 0, 12, 13, 34, 35, 0,
12, 13, 35, 36, 32, 0, 38, 39,
37, 0, 29, 30, 31, 0, 40, 37,
0, 12, 13, 14, 27, 35, 41, 28,
26, 26, 26, 0, 41, 42, 43, 44,
42, 42, 42, 0, 45, 46, 47, 48,
49, 46, 46, 0, 50, 41, 51, 0,
12, 13, 34, 0, 52, 46, 0, 54,
55, 53, 0, 45, 47, 49, 0, 56,
53, 0, 1, 2, 3, 4, 57, 6,
57, 57, 57, 57, 57, 57, 0, 59,
60, 61, 62, 63, 64, 63, 63, 63,
63, 63, 63, 58, 65, 66, 67, 68,
69, 70, 69, 69, 69, 69, 69, 69,
0, 71, 72, 73, 74, 75, 76, 75,
75, 75, 75, 75, 75, 58, 0
5, 5, 5, 0, 1, 2, 4, 7,
8, 9, 8, 8, 8, 8, 8, 0,
10, 11, 0, 12, 13, 14, 0, 15,
16, 17, 16, 16, 16, 16, 16, 0,
18, 0, 18, 19, 19, 19, 19, 19,
19, 0, 20, 21, 22, 21, 21, 21,
21, 21, 0, 23, 24, 0, 25, 0,
25, 26, 27, 28, 26, 26, 26, 0,
29, 30, 31, 32, 33, 32, 32, 32,
0, 12, 13, 34, 35, 0, 12, 13,
35, 32, 0, 37, 38, 36, 0, 29,
30, 31, 0, 36, 0, 12, 13, 14,
27, 35, 39, 28, 26, 26, 26, 0,
39, 40, 41, 42, 40, 40, 40, 0,
43, 44, 45, 46, 47, 44, 44, 0,
48, 39, 49, 0, 12, 13, 34, 0,
44, 0, 51, 52, 50, 0, 43, 45,
47, 0, 50, 0, 1, 2, 3, 4,
53, 6, 53, 53, 53, 53, 53, 0,
55, 56, 57, 58, 59, 60, 59, 59,
59, 59, 59, 54, 61, 62, 63, 64,
65, 66, 65, 65, 65, 65, 65, 0,
67, 68, 69, 70, 71, 72, 71, 71,
71, 71, 71, 54, 0
};
static const char _yparser_trans_targs[] = {
......@@ -139,25 +135,25 @@ static const char _yparser_trans_targs[] = {
3, 5, 4, 5, 32, 29, 20, 4,
6, 5, 8, 9, 10, 9, 11, 10,
11, 12, 13, 17, 16, 32, 29, 14,
13, 16, 14, 15, 13, 17, 18, 19,
17, 21, 22, 26, 25, 23, 22, 21,
25, 24, 23, 24, 22, 26, 27, 28,
26, 6, 0, 30, 31, 1, 2, 6,
7, 30, 31, 1, 2, 6, 7, 30,
31, 1, 2, 6, 7
13, 16, 14, 15, 17, 18, 19, 21,
22, 26, 25, 23, 22, 21, 25, 24,
23, 24, 26, 27, 28, 6, 0, 30,
31, 1, 2, 6, 7, 30, 31, 1,
2, 6, 7, 30, 31, 1, 2, 6,
7
};
static const char _yparser_trans_actions[] = {
23, 1, 0, 49, 0, 46, 52, 17,
23, 1, 0, 46, 0, 43, 49, 17,
13, 17, 0, 0, 1, 0, 0, 15,
13, 15, 21, 46, 19, 13, 19, 0,
0, 0, 37, 7, 37, 43, 11, 11,
9, 9, 0, 0, 40, 9, 0, 9,
40, 0, 37, 7, 37, 11, 9, 11,
9, 11, 0, 0, 40, 9, 0, 9,
40, 46, 31, 55, 28, 88, 28, 83,
93, 34, 5, 75, 5, 71, 79, 25,
3, 63, 3, 59, 67
13, 15, 21, 43, 19, 13, 19, 0,
0, 0, 37, 7, 37, 40, 11, 11,
9, 9, 0, 0, 9, 0, 9, 0,
37, 7, 37, 11, 9, 11, 9, 11,
0, 0, 9, 0, 9, 43, 31, 52,
28, 85, 28, 80, 90, 34, 5, 72,
5, 68, 76, 25, 3, 60, 3, 56,
64
};
static const char _yparser_eof_actions[] = {
......@@ -309,11 +305,6 @@ _match:
}
break;
case 5:
{
parser->data_len--;
}
break;
case 6:
{
// Return if a value parsed.
parser->data[parser->data_len] = '\0';
......@@ -322,7 +313,7 @@ _match:
{p++; goto _out; }
}
break;
case 7:
case 6:
{
if (indent > 0 && parser->indent > 0 &&
indent != parser->indent) {
......@@ -334,7 +325,7 @@ _match:
parser->event = YP_ENULL;
}
break;
case 8:
case 7:
{
if (parser->key_len >= sizeof(parser->key) - 1) {
return KNOT_ESPACE;
......@@ -342,7 +333,7 @@ _match:
parser->key[parser->key_len++] = (*p);
}
break;
case 9:
case 8:
{
parser->key[parser->key_len] = '\0';
parser->indent = 0;
......@@ -350,14 +341,14 @@ _match:
parser->event = YP_EKEY0;
}
break;
case 10:
case 9:
{
parser->key[parser->key_len] = '\0';
parser->indent = indent;
parser->event = YP_EKEY1;
}
break;
case 11:
case 10:
{
parser->key[parser->key_len] = '\0';
parser->indent = indent;
......@@ -365,17 +356,17 @@ _match:
parser->event = YP_EID;
}
break;
case 12:
case 11:
{
indent++;
}
break;
case 13:
case 12:
{
id_pos++;
}
break;
case 14:
case 13:
{
if (id_pos > 0 && parser->id_pos > 0 &&
id_pos != parser->id_pos) {
......@@ -384,7 +375,7 @@ _match:
parser->indent = 0;
}
break;
case 15:
case 14:
{
switch ((*p)) {
case '\t':
......@@ -422,7 +413,7 @@ _again:
id_pos = 0;
}
break;
case 15:
case 14:
{
switch ((*p)) {
case '\t':
......
......@@ -82,8 +82,7 @@
data_char =
( (ascii - space - cntrl - quote_char - sep_char -
comment_char - list_char - backslash_char)
| (backslash_char . (quote_char) >_item_unbackslash)
| (backslash_char . (32..126 - quote_char))
| (backslash_char . (32..126))
) $_item_data;
data_str_char =
( (data_char)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment