diff options
author | Lev Walkin <vlm@lionet.info> | 2004-08-22 03:19:54 +0000 |
---|---|---|
committer | Lev Walkin <vlm@lionet.info> | 2004-08-22 03:19:54 +0000 |
commit | 070a52d8cef053f49783ebf8d155e209b016ec8c (patch) | |
tree | c7d639839dc7ef536fb3d26bdd0145f580f51931 /libasn1parser/asn1p_expr.h | |
parent | a09e5da5ac4716b6467def5bfa34713b67cbd418 (diff) |
COMPONENTS OF support and other enhancements
Diffstat (limited to 'libasn1parser/asn1p_expr.h')
-rw-r--r-- | libasn1parser/asn1p_expr.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/libasn1parser/asn1p_expr.h b/libasn1parser/asn1p_expr.h index ef1941b7..e00e740c 100644 --- a/libasn1parser/asn1p_expr.h +++ b/libasn1parser/asn1p_expr.h @@ -35,12 +35,14 @@ typedef enum asn1p_expr_type { A1TC_BITVECTOR, /* A plain collection of bits */ A1TC_OPAQUE, /* Opaque data encoded as a bitvector */ A1TC_EXTENSIBLE, /* An extension marker "..." */ + A1TC_COMPONENTS_OF, /* COMPONENTS OF clause */ A1TC_PARAMETRIZED, /* A parametrized type declaration */ A1TC_VALUESET, /* Value set definition */ A1TC_CLASSDEF, /* Information Object Class */ A1TC_CLASSFIELD, /* Information Object Class field */ A1TC_INSTANCE, /* Instance of Object Class */ A1TC_TYPEID, /* Type identifier */ + /* * ASN.1 Constructed types */ @@ -69,6 +71,7 @@ typedef enum asn1p_expr_type { ASN_BASIC_CHARACTER_STRING, ASN_BASIC_UTCTime, ASN_BASIC_GeneralizedTime, + /* * ASN.1 String types */ @@ -93,6 +96,8 @@ typedef enum asn1p_expr_type { #include "asn1p_expr_str.h" #include "asn1p_expr2uclass.h" +struct asn1p_module_s; /* Forward declaration */ + /* * A named collection of types. */ @@ -192,6 +197,9 @@ typedef struct asn1p_expr_s { * grammar source. */ int _lineno; + + struct asn1p_module_s *module; /* Defined in module */ + /* * Marks are used for various purposes. * Here are some predefined ones. @@ -201,6 +209,8 @@ typedef struct asn1p_expr_s { TM_RECURSION, /* Used to break recursion */ } _mark; + int _anonymous_type; /* Used by the compiler */ + /* * Opaque data may be attached to this structure, * probably by compiler. @@ -214,7 +224,7 @@ typedef struct asn1p_expr_s { * Constructor and destructor. */ asn1p_expr_t *asn1p_expr_new(int _lineno); -asn1p_expr_t *asn1p_expr_clone(asn1p_expr_t *); +asn1p_expr_t *asn1p_expr_clone(asn1p_expr_t *, int skip_extensions); void asn1p_expr_free(asn1p_expr_t *expr); #endif /* ASN1_PARSER_EXPR_H */ |