blob: 3c4ea4047f05f44a4532319dab3cfd36c7ec6632 [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 bs {
14 bs_a = 1,
15 bs_b = 2
Lev Walkin171487e2006-03-21 07:25:18 +000016} e_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 Walkinb02a8832005-08-13 23:51:47 +000041 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +000042 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
43 .default_value = 0,
Lev Walkinb02a8832005-08-13 23:51:47 +000044 .name = "bs"
45 },
46};
Lev Walkina7591b52014-10-12 18:37:35 -070047static const asn_TYPE_tag2member_t asn_MAP_T_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -070048 { (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)), 0, 0, 0 } /* bs */
Lev Walkinb02a8832005-08-13 23:51:47 +000049};
Lev Walkin59b176e2005-11-26 11:25:14 +000050static asn_CHOICE_specifics_t asn_SPC_T_specs_1 = {
Lev Walkinb02a8832005-08-13 23:51:47 +000051 sizeof(struct T),
52 offsetof(struct T, _asn_ctx),
53 offsetof(struct T, present),
54 sizeof(((struct T *)0)->present),
Lev Walkin59b176e2005-11-26 11:25:14 +000055 asn_MAP_T_tag2el_1,
Lev Walkinb02a8832005-08-13 23:51:47 +000056 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +000057 .canonical_order = 0,
58 .ext_start = -1 /* Extensions start */
Lev Walkinb02a8832005-08-13 23:51:47 +000059};
60asn_TYPE_descriptor_t asn_DEF_T = {
61 "T",
62 "T",
63 CHOICE_free,
64 CHOICE_print,
65 CHOICE_constraint,
66 CHOICE_decode_ber,
67 CHOICE_encode_der,
68 CHOICE_decode_xer,
69 CHOICE_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +000070 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinb02a8832005-08-13 23:51:47 +000071 CHOICE_outmost_tag,
72 0, /* No effective tags (pointer) */
73 0, /* No effective tags (count) */
74 0, /* No tags (pointer) */
75 0, /* No tags (count) */
Lev Walkin59b176e2005-11-26 11:25:14 +000076 0, /* No PER visible constraints */
Lev Walkinb02a8832005-08-13 23:51:47 +000077 asn_MBR_T_1,
78 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +000079 &asn_SPC_T_specs_1 /* Additional specs */
Lev Walkinb02a8832005-08-13 23:51:47 +000080};
81