Lev Walkin | b02a883 | 2005-08-13 23:51:47 +0000 | [diff] [blame] | 1 | |
| 2 | /*** <<< INCLUDES [T] >>> ***/ |
| 3 | |
| 4 | #include <BIT_STRING.h> |
| 5 | #include <constr_CHOICE.h> |
| 6 | |
| 7 | /*** <<< DEPS [T] >>> ***/ |
| 8 | |
| 9 | typedef enum T_PR { |
| 10 | T_PR_NOTHING, /* No components present */ |
Lev Walkin | 9f5bb3a | 2006-08-18 01:46:46 +0000 | [diff] [blame] | 11 | T_PR_bs |
Lev Walkin | b02a883 | 2005-08-13 23:51:47 +0000 | [diff] [blame] | 12 | } T_PR; |
| 13 | typedef enum T__bs { |
| 14 | T__bs_a = 1, |
| 15 | T__bs_b = 2 |
Lev Walkin | 171487e | 2006-03-21 07:25:18 +0000 | [diff] [blame] | 16 | } e_T__bs; |
Lev Walkin | b02a883 | 2005-08-13 23:51:47 +0000 | [diff] [blame] | 17 | |
| 18 | /*** <<< TYPE-DECLS [T] >>> ***/ |
| 19 | |
| 20 | typedef struct T { |
| 21 | T_PR present; |
Lev Walkin | 0f5d74c | 2005-08-14 15:03:31 +0000 | [diff] [blame] | 22 | union T_u { |
Lev Walkin | b02a883 | 2005-08-13 23:51:47 +0000 | [diff] [blame] | 23 | BIT_STRING_t bs; |
| 24 | } choice; |
| 25 | |
| 26 | /* Context for parsing across buffer boundaries */ |
| 27 | asn_struct_ctx_t _asn_ctx; |
| 28 | } T_t; |
| 29 | |
| 30 | /*** <<< FUNC-DECLS [T] >>> ***/ |
| 31 | |
| 32 | extern asn_TYPE_descriptor_t asn_DEF_T; |
| 33 | |
| 34 | /*** <<< STAT-DEFS [T] >>> ***/ |
| 35 | |
| 36 | static asn_TYPE_member_t asn_MBR_T_1[] = { |
| 37 | { ATF_NOFLAGS, 0, offsetof(struct T, choice.bs), |
| 38 | .tag = (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)), |
| 39 | .tag_mode = 0, |
Lev Walkin | ae7bf3f | 2005-08-29 10:31:14 +0000 | [diff] [blame] | 40 | .type = &asn_DEF_BIT_STRING, |
Lev Walkin | 67a3012 | 2017-08-10 05:48:54 -0700 | [diff] [blame] | 41 | .type_selector = 0, |
Lev Walkin | b02a883 | 2005-08-13 23:51:47 +0000 | [diff] [blame] | 42 | .memb_constraints = 0, /* Defer constraints checking to the member type */ |
Lev Walkin | b33425f | 2017-07-14 14:59:52 +0400 | [diff] [blame] | 43 | .oer_constraints = 0, /* OER is not compiled, use -gen-OER */ |
Lev Walkin | 59b176e | 2005-11-26 11:25:14 +0000 | [diff] [blame] | 44 | .per_constraints = 0, /* PER is not compiled, use -gen-PER */ |
| 45 | .default_value = 0, |
Lev Walkin | b02a883 | 2005-08-13 23:51:47 +0000 | [diff] [blame] | 46 | .name = "bs" |
| 47 | }, |
| 48 | }; |
Lev Walkin | a7591b5 | 2014-10-12 18:37:35 -0700 | [diff] [blame] | 49 | static const asn_TYPE_tag2member_t asn_MAP_T_tag2el_1[] = { |
Lev Walkin | 4062b01 | 2013-10-11 14:29:38 -0700 | [diff] [blame] | 50 | { (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)), 0, 0, 0 } /* bs */ |
Lev Walkin | b02a883 | 2005-08-13 23:51:47 +0000 | [diff] [blame] | 51 | }; |
Lev Walkin | 59b176e | 2005-11-26 11:25:14 +0000 | [diff] [blame] | 52 | static asn_CHOICE_specifics_t asn_SPC_T_specs_1 = { |
Lev Walkin | b02a883 | 2005-08-13 23:51:47 +0000 | [diff] [blame] | 53 | sizeof(struct T), |
| 54 | offsetof(struct T, _asn_ctx), |
| 55 | offsetof(struct T, present), |
| 56 | sizeof(((struct T *)0)->present), |
Lev Walkin | 59b176e | 2005-11-26 11:25:14 +0000 | [diff] [blame] | 57 | asn_MAP_T_tag2el_1, |
Lev Walkin | b02a883 | 2005-08-13 23:51:47 +0000 | [diff] [blame] | 58 | 1, /* Count of tags in the map */ |
Lev Walkin | 59b176e | 2005-11-26 11:25:14 +0000 | [diff] [blame] | 59 | .canonical_order = 0, |
| 60 | .ext_start = -1 /* Extensions start */ |
Lev Walkin | b02a883 | 2005-08-13 23:51:47 +0000 | [diff] [blame] | 61 | }; |
| 62 | asn_TYPE_descriptor_t asn_DEF_T = { |
| 63 | "T", |
| 64 | "T", |
| 65 | CHOICE_free, |
| 66 | CHOICE_print, |
Lev Walkin | cd2f48e | 2017-08-10 02:14:59 -0700 | [diff] [blame] | 67 | CHOICE_compare, |
Lev Walkin | b02a883 | 2005-08-13 23:51:47 +0000 | [diff] [blame] | 68 | CHOICE_constraint, |
| 69 | CHOICE_decode_ber, |
| 70 | CHOICE_encode_der, |
| 71 | CHOICE_decode_xer, |
| 72 | CHOICE_encode_xer, |
Lev Walkin | ba68c91 | 2017-07-06 07:52:39 -0700 | [diff] [blame] | 73 | 0, 0, /* No OER support, use "-gen-OER" to enable */ |
Lev Walkin | b33425f | 2017-07-14 14:59:52 +0400 | [diff] [blame] | 74 | 0, 0, /* No PER support, use "-gen-PER" to enable */ |
Lev Walkin | b02a883 | 2005-08-13 23:51:47 +0000 | [diff] [blame] | 75 | CHOICE_outmost_tag, |
| 76 | 0, /* No effective tags (pointer) */ |
| 77 | 0, /* No effective tags (count) */ |
| 78 | 0, /* No tags (pointer) */ |
| 79 | 0, /* No tags (count) */ |
Lev Walkin | b33425f | 2017-07-14 14:59:52 +0400 | [diff] [blame] | 80 | 0, /* No OER visible constraints */ |
Lev Walkin | 59b176e | 2005-11-26 11:25:14 +0000 | [diff] [blame] | 81 | 0, /* No PER visible constraints */ |
Lev Walkin | b02a883 | 2005-08-13 23:51:47 +0000 | [diff] [blame] | 82 | asn_MBR_T_1, |
| 83 | 1, /* Elements count */ |
Lev Walkin | 59b176e | 2005-11-26 11:25:14 +0000 | [diff] [blame] | 84 | &asn_SPC_T_specs_1 /* Additional specs */ |
Lev Walkin | b02a883 | 2005-08-13 23:51:47 +0000 | [diff] [blame] | 85 | }; |
| 86 | |