xref: /netbsd-src/crypto/external/bsd/heimdal/dist/lib/asn1/asn1parse.h (revision 9fd8799cb5ceb66c69f2eb1a6d26a1d587ba1f1e)
1 /*	$NetBSD: asn1parse.h,v 1.2 2019/12/15 22:50:47 christos Exp $	*/
2 
3 /* A Bison parser, made by GNU Bison 2.3.  */
4 
5 /* Skeleton interface for Bison's Yacc-like parsers in C
6 
7    Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
8    Free Software Foundation, Inc.
9 
10    This program is free software; you can redistribute it and/or modify
11    it under the terms of the GNU General Public License as published by
12    the Free Software Foundation; either version 2, or (at your option)
13    any later version.
14 
15    This program is distributed in the hope that it will be useful,
16    but WITHOUT ANY WARRANTY; without even the implied warranty of
17    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18    GNU General Public License for more details.
19 
20    You should have received a copy of the GNU General Public License
21    along with this program; if not, write to the Free Software
22    Foundation, Inc., 51 Franklin Street, Fifth Floor,
23    Boston, MA 02110-1301, USA.  */
24 
25 /* As a special exception, you may create a larger work that contains
26    part or all of the Bison parser skeleton and distribute that work
27    under terms of your choice, so long as that work isn't itself a
28    parser generator using the skeleton or a modified version thereof
29    as a parser skeleton.  Alternatively, if you modify or redistribute
30    the parser skeleton itself, you may (at your option) remove this
31    special exception, which will cause the skeleton and the resulting
32    Bison output files to be licensed under the GNU General Public
33    License without this special exception.
34 
35    This special exception was added by the Free Software Foundation in
36    version 2.2 of Bison.  */
37 
38 /* Tokens.  */
39 #ifndef YYTOKENTYPE
40 # define YYTOKENTYPE
41    /* Put the tokens into the symbol table, so that GDB and other debuggers
42       know about them.  */
43    enum yytokentype {
44      kw_ABSENT = 258,
45      kw_ABSTRACT_SYNTAX = 259,
46      kw_ALL = 260,
47      kw_APPLICATION = 261,
48      kw_AUTOMATIC = 262,
49      kw_BEGIN = 263,
50      kw_BIT = 264,
51      kw_BMPString = 265,
52      kw_BOOLEAN = 266,
53      kw_BY = 267,
54      kw_CHARACTER = 268,
55      kw_CHOICE = 269,
56      kw_CLASS = 270,
57      kw_COMPONENT = 271,
58      kw_COMPONENTS = 272,
59      kw_CONSTRAINED = 273,
60      kw_CONTAINING = 274,
61      kw_DEFAULT = 275,
62      kw_DEFINITIONS = 276,
63      kw_EMBEDDED = 277,
64      kw_ENCODED = 278,
65      kw_END = 279,
66      kw_ENUMERATED = 280,
67      kw_EXCEPT = 281,
68      kw_EXPLICIT = 282,
69      kw_EXPORTS = 283,
70      kw_EXTENSIBILITY = 284,
71      kw_EXTERNAL = 285,
72      kw_FALSE = 286,
73      kw_FROM = 287,
74      kw_GeneralString = 288,
75      kw_GeneralizedTime = 289,
76      kw_GraphicString = 290,
77      kw_IA5String = 291,
78      kw_IDENTIFIER = 292,
79      kw_IMPLICIT = 293,
80      kw_IMPLIED = 294,
81      kw_IMPORTS = 295,
82      kw_INCLUDES = 296,
83      kw_INSTANCE = 297,
84      kw_INTEGER = 298,
85      kw_INTERSECTION = 299,
86      kw_ISO646String = 300,
87      kw_MAX = 301,
88      kw_MIN = 302,
89      kw_MINUS_INFINITY = 303,
90      kw_NULL = 304,
91      kw_NumericString = 305,
92      kw_OBJECT = 306,
93      kw_OCTET = 307,
94      kw_OF = 308,
95      kw_OPTIONAL = 309,
96      kw_ObjectDescriptor = 310,
97      kw_PATTERN = 311,
98      kw_PDV = 312,
99      kw_PLUS_INFINITY = 313,
100      kw_PRESENT = 314,
101      kw_PRIVATE = 315,
102      kw_PrintableString = 316,
103      kw_REAL = 317,
104      kw_RELATIVE_OID = 318,
105      kw_SEQUENCE = 319,
106      kw_SET = 320,
107      kw_SIZE = 321,
108      kw_STRING = 322,
109      kw_SYNTAX = 323,
110      kw_T61String = 324,
111      kw_TAGS = 325,
112      kw_TRUE = 326,
113      kw_TYPE_IDENTIFIER = 327,
114      kw_TeletexString = 328,
115      kw_UNION = 329,
116      kw_UNIQUE = 330,
117      kw_UNIVERSAL = 331,
118      kw_UTCTime = 332,
119      kw_UTF8String = 333,
120      kw_UniversalString = 334,
121      kw_VideotexString = 335,
122      kw_VisibleString = 336,
123      kw_WITH = 337,
124      RANGE = 338,
125      EEQUAL = 339,
126      ELLIPSIS = 340,
127      IDENTIFIER = 341,
128      referencename = 342,
129      STRING = 343,
130      NUMBER = 344
131    };
132 #endif
133 /* Tokens.  */
134 #define kw_ABSENT 258
135 #define kw_ABSTRACT_SYNTAX 259
136 #define kw_ALL 260
137 #define kw_APPLICATION 261
138 #define kw_AUTOMATIC 262
139 #define kw_BEGIN 263
140 #define kw_BIT 264
141 #define kw_BMPString 265
142 #define kw_BOOLEAN 266
143 #define kw_BY 267
144 #define kw_CHARACTER 268
145 #define kw_CHOICE 269
146 #define kw_CLASS 270
147 #define kw_COMPONENT 271
148 #define kw_COMPONENTS 272
149 #define kw_CONSTRAINED 273
150 #define kw_CONTAINING 274
151 #define kw_DEFAULT 275
152 #define kw_DEFINITIONS 276
153 #define kw_EMBEDDED 277
154 #define kw_ENCODED 278
155 #define kw_END 279
156 #define kw_ENUMERATED 280
157 #define kw_EXCEPT 281
158 #define kw_EXPLICIT 282
159 #define kw_EXPORTS 283
160 #define kw_EXTENSIBILITY 284
161 #define kw_EXTERNAL 285
162 #define kw_FALSE 286
163 #define kw_FROM 287
164 #define kw_GeneralString 288
165 #define kw_GeneralizedTime 289
166 #define kw_GraphicString 290
167 #define kw_IA5String 291
168 #define kw_IDENTIFIER 292
169 #define kw_IMPLICIT 293
170 #define kw_IMPLIED 294
171 #define kw_IMPORTS 295
172 #define kw_INCLUDES 296
173 #define kw_INSTANCE 297
174 #define kw_INTEGER 298
175 #define kw_INTERSECTION 299
176 #define kw_ISO646String 300
177 #define kw_MAX 301
178 #define kw_MIN 302
179 #define kw_MINUS_INFINITY 303
180 #define kw_NULL 304
181 #define kw_NumericString 305
182 #define kw_OBJECT 306
183 #define kw_OCTET 307
184 #define kw_OF 308
185 #define kw_OPTIONAL 309
186 #define kw_ObjectDescriptor 310
187 #define kw_PATTERN 311
188 #define kw_PDV 312
189 #define kw_PLUS_INFINITY 313
190 #define kw_PRESENT 314
191 #define kw_PRIVATE 315
192 #define kw_PrintableString 316
193 #define kw_REAL 317
194 #define kw_RELATIVE_OID 318
195 #define kw_SEQUENCE 319
196 #define kw_SET 320
197 #define kw_SIZE 321
198 #define kw_STRING 322
199 #define kw_SYNTAX 323
200 #define kw_T61String 324
201 #define kw_TAGS 325
202 #define kw_TRUE 326
203 #define kw_TYPE_IDENTIFIER 327
204 #define kw_TeletexString 328
205 #define kw_UNION 329
206 #define kw_UNIQUE 330
207 #define kw_UNIVERSAL 331
208 #define kw_UTCTime 332
209 #define kw_UTF8String 333
210 #define kw_UniversalString 334
211 #define kw_VideotexString 335
212 #define kw_VisibleString 336
213 #define kw_WITH 337
214 #define RANGE 338
215 #define EEQUAL 339
216 #define ELLIPSIS 340
217 #define IDENTIFIER 341
218 #define referencename 342
219 #define STRING 343
220 #define NUMBER 344
221 
222 
223 
224 
225 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
226 typedef union YYSTYPE
227 #line 72 "asn1parse.y"
228 {
229     int64_t constant;
230     struct value *value;
231     struct range *range;
232     char *name;
233     Type *type;
234     Member *member;
235     struct objid *objid;
236     char *defval;
237     struct string_list *sl;
238     struct tagtype tag;
239     struct memhead *members;
240     struct constraint_spec *constraint_spec;
241 }
242 /* Line 1529 of yacc.c.  */
243 #line 242 "asn1parse.h"
244 	YYSTYPE;
245 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
246 # define YYSTYPE_IS_DECLARED 1
247 # define YYSTYPE_IS_TRIVIAL 1
248 #endif
249 
250 extern YYSTYPE yylval;
251 
252