Home | History | Annotate | Download | only in xkbcomp
      1 /* A Bison parser, made by GNU Bison 3.0.2.  */
      2 
      3 /* Bison interface for Yacc-like parsers in C
      4 
      5    Copyright (C) 1984, 1989-1990, 2000-2013 Free Software Foundation, Inc.
      6 
      7    This program is free software: you can redistribute it and/or modify
      8    it under the terms of the GNU General Public License as published by
      9    the Free Software Foundation, either version 3 of the License, or
     10    (at your option) any later version.
     11 
     12    This program is distributed in the hope that it will be useful,
     13    but WITHOUT ANY WARRANTY; without even the implied warranty of
     14    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15    GNU General Public License for more details.
     16 
     17    You should have received a copy of the GNU General Public License
     18    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
     19 
     20 /* As a special exception, you may create a larger work that contains
     21    part or all of the Bison parser skeleton and distribute that work
     22    under terms of your choice, so long as that work isn't itself a
     23    parser generator using the skeleton or a modified version thereof
     24    as a parser skeleton.  Alternatively, if you modify or redistribute
     25    the parser skeleton itself, you may (at your option) remove this
     26    special exception, which will cause the skeleton and the resulting
     27    Bison output files to be licensed under the GNU General Public
     28    License without this special exception.
     29 
     30    This special exception was added by the Free Software Foundation in
     31    version 2.2 of Bison.  */
     32 
     33 #ifndef YY__XKBCOMMON_SRC_XKBCOMP_PARSER_H_INCLUDED
     34 # define YY__XKBCOMMON_SRC_XKBCOMP_PARSER_H_INCLUDED
     35 /* Debug traces.  */
     36 #ifndef YYDEBUG
     37 # define YYDEBUG 0
     38 #endif
     39 #if YYDEBUG
     40 extern int _xkbcommon_debug;
     41 #endif
     42 
     43 /* Token type.  */
     44 #ifndef YYTOKENTYPE
     45 # define YYTOKENTYPE
     46   enum yytokentype
     47   {
     48     END_OF_FILE = 0,
     49     ERROR_TOK = 255,
     50     XKB_KEYMAP = 1,
     51     XKB_KEYCODES = 2,
     52     XKB_TYPES = 3,
     53     XKB_SYMBOLS = 4,
     54     XKB_COMPATMAP = 5,
     55     XKB_GEOMETRY = 6,
     56     XKB_SEMANTICS = 7,
     57     XKB_LAYOUT = 8,
     58     INCLUDE = 10,
     59     OVERRIDE = 11,
     60     AUGMENT = 12,
     61     REPLACE = 13,
     62     ALTERNATE = 14,
     63     VIRTUAL_MODS = 20,
     64     TYPE = 21,
     65     INTERPRET = 22,
     66     ACTION_TOK = 23,
     67     KEY = 24,
     68     ALIAS = 25,
     69     GROUP = 26,
     70     MODIFIER_MAP = 27,
     71     INDICATOR = 28,
     72     SHAPE = 29,
     73     KEYS = 30,
     74     ROW = 31,
     75     SECTION = 32,
     76     OVERLAY = 33,
     77     TEXT = 34,
     78     OUTLINE = 35,
     79     SOLID = 36,
     80     LOGO = 37,
     81     VIRTUAL = 38,
     82     EQUALS = 40,
     83     PLUS = 41,
     84     MINUS = 42,
     85     DIVIDE = 43,
     86     TIMES = 44,
     87     OBRACE = 45,
     88     CBRACE = 46,
     89     OPAREN = 47,
     90     CPAREN = 48,
     91     OBRACKET = 49,
     92     CBRACKET = 50,
     93     DOT = 51,
     94     COMMA = 52,
     95     SEMI = 53,
     96     EXCLAM = 54,
     97     INVERT = 55,
     98     STRING = 60,
     99     INTEGER = 61,
    100     FLOAT = 62,
    101     IDENT = 63,
    102     KEYNAME = 64,
    103     PARTIAL = 70,
    104     DEFAULT = 71,
    105     HIDDEN = 72,
    106     ALPHANUMERIC_KEYS = 73,
    107     MODIFIER_KEYS = 74,
    108     KEYPAD_KEYS = 75,
    109     FUNCTION_KEYS = 76,
    110     ALTERNATE_GROUP = 77
    111   };
    112 #endif
    113 /* Tokens.  */
    114 #define END_OF_FILE 0
    115 #define ERROR_TOK 255
    116 #define XKB_KEYMAP 1
    117 #define XKB_KEYCODES 2
    118 #define XKB_TYPES 3
    119 #define XKB_SYMBOLS 4
    120 #define XKB_COMPATMAP 5
    121 #define XKB_GEOMETRY 6
    122 #define XKB_SEMANTICS 7
    123 #define XKB_LAYOUT 8
    124 #define INCLUDE 10
    125 #define OVERRIDE 11
    126 #define AUGMENT 12
    127 #define REPLACE 13
    128 #define ALTERNATE 14
    129 #define VIRTUAL_MODS 20
    130 #define TYPE 21
    131 #define INTERPRET 22
    132 #define ACTION_TOK 23
    133 #define KEY 24
    134 #define ALIAS 25
    135 #define GROUP 26
    136 #define MODIFIER_MAP 27
    137 #define INDICATOR 28
    138 #define SHAPE 29
    139 #define KEYS 30
    140 #define ROW 31
    141 #define SECTION 32
    142 #define OVERLAY 33
    143 #define TEXT 34
    144 #define OUTLINE 35
    145 #define SOLID 36
    146 #define LOGO 37
    147 #define VIRTUAL 38
    148 #define EQUALS 40
    149 #define PLUS 41
    150 #define MINUS 42
    151 #define DIVIDE 43
    152 #define TIMES 44
    153 #define OBRACE 45
    154 #define CBRACE 46
    155 #define OPAREN 47
    156 #define CPAREN 48
    157 #define OBRACKET 49
    158 #define CBRACKET 50
    159 #define DOT 51
    160 #define COMMA 52
    161 #define SEMI 53
    162 #define EXCLAM 54
    163 #define INVERT 55
    164 #define STRING 60
    165 #define INTEGER 61
    166 #define FLOAT 62
    167 #define IDENT 63
    168 #define KEYNAME 64
    169 #define PARTIAL 70
    170 #define DEFAULT 71
    171 #define HIDDEN 72
    172 #define ALPHANUMERIC_KEYS 73
    173 #define MODIFIER_KEYS 74
    174 #define KEYPAD_KEYS 75
    175 #define FUNCTION_KEYS 76
    176 #define ALTERNATE_GROUP 77
    177 
    178 /* Value type.  */
    179 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
    180 typedef union YYSTYPE YYSTYPE;
    181 union YYSTYPE
    182 {
    183 #line 162 "src/xkbcomp/parser.y" /* yacc.c:1909  */
    184 
    185         int              ival;
    186         int64_t          num;
    187         enum xkb_file_type file_type;
    188         char            *str;
    189         xkb_atom_t      atom;
    190         enum merge_mode merge;
    191         enum xkb_map_flags mapFlags;
    192         xkb_keysym_t    keysym;
    193         ParseCommon     *any;
    194         ExprDef         *expr;
    195         VarDef          *var;
    196         VModDef         *vmod;
    197         InterpDef       *interp;
    198         KeyTypeDef      *keyType;
    199         SymbolsDef      *syms;
    200         ModMapDef       *modMask;
    201         GroupCompatDef  *groupCompat;
    202         LedMapDef       *ledMap;
    203         LedNameDef      *ledName;
    204         KeycodeDef      *keyCode;
    205         KeyAliasDef     *keyAlias;
    206         void            *geom;
    207         XkbFile         *file;
    208 
    209 #line 210 "src/xkbcomp/parser.h" /* yacc.c:1909  */
    210 };
    211 # define YYSTYPE_IS_TRIVIAL 1
    212 # define YYSTYPE_IS_DECLARED 1
    213 #endif
    214 
    215 
    216 
    217 int _xkbcommon_parse (struct parser_param *param);
    218 
    219 #endif /* !YY__XKBCOMMON_SRC_XKBCOMP_PARSER_H_INCLUDED  */
    220