blob: 6d3ff5e715fda901a7f70b07729f94470e5fc306 [file] [log] [blame]
vlm044f7442004-09-04 04:49:21 +00001/* A Bison parser, made from asn1p_y.y, by GNU bison 1.75. */
2
3/* Skeleton parser for Yacc-like parsing with Bison,
4 Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002 Free Software Foundation, Inc.
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2, or (at your option)
9 any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place - Suite 330,
19 Boston, MA 02111-1307, USA. */
20
21/* As a special exception, when this file is copied by Bison into a
22 Bison output file, you may use that output file without restriction.
23 This special exception was added by the Free Software Foundation
24 in version 1.24 of Bison. */
25
26#ifndef BISON_ASN_P_Y_H
27# define BISON_ASN_P_Y_H
28
29/* Tokens. */
30#ifndef YYTOKENTYPE
31# define YYTOKENTYPE
32 /* Put the tokens into the symbol table, so that GDB and other debuggers
33 know about them. */
34 enum yytokentype {
35 TOK_PPEQ = 258,
36 TOK_opaque = 259,
37 TOK_bstring = 260,
38 TOK_cstring = 261,
39 TOK_hstring = 262,
40 TOK_identifier = 263,
41 TOK_number = 264,
42 TOK_number_negative = 265,
43 TOK_typereference = 266,
44 TOK_capitalreference = 267,
45 TOK_typefieldreference = 268,
46 TOK_valuefieldreference = 269,
47 TOK_ABSENT = 270,
48 TOK_ABSTRACT_SYNTAX = 271,
49 TOK_ALL = 272,
50 TOK_ANY = 273,
51 TOK_APPLICATION = 274,
52 TOK_AUTOMATIC = 275,
53 TOK_BEGIN = 276,
54 TOK_BIT = 277,
55 TOK_BMPString = 278,
56 TOK_BOOLEAN = 279,
57 TOK_BY = 280,
58 TOK_CHARACTER = 281,
59 TOK_CHOICE = 282,
60 TOK_CLASS = 283,
61 TOK_COMPONENT = 284,
62 TOK_COMPONENTS = 285,
63 TOK_CONSTRAINED = 286,
64 TOK_CONTAINING = 287,
65 TOK_DEFAULT = 288,
66 TOK_DEFINITIONS = 289,
67 TOK_DEFINED = 290,
68 TOK_EMBEDDED = 291,
69 TOK_ENCODED = 292,
70 TOK_ENCODING_CONTROL = 293,
71 TOK_END = 294,
72 TOK_ENUMERATED = 295,
73 TOK_EXPLICIT = 296,
74 TOK_EXPORTS = 297,
75 TOK_EXTENSIBILITY = 298,
76 TOK_EXTERNAL = 299,
77 TOK_FALSE = 300,
78 TOK_FROM = 301,
79 TOK_GeneralizedTime = 302,
80 TOK_GeneralString = 303,
81 TOK_GraphicString = 304,
82 TOK_IA5String = 305,
83 TOK_IDENTIFIER = 306,
84 TOK_IMPLICIT = 307,
85 TOK_IMPLIED = 308,
86 TOK_IMPORTS = 309,
87 TOK_INCLUDES = 310,
88 TOK_INSTANCE = 311,
89 TOK_INSTRUCTIONS = 312,
90 TOK_INTEGER = 313,
91 TOK_ISO646String = 314,
92 TOK_MAX = 315,
93 TOK_MIN = 316,
94 TOK_MINUS_INFINITY = 317,
95 TOK_NULL = 318,
96 TOK_NumericString = 319,
97 TOK_OBJECT = 320,
98 TOK_ObjectDescriptor = 321,
99 TOK_OCTET = 322,
100 TOK_OF = 323,
101 TOK_OPTIONAL = 324,
102 TOK_PATTERN = 325,
103 TOK_PDV = 326,
104 TOK_PLUS_INFINITY = 327,
105 TOK_PRESENT = 328,
106 TOK_PrintableString = 329,
107 TOK_PRIVATE = 330,
108 TOK_REAL = 331,
109 TOK_RELATIVE_OID = 332,
110 TOK_SEQUENCE = 333,
111 TOK_SET = 334,
112 TOK_SIZE = 335,
113 TOK_STRING = 336,
114 TOK_SYNTAX = 337,
115 TOK_T61String = 338,
116 TOK_TAGS = 339,
117 TOK_TeletexString = 340,
118 TOK_TRUE = 341,
119 TOK_TYPE_IDENTIFIER = 342,
120 TOK_UNIQUE = 343,
121 TOK_UNIVERSAL = 344,
122 TOK_UniversalString = 345,
123 TOK_UTCTime = 346,
124 TOK_UTF8String = 347,
125 TOK_VideotexString = 348,
126 TOK_VisibleString = 349,
127 TOK_WITH = 350,
128 TOK_EXCEPT = 351,
129 TOK_INTERSECTION = 352,
130 TOK_UNION = 353,
131 TOK_TwoDots = 354,
132 TOK_ThreeDots = 355,
133 TOK_tag = 356
134 };
135#endif
136#define TOK_PPEQ 258
137#define TOK_opaque 259
138#define TOK_bstring 260
139#define TOK_cstring 261
140#define TOK_hstring 262
141#define TOK_identifier 263
142#define TOK_number 264
143#define TOK_number_negative 265
144#define TOK_typereference 266
145#define TOK_capitalreference 267
146#define TOK_typefieldreference 268
147#define TOK_valuefieldreference 269
148#define TOK_ABSENT 270
149#define TOK_ABSTRACT_SYNTAX 271
150#define TOK_ALL 272
151#define TOK_ANY 273
152#define TOK_APPLICATION 274
153#define TOK_AUTOMATIC 275
154#define TOK_BEGIN 276
155#define TOK_BIT 277
156#define TOK_BMPString 278
157#define TOK_BOOLEAN 279
158#define TOK_BY 280
159#define TOK_CHARACTER 281
160#define TOK_CHOICE 282
161#define TOK_CLASS 283
162#define TOK_COMPONENT 284
163#define TOK_COMPONENTS 285
164#define TOK_CONSTRAINED 286
165#define TOK_CONTAINING 287
166#define TOK_DEFAULT 288
167#define TOK_DEFINITIONS 289
168#define TOK_DEFINED 290
169#define TOK_EMBEDDED 291
170#define TOK_ENCODED 292
171#define TOK_ENCODING_CONTROL 293
172#define TOK_END 294
173#define TOK_ENUMERATED 295
174#define TOK_EXPLICIT 296
175#define TOK_EXPORTS 297
176#define TOK_EXTENSIBILITY 298
177#define TOK_EXTERNAL 299
178#define TOK_FALSE 300
179#define TOK_FROM 301
180#define TOK_GeneralizedTime 302
181#define TOK_GeneralString 303
182#define TOK_GraphicString 304
183#define TOK_IA5String 305
184#define TOK_IDENTIFIER 306
185#define TOK_IMPLICIT 307
186#define TOK_IMPLIED 308
187#define TOK_IMPORTS 309
188#define TOK_INCLUDES 310
189#define TOK_INSTANCE 311
190#define TOK_INSTRUCTIONS 312
191#define TOK_INTEGER 313
192#define TOK_ISO646String 314
193#define TOK_MAX 315
194#define TOK_MIN 316
195#define TOK_MINUS_INFINITY 317
196#define TOK_NULL 318
197#define TOK_NumericString 319
198#define TOK_OBJECT 320
199#define TOK_ObjectDescriptor 321
200#define TOK_OCTET 322
201#define TOK_OF 323
202#define TOK_OPTIONAL 324
203#define TOK_PATTERN 325
204#define TOK_PDV 326
205#define TOK_PLUS_INFINITY 327
206#define TOK_PRESENT 328
207#define TOK_PrintableString 329
208#define TOK_PRIVATE 330
209#define TOK_REAL 331
210#define TOK_RELATIVE_OID 332
211#define TOK_SEQUENCE 333
212#define TOK_SET 334
213#define TOK_SIZE 335
214#define TOK_STRING 336
215#define TOK_SYNTAX 337
216#define TOK_T61String 338
217#define TOK_TAGS 339
218#define TOK_TeletexString 340
219#define TOK_TRUE 341
220#define TOK_TYPE_IDENTIFIER 342
221#define TOK_UNIQUE 343
222#define TOK_UNIVERSAL 344
223#define TOK_UniversalString 345
224#define TOK_UTCTime 346
225#define TOK_UTF8String 347
226#define TOK_VideotexString 348
227#define TOK_VisibleString 349
228#define TOK_WITH 350
229#define TOK_EXCEPT 351
230#define TOK_INTERSECTION 352
231#define TOK_UNION 353
232#define TOK_TwoDots 354
233#define TOK_ThreeDots 355
234#define TOK_tag 356
235
236
237
238
239#ifndef YYSTYPE
240#line 58 "asn1p_y.y"
vlmfa67ddc2004-06-03 03:38:44 +0000241typedef union {
242 asn1p_t *a_grammar;
243 asn1p_module_flags_e a_module_flags;
244 asn1p_module_t *a_module;
245 asn1p_expr_type_e a_type; /* ASN.1 Type */
246 asn1p_expr_t *a_expr; /* Constructed collection */
247 asn1p_constraint_t *a_constr; /* Constraint */
248 enum asn1p_constraint_type_e a_ctype;/* Constraint type */
249 asn1p_xports_t *a_xports; /* IMports/EXports */
250 asn1p_oid_t *a_oid; /* Object Identifier */
251 asn1p_oid_arc_t a_oid_arc; /* Single OID's arc */
252 struct asn1p_type_tag_s a_tag; /* A tag */
253 asn1p_ref_t *a_ref; /* Reference to custom type */
254 asn1p_wsyntx_t *a_wsynt; /* WITH SYNTAX contents */
255 asn1p_wsyntx_chunk_t *a_wchunk; /* WITH SYNTAX chunk */
256 struct asn1p_ref_component_s a_refcomp; /* Component of a reference */
257 asn1p_value_t *a_value; /* Number, DefinedValue, etc */
258 struct asn1p_param_s a_parg; /* A parameter argument */
259 asn1p_paramlist_t *a_plist; /* A pargs list */
260 enum asn1p_expr_marker_e a_marker; /* OPTIONAL/DEFAULT */
261 enum asn1p_constr_pres_e a_pres; /* PRESENT/ABSENT/OPTIONAL */
262 asn1_integer_t a_int;
263 char *tv_str;
264 struct {
265 char *buf;
266 int len;
267 } tv_opaque;
268 struct {
269 char *name;
270 struct asn1p_type_tag_s tag;
271 } tv_nametag;
vlm044f7442004-09-04 04:49:21 +0000272} yystype;
273/* Line 1281 of /usr/local/share/bison/yacc.c. */
274#line 275 "y.tab.h"
275# define YYSTYPE yystype
276#endif
vlmfa67ddc2004-06-03 03:38:44 +0000277
278extern YYSTYPE asn1p_lval;
vlm044f7442004-09-04 04:49:21 +0000279
280
281#endif /* not BISON_ASN_P_Y_H */
282