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