blob: 5956b580f7bc600ddb58e00325cf57d674c9be5b [file] [log] [blame]
Lev Walkinb02a8832005-08-13 23:51:47 +00001
2/*** <<< INCLUDES [T] >>> ***/
3
4#include <BIT_STRING.h>
5#include <constr_CHOICE.h>
6
7/*** <<< DEPS [T] >>> ***/
8
9typedef enum T_PR {
10 T_PR_NOTHING, /* No components present */
Lev Walkin9f5bb3a2006-08-18 01:46:46 +000011 T_PR_bs
Lev Walkinb02a8832005-08-13 23:51:47 +000012} T_PR;
13typedef enum T__bs {
14 T__bs_a = 1,
15 T__bs_b = 2
Lev Walkin171487e2006-03-21 07:25:18 +000016} e_T__bs;
Lev Walkinb02a8832005-08-13 23:51:47 +000017
18/*** <<< TYPE-DECLS [T] >>> ***/
19
20typedef struct T {
21 T_PR present;
Lev Walkin0f5d74c2005-08-14 15:03:31 +000022 union T_u {
Lev Walkinb02a8832005-08-13 23:51:47 +000023 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
32extern asn_TYPE_descriptor_t asn_DEF_T;
33
34/*** <<< STAT-DEFS [T] >>> ***/
35
36static 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 Walkinae7bf3f2005-08-29 10:31:14 +000040 .type = &asn_DEF_BIT_STRING,
Lev Walkin67a30122017-08-10 05:48:54 -070041 .type_selector = 0,
Lev Walkinb02a8832005-08-13 23:51:47 +000042 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +040043 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +000044 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
45 .default_value = 0,
Lev Walkinb02a8832005-08-13 23:51:47 +000046 .name = "bs"
47 },
48};
Lev Walkina7591b52014-10-12 18:37:35 -070049static const asn_TYPE_tag2member_t asn_MAP_T_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -070050 { (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)), 0, 0, 0 } /* bs */
Lev Walkinb02a8832005-08-13 23:51:47 +000051};
Lev Walkin59b176e2005-11-26 11:25:14 +000052static asn_CHOICE_specifics_t asn_SPC_T_specs_1 = {
Lev Walkinb02a8832005-08-13 23:51:47 +000053 sizeof(struct T),
54 offsetof(struct T, _asn_ctx),
55 offsetof(struct T, present),
56 sizeof(((struct T *)0)->present),
Lev Walkin59b176e2005-11-26 11:25:14 +000057 asn_MAP_T_tag2el_1,
Lev Walkinb02a8832005-08-13 23:51:47 +000058 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +000059 .canonical_order = 0,
60 .ext_start = -1 /* Extensions start */
Lev Walkinb02a8832005-08-13 23:51:47 +000061};
62asn_TYPE_descriptor_t asn_DEF_T = {
63 "T",
64 "T",
65 CHOICE_free,
66 CHOICE_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -070067 CHOICE_compare,
Lev Walkinb02a8832005-08-13 23:51:47 +000068 CHOICE_constraint,
69 CHOICE_decode_ber,
70 CHOICE_encode_der,
71 CHOICE_decode_xer,
72 CHOICE_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -070073 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +040074 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinb02a8832005-08-13 23:51:47 +000075 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 Walkinb33425f2017-07-14 14:59:52 +040080 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +000081 0, /* No PER visible constraints */
Lev Walkinb02a8832005-08-13 23:51:47 +000082 asn_MBR_T_1,
83 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +000084 &asn_SPC_T_specs_1 /* Additional specs */
Lev Walkinb02a8832005-08-13 23:51:47 +000085};
86