summaryrefslogtreecommitdiff
path: root/src/tools/qlalr/grammar.cpp
blob: 2ab6504bf81bb8323a61221109a11a949fe03ecf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
/****************************************************************************
**
** Copyright (C) 2016 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:GPL-EXCEPT$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 as published by the Free Software
** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/

// This file was generated by qlalr - DO NOT EDIT!
#include "grammar_p.h"

QT_BEGIN_NAMESPACE

const char *const grammar::spell [] = {
    "end of file", "identifier", "string literal", "%decl", "%expect", "%expect-lr", "%impl", "%left", "%merged_output", "%nonassoc",
    "%parser", "%prec", "%right", "%start", "%token", "%token_prefix", ":", "|", ";", nullptr,
    nullptr, nullptr
};

const short grammar::lhs [] = {
    22, 23, 23, 29, 25, 28, 28, 28, 28, 28,
    28, 28, 24, 24, 31, 32, 32, 33, 33, 34,
    34, 34, 31, 35, 35, 36, 37, 37, 38, 38,
    30, 30, 26, 26, 40, 39, 41, 41, 44, 43,
    43, 42, 42, 27, 45
};

const short grammar::rhs [] = {
    4, 1, 2, 2, 2, 2, 2, 2, 2, 2,
    2, 2, 1, 2, 2, 1, 2, 2, 2, 1,
    1, 1, 2, 1, 2, 1, 1, 1, 1, 2,
    0, 1, 1, 2, 2, 4, 3, 6, 0, 0,
    2, 1, 2, 0, 2
};

const short grammar::action_default [] = {
    44, 2, 44, 0, 0, 0, 0, 13, 0, 0,
    3, 0, 0, 0, 8, 10, 11, 9, 7, 6,
    12, 20, 22, 0, 21, 0, 44, 31, 0, 14,
    26, 24, 23, 25, 4, 33, 1, 0, 34, 44,
    35, 42, 39, 40, 0, 31, 44, 40, 43, 0,
    31, 41, 29, 27, 28, 32, 38, 30, 36, 31,
    37, 5, 44, 16, 15, 18, 19, 17, 45
};

const short grammar::goto_default [] = {
    3, 2, 13, 26, 36, 41, 10, 27, 61, 29,
    64, 63, 23, 32, 31, 52, 55, 38, 39, 42,
    43, 59, 44, 0
};

const short grammar::action_index [] = {
    -22, -22, 30, 1, 2, 3, 4, -22, 5, 6,
    -22, 8, -1, 35, -22, -22, -22, -22, -22, -22,
    -22, -22, -22, 13, -22, 7, -22, -2, 20, -22,
    -22, -22, 11, -22, -22, -22, 15, -6, -22, -22,
    -22, -22, -3, 19, -4, 12, -22, 18, -22, 10,
    -2, -22, -22, -22, -22, -2, -22, -22, -22, -2,
    -22, -22, 0, -22, 20, -22, -22, -22, -22,

    0, -24, 3, -24, -24, -24, -24, -24, -24, -24,
    -24, -24, -24, -24, -24, -24, -24, -24, -24, -24,
    -24, -24, -24, -24, -24, -24, -2, -24, -24, -24,
    -24, -24, -7, -24, -24, -24, -24, -24, -24, -24,
    -24, -24, -24, -24, -24, 17, -19, -11, -24, -24,
    1, -24, -24, -24, -24, -15, -24, -24, -24, -6,
    -24, -24, -1, -24, -5, -24, -24, -24, -24
};

const short grammar::action_info [] = {
    20, 68, 66, 14, 15, 16, 17, 18, 34, 19,
    40, 51, 30, 46, 30, 45, 37, 53, 54, 48,
    48, 62, 0, 0, 0, 0, 0, 0, 0, 49,
    49, 53, 54, 4, 5, 6, 8, 0, 9, 0,
    11, 0, 21, 0, 22, 12, 0, 24, 25, 28,
    0, 0, 0, 0, 0, 0, 0,

    57, 47, 60, 35, 65, 1, 67, 33, 7, 56,
    50, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    0, 0, 0, 0, 0, 58, 0, 0, 0, 0,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    0
};

const short grammar::action_check [] = {
    1, 0, 2, 1, 1, 1, 1, 1, 1, 1,
    16, 1, 1, 17, 1, 18, 1, 19, 20, 1,
    1, 1, -1, -1, -1, -1, -1, -1, -1, 11,
    11, 19, 20, 3, 4, 5, 6, -1, 8, -1,
    10, -1, 7, -1, 9, 15, -1, 12, 13, 14,
    -1, -1, -1, -1, -1, -1, -1,

    15, 20, 8, 5, 5, 5, 11, 14, 5, 8,
    21, -1, -1, -1, -1, -1, -1, -1, -1, -1,
    -1, -1, -1, -1, -1, 8, -1, -1, -1, -1,
    -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
    -1
};

QT_END_NAMESPACE