blob: 788f2d9eee79ad128823b5259576765ce693109f [file] [log] [blame]
Lev Walkinf15320b2004-06-03 03:38:44 +00001typedef union {
2 asn1p_t *a_grammar;
3 asn1p_module_flags_e a_module_flags;
4 asn1p_module_t *a_module;
5 asn1p_expr_type_e a_type; /* ASN.1 Type */
6 asn1p_expr_t *a_expr; /* Constructed collection */
7 asn1p_constraint_t *a_constr; /* Constraint */
8 enum asn1p_constraint_type_e a_ctype;/* Constraint type */
9 asn1p_xports_t *a_xports; /* IMports/EXports */
10 asn1p_oid_t *a_oid; /* Object Identifier */
11 asn1p_oid_arc_t a_oid_arc; /* Single OID's arc */
12 struct asn1p_type_tag_s a_tag; /* A tag */
13 asn1p_ref_t *a_ref; /* Reference to custom type */
14 asn1p_wsyntx_t *a_wsynt; /* WITH SYNTAX contents */
15 asn1p_wsyntx_chunk_t *a_wchunk; /* WITH SYNTAX chunk */
16 struct asn1p_ref_component_s a_refcomp; /* Component of a reference */
17 asn1p_value_t *a_value; /* Number, DefinedValue, etc */
18 struct asn1p_param_s a_parg; /* A parameter argument */
19 asn1p_paramlist_t *a_plist; /* A pargs list */
Lev Walkin9c974182004-09-15 11:59:51 +000020 struct asn1p_expr_marker_s a_marker; /* OPTIONAL/DEFAULT */
Lev Walkinf15320b2004-06-03 03:38:44 +000021 enum asn1p_constr_pres_e a_pres; /* PRESENT/ABSENT/OPTIONAL */
22 asn1_integer_t a_int;
23 char *tv_str;
24 struct {
25 char *buf;
26 int len;
27 } tv_opaque;
28 struct {
29 char *name;
30 struct asn1p_type_tag_s tag;
31 } tv_nametag;
Lev Walkin1004aa92004-09-08 00:28:11 +000032} YYSTYPE;
33#define TOK_PPEQ 257
34#define TOK_opaque 258
35#define TOK_bstring 259
36#define TOK_cstring 260
37#define TOK_hstring 261
38#define TOK_identifier 262
39#define TOK_number 263
40#define TOK_number_negative 264
41#define TOK_typereference 265
42#define TOK_capitalreference 266
43#define TOK_typefieldreference 267
44#define TOK_valuefieldreference 268
45#define TOK_ABSENT 269
46#define TOK_ABSTRACT_SYNTAX 270
47#define TOK_ALL 271
48#define TOK_ANY 272
49#define TOK_APPLICATION 273
50#define TOK_AUTOMATIC 274
51#define TOK_BEGIN 275
52#define TOK_BIT 276
53#define TOK_BMPString 277
54#define TOK_BOOLEAN 278
55#define TOK_BY 279
56#define TOK_CHARACTER 280
57#define TOK_CHOICE 281
58#define TOK_CLASS 282
59#define TOK_COMPONENT 283
60#define TOK_COMPONENTS 284
61#define TOK_CONSTRAINED 285
62#define TOK_CONTAINING 286
63#define TOK_DEFAULT 287
64#define TOK_DEFINITIONS 288
65#define TOK_DEFINED 289
66#define TOK_EMBEDDED 290
67#define TOK_ENCODED 291
68#define TOK_ENCODING_CONTROL 292
69#define TOK_END 293
70#define TOK_ENUMERATED 294
71#define TOK_EXPLICIT 295
72#define TOK_EXPORTS 296
73#define TOK_EXTENSIBILITY 297
74#define TOK_EXTERNAL 298
75#define TOK_FALSE 299
76#define TOK_FROM 300
77#define TOK_GeneralizedTime 301
78#define TOK_GeneralString 302
79#define TOK_GraphicString 303
80#define TOK_IA5String 304
81#define TOK_IDENTIFIER 305
82#define TOK_IMPLICIT 306
83#define TOK_IMPLIED 307
84#define TOK_IMPORTS 308
85#define TOK_INCLUDES 309
86#define TOK_INSTANCE 310
87#define TOK_INSTRUCTIONS 311
88#define TOK_INTEGER 312
89#define TOK_ISO646String 313
90#define TOK_MAX 314
91#define TOK_MIN 315
92#define TOK_MINUS_INFINITY 316
93#define TOK_NULL 317
94#define TOK_NumericString 318
95#define TOK_OBJECT 319
96#define TOK_ObjectDescriptor 320
97#define TOK_OCTET 321
98#define TOK_OF 322
99#define TOK_OPTIONAL 323
100#define TOK_PATTERN 324
101#define TOK_PDV 325
102#define TOK_PLUS_INFINITY 326
103#define TOK_PRESENT 327
104#define TOK_PrintableString 328
105#define TOK_PRIVATE 329
106#define TOK_REAL 330
107#define TOK_RELATIVE_OID 331
108#define TOK_SEQUENCE 332
109#define TOK_SET 333
110#define TOK_SIZE 334
111#define TOK_STRING 335
112#define TOK_SYNTAX 336
113#define TOK_T61String 337
114#define TOK_TAGS 338
115#define TOK_TeletexString 339
116#define TOK_TRUE 340
117#define TOK_TYPE_IDENTIFIER 341
118#define TOK_UNIQUE 342
119#define TOK_UNIVERSAL 343
120#define TOK_UniversalString 344
121#define TOK_UTCTime 345
122#define TOK_UTF8String 346
123#define TOK_VideotexString 347
124#define TOK_VisibleString 348
125#define TOK_WITH 349
126#define TOK_EXCEPT 350
127#define TOK_INTERSECTION 351
128#define TOK_UNION 352
129#define TOK_TwoDots 353
130#define TOK_ThreeDots 354
131#define TOK_tag 355
132
Lev Walkinf15320b2004-06-03 03:38:44 +0000133
134extern YYSTYPE asn1p_lval;