/* A Bison parser, made by GNU Bison 2.1. */ /* Skeleton parser for Yacc-like parsing with Bison, Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ /* As a special exception, when this file is copied by Bison into a Bison output file, you may use that output file without restriction. This special exception was added by the Free Software Foundation in version 1.24 of Bison. */ /* Tokens. */ #ifndef YYTOKENTYPE # define YYTOKENTYPE /* Put the tokens into the symbol table, so that GDB and other debuggers know about them. */ enum yytokentype { TOK_PPEQ = 258, TOK_whitespace = 259, TOK_opaque = 260, TOK_bstring = 261, TOK_cstring = 262, TOK_hstring = 263, TOK_identifier = 264, TOK_number = 265, TOK_tuple = 266, TOK_quadruple = 267, TOK_number_negative = 268, TOK_typereference = 269, TOK_capitalreference = 270, TOK_typefieldreference = 271, TOK_valuefieldreference = 272, TOK_Literal = 273, TOK_ABSENT = 274, TOK_ABSTRACT_SYNTAX = 275, TOK_ALL = 276, TOK_ANY = 277, TOK_APPLICATION = 278, TOK_AUTOMATIC = 279, TOK_BEGIN = 280, TOK_BIT = 281, TOK_BMPString = 282, TOK_BOOLEAN = 283, TOK_BY = 284, TOK_CHARACTER = 285, TOK_CHOICE = 286, TOK_CLASS = 287, TOK_COMPONENT = 288, TOK_COMPONENTS = 289, TOK_CONSTRAINED = 290, TOK_CONTAINING = 291, TOK_DEFAULT = 292, TOK_DEFINITIONS = 293, TOK_DEFINED = 294, TOK_EMBEDDED = 295, TOK_ENCODED = 296, TOK_ENCODING_CONTROL = 297, TOK_END = 298, TOK_ENUMERATED = 299, TOK_EXPLICIT = 300, TOK_EXPORTS = 301, TOK_EXTENSIBILITY = 302, TOK_EXTERNAL = 303, TOK_FALSE = 304, TOK_FROM = 305, TOK_GeneralizedTime = 306, TOK_GeneralString = 307, TOK_GraphicString = 308, TOK_IA5String = 309, TOK_IDENTIFIER = 310, TOK_IMPLICIT = 311, TOK_IMPLIED = 312, TOK_IMPORTS = 313, TOK_INCLUDES = 314, TOK_INSTANCE = 315, TOK_INSTRUCTIONS = 316, TOK_INTEGER = 317, TOK_ISO646String = 318, TOK_MAX = 319, TOK_MIN = 320, TOK_MINUS_INFINITY = 321, TOK_NULL = 322, TOK_NumericString = 323, TOK_OBJECT = 324, TOK_ObjectDescriptor = 325, TOK_OCTET = 326, TOK_OF = 327, TOK_OPTIONAL = 328, TOK_PATTERN = 329, TOK_PDV = 330, TOK_PLUS_INFINITY = 331, TOK_PRESENT = 332, TOK_PrintableString = 333, TOK_PRIVATE = 334, TOK_REAL = 335, TOK_RELATIVE_OID = 336, TOK_SEQUENCE = 337, TOK_SET = 338, TOK_SIZE = 339, TOK_STRING = 340, TOK_SYNTAX = 341, TOK_T61String = 342, TOK_TAGS = 343, TOK_TeletexString = 344, TOK_TRUE = 345, TOK_TYPE_IDENTIFIER = 346, TOK_UNIQUE = 347, TOK_UNIVERSAL = 348, TOK_UniversalString = 349, TOK_UTCTime = 350, TOK_UTF8String = 351, TOK_VideotexString = 352, TOK_VisibleString = 353, TOK_WITH = 354, TOK_EXCEPT = 355, TOK_INTERSECTION = 356, TOK_UNION = 357, TOK_TwoDots = 358, TOK_ThreeDots = 359 }; #endif /* Tokens. */ #define TOK_PPEQ 258 #define TOK_whitespace 259 #define TOK_opaque 260 #define TOK_bstring 261 #define TOK_cstring 262 #define TOK_hstring 263 #define TOK_identifier 264 #define TOK_number 265 #define TOK_tuple 266 #define TOK_quadruple 267 #define TOK_number_negative 268 #define TOK_typereference 269 #define TOK_capitalreference 270 #define TOK_typefieldreference 271 #define TOK_valuefieldreference 272 #define TOK_Literal 273 #define TOK_ABSENT 274 #define TOK_ABSTRACT_SYNTAX 275 #define TOK_ALL 276 #define TOK_ANY 277 #define TOK_APPLICATION 278 #define TOK_AUTOMATIC 279 #define TOK_BEGIN 280 #define TOK_BIT 281 #define TOK_BMPString 282 #define TOK_BOOLEAN 283 #define TOK_BY 284 #define TOK_CHARACTER 285 #define TOK_CHOICE 286 #define TOK_CLASS 287 #define TOK_COMPONENT 288 #define TOK_COMPONENTS 289 #define TOK_CONSTRAINED 290 #define TOK_CONTAINING 291 #define TOK_DEFAULT 292 #define TOK_DEFINITIONS 293 #define TOK_DEFINED 294 #define TOK_EMBEDDED 295 #define TOK_ENCODED 296 #define TOK_ENCODING_CONTROL 297 #define TOK_END 298 #define TOK_ENUMERATED 299 #define TOK_EXPLICIT 300 #define TOK_EXPORTS 301 #define TOK_EXTENSIBILITY 302 #define TOK_EXTERNAL 303 #define TOK_FALSE 304 #define TOK_FROM 305 #define TOK_GeneralizedTime 306 #define TOK_GeneralString 307 #define TOK_GraphicString 308 #define TOK_IA5String 309 #define TOK_IDENTIFIER 310 #define TOK_IMPLICIT 311 #define TOK_IMPLIED 312 #define TOK_IMPORTS 313 #define TOK_INCLUDES 314 #define TOK_INSTANCE 315 #define TOK_INSTRUCTIONS 316 #define TOK_INTEGER 317 #define TOK_ISO646String 318 #define TOK_MAX 319 #define TOK_MIN 320 #define TOK_MINUS_INFINITY 321 #define TOK_NULL 322 #define TOK_NumericString 323 #define TOK_OBJECT 324 #define TOK_ObjectDescriptor 325 #define TOK_OCTET 326 #define TOK_OF 327 #define TOK_OPTIONAL 328 #define TOK_PATTERN 329 #define TOK_PDV 330 #define TOK_PLUS_INFINITY 331 #define TOK_PRESENT 332 #define TOK_PrintableString 333 #define TOK_PRIVATE 334 #define TOK_REAL 335 #define TOK_RELATIVE_OID 336 #define TOK_SEQUENCE 337 #define TOK_SET 338 #define TOK_SIZE 339 #define TOK_STRING 340 #define TOK_SYNTAX 341 #define TOK_T61String 342 #define TOK_TAGS 343 #define TOK_TeletexString 344 #define TOK_TRUE 345 #define TOK_TYPE_IDENTIFIER 346 #define TOK_UNIQUE 347 #define TOK_UNIVERSAL 348 #define TOK_UniversalString 349 #define TOK_UTCTime 350 #define TOK_UTF8String 351 #define TOK_VideotexString 352 #define TOK_VisibleString 353 #define TOK_WITH 354 #define TOK_EXCEPT 355 #define TOK_INTERSECTION 356 #define TOK_UNION 357 #define TOK_TwoDots 358 #define TOK_ThreeDots 359 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) #line 72 "asn1p_y.y" typedef union YYSTYPE { asn1p_t *a_grammar; asn1p_module_flags_e a_module_flags; asn1p_module_t *a_module; asn1p_expr_type_e a_type; /* ASN.1 Type */ asn1p_expr_t *a_expr; /* Constructed collection */ asn1p_constraint_t *a_constr; /* Constraint */ enum asn1p_constraint_type_e a_ctype;/* Constraint type */ asn1p_xports_t *a_xports; /* IMports/EXports */ struct AssignedIdentifier a_aid; /* Assigned Identifier */ asn1p_oid_t *a_oid; /* Object Identifier */ asn1p_oid_arc_t a_oid_arc; /* Single OID's arc */ struct asn1p_type_tag_s a_tag; /* A tag */ asn1p_ref_t *a_ref; /* Reference to custom type */ asn1p_wsyntx_t *a_wsynt; /* WITH SYNTAX contents */ asn1p_wsyntx_chunk_t *a_wchunk; /* WITH SYNTAX chunk */ struct asn1p_ref_component_s a_refcomp; /* Component of a reference */ asn1p_value_t *a_value; /* Number, DefinedValue, etc */ struct asn1p_param_s a_parg; /* A parameter argument */ asn1p_paramlist_t *a_plist; /* A pargs list */ struct asn1p_expr_marker_s a_marker; /* OPTIONAL/DEFAULT */ enum asn1p_constr_pres_e a_pres; /* PRESENT/ABSENT/OPTIONAL */ asn1c_integer_t a_int; char *tv_str; struct { char *buf; int len; } tv_opaque; struct { char *name; struct asn1p_type_tag_s tag; } tv_nametag; } YYSTYPE; /* Line 1447 of yacc.c. */ #line 280 "y.tab.h" # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 # define YYSTYPE_IS_TRIVIAL 1 #endif extern YYSTYPE asn1p_lval;