blob: 5679887dcc600ccd5140686bb8880750da68114d [file] [log] [blame]
Lev Walkincee931e2005-08-16 16:56:59 +00001
2/*** <<< INCLUDES [Everything] >>> ***/
3
Lev Walkin22b5ed42006-09-13 02:51:20 +00004#include "Set.h"
5#include "Alpha.h"
6#include "Beta.h"
7#include "Gamma.h"
8#include "OneTwo.h"
9#include "TwoThree.h"
10#include "ThreeOne.h"
Lev Walkincee931e2005-08-16 16:56:59 +000011#include <constr_SEQUENCE.h>
12
Lev Walkinb85a8132005-08-18 13:38:19 +000013/*** <<< FWD-DECLS [Everything] >>> ***/
14
15struct Choice1;
16struct Choice2;
17struct Choice3;
18
Lev Walkincee931e2005-08-16 16:56:59 +000019/*** <<< TYPE-DECLS [Everything] >>> ***/
20
21typedef struct Everything {
Lev Walkinb85a8132005-08-18 13:38:19 +000022 struct Choice1 *ch1;
23 struct Choice2 *ch2;
24 struct Choice3 *ch3;
Lev Walkincee931e2005-08-16 16:56:59 +000025 Set_t set;
Lev Walkinb85a8132005-08-18 13:38:19 +000026 Alpha_t a;
27 Beta_t b;
28 Gamma_t g;
29 OneTwo_t ot;
30 TwoThree_t tt;
31 ThreeOne_t to;
Lev Walkincee931e2005-08-16 16:56:59 +000032
33 /* Context for parsing across buffer boundaries */
34 asn_struct_ctx_t _asn_ctx;
35} Everything_t;
36
37/*** <<< FUNC-DECLS [Everything] >>> ***/
38
39extern asn_TYPE_descriptor_t asn_DEF_Everything;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +080040extern asn_SEQUENCE_specifics_t asn_SPC_Everything_specs_1;
41extern asn_TYPE_member_t asn_MBR_Everything_1[10];
Lev Walkincee931e2005-08-16 16:56:59 +000042
Lev Walkinb85a8132005-08-18 13:38:19 +000043/*** <<< POST-INCLUDE [Everything] >>> ***/
44
Lev Walkin22b5ed42006-09-13 02:51:20 +000045#include "Choice1.h"
46#include "Choice2.h"
47#include "Choice3.h"
Lev Walkinb85a8132005-08-18 13:38:19 +000048
Lev Walkincee931e2005-08-16 16:56:59 +000049/*** <<< STAT-DEFS [Everything] >>> ***/
50
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +080051asn_TYPE_member_t asn_MBR_Everything_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +000052 { ATF_POINTER, 0, offsetof(struct Everything, ch1),
Lev Walkincee931e2005-08-16 16:56:59 +000053 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
54 .tag_mode = +1, /* EXPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +000055 .type = &asn_DEF_Choice1,
Lev Walkin67a30122017-08-10 05:48:54 -070056 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +000057 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +040058 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +000059 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
60 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +000061 .name = "ch1"
62 },
Lev Walkinb85a8132005-08-18 13:38:19 +000063 { ATF_POINTER, 0, offsetof(struct Everything, ch2),
Lev Walkincee931e2005-08-16 16:56:59 +000064 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
65 .tag_mode = +1, /* EXPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +000066 .type = &asn_DEF_Choice2,
Lev Walkin67a30122017-08-10 05:48:54 -070067 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +000068 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +040069 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +000070 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
71 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +000072 .name = "ch2"
73 },
Lev Walkinb85a8132005-08-18 13:38:19 +000074 { ATF_POINTER, 0, offsetof(struct Everything, ch3),
Lev Walkincee931e2005-08-16 16:56:59 +000075 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
Lev Walkinb85a8132005-08-18 13:38:19 +000076 .tag_mode = +1, /* EXPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +000077 .type = &asn_DEF_Choice3,
Lev Walkin67a30122017-08-10 05:48:54 -070078 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +000079 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +040080 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +000081 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
82 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +000083 .name = "ch3"
84 },
85 { ATF_NOFLAGS, 0, offsetof(struct Everything, set),
86 .tag = (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
Lev Walkincee931e2005-08-16 16:56:59 +000087 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +000088 .type = &asn_DEF_Set,
Lev Walkin67a30122017-08-10 05:48:54 -070089 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +000090 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +040091 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +000092 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
93 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +000094 .name = "set"
95 },
Lev Walkinb85a8132005-08-18 13:38:19 +000096 { ATF_NOFLAGS, 0, offsetof(struct Everything, a),
97 .tag = (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
98 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +000099 .type = &asn_DEF_Alpha,
Lev Walkin67a30122017-08-10 05:48:54 -0700100 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000101 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400102 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000103 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
104 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000105 .name = "a"
106 },
107 { ATF_NOFLAGS, 0, offsetof(struct Everything, b),
108 .tag = (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
109 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000110 .type = &asn_DEF_Beta,
Lev Walkin67a30122017-08-10 05:48:54 -0700111 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000112 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400113 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000114 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
115 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000116 .name = "b"
117 },
118 { ATF_NOFLAGS, 0, offsetof(struct Everything, g),
119 .tag = (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
120 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000121 .type = &asn_DEF_Gamma,
Lev Walkin67a30122017-08-10 05:48:54 -0700122 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000123 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400124 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000125 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
126 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000127 .name = "g"
128 },
129 { ATF_NOFLAGS, 0, offsetof(struct Everything, ot),
130 .tag = (ASN_TAG_CLASS_CONTEXT | (7 << 2)),
131 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000132 .type = &asn_DEF_OneTwo,
Lev Walkin67a30122017-08-10 05:48:54 -0700133 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000134 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400135 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000136 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
137 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000138 .name = "ot"
139 },
140 { ATF_NOFLAGS, 0, offsetof(struct Everything, tt),
141 .tag = (ASN_TAG_CLASS_CONTEXT | (8 << 2)),
142 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000143 .type = &asn_DEF_TwoThree,
Lev Walkin67a30122017-08-10 05:48:54 -0700144 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000145 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400146 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000147 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
148 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000149 .name = "tt"
150 },
151 { ATF_NOFLAGS, 0, offsetof(struct Everything, to),
152 .tag = (ASN_TAG_CLASS_CONTEXT | (9 << 2)),
153 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000154 .type = &asn_DEF_ThreeOne,
Lev Walkin67a30122017-08-10 05:48:54 -0700155 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000156 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400157 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000158 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
159 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000160 .name = "to"
161 },
Lev Walkincee931e2005-08-16 16:56:59 +0000162};
Lev Walkina7591b52014-10-12 18:37:35 -0700163static const ber_tlv_tag_t asn_DEF_Everything_tags_1[] = {
Lev Walkincee931e2005-08-16 16:56:59 +0000164 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
165};
Lev Walkina7591b52014-10-12 18:37:35 -0700166static const asn_TYPE_tag2member_t asn_MAP_Everything_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700167 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ch1 */
168 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ch2 */
169 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ch3 */
170 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* set */
171 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* a */
172 { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* b */
173 { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* g */
174 { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* ot */
175 { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* tt */
176 { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* to */
Lev Walkincee931e2005-08-16 16:56:59 +0000177};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800178asn_SEQUENCE_specifics_t asn_SPC_Everything_specs_1 = {
Lev Walkincee931e2005-08-16 16:56:59 +0000179 sizeof(struct Everything),
180 offsetof(struct Everything, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -0700181 .tag2el = asn_MAP_Everything_tag2el_1,
182 .tag2el_count = 10, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000183 0, 0, 0, /* Optional elements (not needed) */
Lev Walkincee931e2005-08-16 16:56:59 +0000184 -1, /* Start extensions */
185 -1 /* Stop extensions */
186};
187asn_TYPE_descriptor_t asn_DEF_Everything = {
188 "Everything",
189 "Everything",
190 SEQUENCE_free,
191 SEQUENCE_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -0700192 SEQUENCE_compare,
Lev Walkincee931e2005-08-16 16:56:59 +0000193 SEQUENCE_constraint,
194 SEQUENCE_decode_ber,
195 SEQUENCE_encode_der,
196 SEQUENCE_decode_xer,
197 SEQUENCE_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -0700198 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +0400199 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkincee931e2005-08-16 16:56:59 +0000200 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000201 asn_DEF_Everything_tags_1,
202 sizeof(asn_DEF_Everything_tags_1)
203 /sizeof(asn_DEF_Everything_tags_1[0]), /* 1 */
204 asn_DEF_Everything_tags_1, /* Same as above */
205 sizeof(asn_DEF_Everything_tags_1)
206 /sizeof(asn_DEF_Everything_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400207 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000208 0, /* No PER visible constraints */
Lev Walkincee931e2005-08-16 16:56:59 +0000209 asn_MBR_Everything_1,
Lev Walkinb85a8132005-08-18 13:38:19 +0000210 10, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000211 &asn_SPC_Everything_specs_1 /* Additional specs */
Lev Walkincee931e2005-08-16 16:56:59 +0000212};
213
214
215/*** <<< INCLUDES [Choice1] >>> ***/
216
217#include <constr_CHOICE.h>
218
219/*** <<< DEPS [Choice1] >>> ***/
220
221typedef enum Choice1_PR {
222 Choice1_PR_NOTHING, /* No components present */
223 Choice1_PR_something,
224 /* Extensions may appear below */
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000225 Choice1_PR_some2
Lev Walkincee931e2005-08-16 16:56:59 +0000226} Choice1_PR;
227
228/*** <<< FWD-DECLS [Choice1] >>> ***/
229
230struct Everything;
231
232/*** <<< TYPE-DECLS [Choice1] >>> ***/
233
234typedef struct Choice1 {
235 Choice1_PR present;
236 union Choice1_u {
237 struct Everything *something;
238 /*
239 * This type is extensible,
240 * possible extensions are below.
241 */
242 struct Everything *some2;
243 } choice;
244
245 /* Context for parsing across buffer boundaries */
246 asn_struct_ctx_t _asn_ctx;
247} Choice1_t;
248
249/*** <<< FUNC-DECLS [Choice1] >>> ***/
250
251extern asn_TYPE_descriptor_t asn_DEF_Choice1;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800252extern asn_CHOICE_specifics_t asn_SPC_Choice1_specs_1;
253extern asn_TYPE_member_t asn_MBR_Choice1_1[2];
Lev Walkincee931e2005-08-16 16:56:59 +0000254
255/*** <<< POST-INCLUDE [Choice1] >>> ***/
256
Lev Walkin22b5ed42006-09-13 02:51:20 +0000257#include "Everything.h"
Lev Walkincee931e2005-08-16 16:56:59 +0000258
259/*** <<< STAT-DEFS [Choice1] >>> ***/
260
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800261asn_TYPE_member_t asn_MBR_Choice1_1[] = {
Lev Walkincee931e2005-08-16 16:56:59 +0000262 { ATF_POINTER, 0, offsetof(struct Choice1, choice.something),
263 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
264 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000265 .type = &asn_DEF_Everything,
Lev Walkin67a30122017-08-10 05:48:54 -0700266 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000267 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400268 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000269 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
270 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000271 .name = "something"
272 },
273 { ATF_POINTER, 0, offsetof(struct Choice1, choice.some2),
274 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
275 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000276 .type = &asn_DEF_Everything,
Lev Walkin67a30122017-08-10 05:48:54 -0700277 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000278 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400279 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000280 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
281 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000282 .name = "some2"
283 },
284};
Lev Walkina7591b52014-10-12 18:37:35 -0700285static const asn_TYPE_tag2member_t asn_MAP_Choice1_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700286 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* something */
287 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* some2 */
Lev Walkincee931e2005-08-16 16:56:59 +0000288};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800289asn_CHOICE_specifics_t asn_SPC_Choice1_specs_1 = {
Lev Walkincee931e2005-08-16 16:56:59 +0000290 sizeof(struct Choice1),
291 offsetof(struct Choice1, _asn_ctx),
292 offsetof(struct Choice1, present),
293 sizeof(((struct Choice1 *)0)->present),
Lev Walkine3917082017-08-23 10:29:38 -0700294 .tag2el = asn_MAP_Choice1_tag2el_1,
295 .tag2el_count = 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000296 .canonical_order = 0,
297 .ext_start = 1 /* Extensions start */
Lev Walkincee931e2005-08-16 16:56:59 +0000298};
299asn_TYPE_descriptor_t asn_DEF_Choice1 = {
300 "Choice1",
301 "Choice1",
302 CHOICE_free,
303 CHOICE_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -0700304 CHOICE_compare,
Lev Walkincee931e2005-08-16 16:56:59 +0000305 CHOICE_constraint,
306 CHOICE_decode_ber,
307 CHOICE_encode_der,
308 CHOICE_decode_xer,
309 CHOICE_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -0700310 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +0400311 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkincee931e2005-08-16 16:56:59 +0000312 CHOICE_outmost_tag,
313 0, /* No effective tags (pointer) */
314 0, /* No effective tags (count) */
315 0, /* No tags (pointer) */
316 0, /* No tags (count) */
Lev Walkinb33425f2017-07-14 14:59:52 +0400317 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000318 0, /* No PER visible constraints */
Lev Walkincee931e2005-08-16 16:56:59 +0000319 asn_MBR_Choice1_1,
320 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000321 &asn_SPC_Choice1_specs_1 /* Additional specs */
Lev Walkincee931e2005-08-16 16:56:59 +0000322};
323
324
325/*** <<< INCLUDES [Choice2] >>> ***/
326
327#include <constr_CHOICE.h>
328
329/*** <<< DEPS [Choice2] >>> ***/
330
331typedef enum Choice2_PR {
332 Choice2_PR_NOTHING, /* No components present */
Lev Walkinb85a8132005-08-18 13:38:19 +0000333 Choice2_PR_typeref,
Lev Walkincee931e2005-08-16 16:56:59 +0000334 /* Extensions may appear below */
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000335 Choice2_PR_some3
Lev Walkincee931e2005-08-16 16:56:59 +0000336} Choice2_PR;
337
338/*** <<< FWD-DECLS [Choice2] >>> ***/
339
Lev Walkinb85a8132005-08-18 13:38:19 +0000340struct Sequence;
Lev Walkincee931e2005-08-16 16:56:59 +0000341struct Everything;
342
343/*** <<< TYPE-DECLS [Choice2] >>> ***/
344
345typedef struct Choice2 {
346 Choice2_PR present;
347 union Choice2_u {
Lev Walkinb85a8132005-08-18 13:38:19 +0000348 struct Sequence *typeref;
Lev Walkincee931e2005-08-16 16:56:59 +0000349 /*
350 * This type is extensible,
351 * possible extensions are below.
352 */
353 struct Everything *some3;
354 } choice;
355
356 /* Context for parsing across buffer boundaries */
357 asn_struct_ctx_t _asn_ctx;
358} Choice2_t;
359
360/*** <<< FUNC-DECLS [Choice2] >>> ***/
361
362extern asn_TYPE_descriptor_t asn_DEF_Choice2;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800363extern asn_CHOICE_specifics_t asn_SPC_Choice2_specs_1;
364extern asn_TYPE_member_t asn_MBR_Choice2_1[2];
Lev Walkincee931e2005-08-16 16:56:59 +0000365
366/*** <<< POST-INCLUDE [Choice2] >>> ***/
367
Lev Walkin22b5ed42006-09-13 02:51:20 +0000368#include "TypeRef.h"
369#include "Everything.h"
Lev Walkincee931e2005-08-16 16:56:59 +0000370
371/*** <<< STAT-DEFS [Choice2] >>> ***/
372
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800373asn_TYPE_member_t asn_MBR_Choice2_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000374 { ATF_POINTER, 0, offsetof(struct Choice2, choice.typeref),
Lev Walkincee931e2005-08-16 16:56:59 +0000375 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
376 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000377 .type = &asn_DEF_TypeRef,
Lev Walkin67a30122017-08-10 05:48:54 -0700378 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000379 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400380 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000381 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
382 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000383 .name = "typeref"
384 },
385 { ATF_POINTER, 0, offsetof(struct Choice2, choice.some3),
386 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
387 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000388 .type = &asn_DEF_Everything,
Lev Walkin67a30122017-08-10 05:48:54 -0700389 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000390 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400391 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000392 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
393 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000394 .name = "some3"
395 },
396};
Lev Walkina7591b52014-10-12 18:37:35 -0700397static const asn_TYPE_tag2member_t asn_MAP_Choice2_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700398 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* typeref */
399 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* some3 */
Lev Walkincee931e2005-08-16 16:56:59 +0000400};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800401asn_CHOICE_specifics_t asn_SPC_Choice2_specs_1 = {
Lev Walkincee931e2005-08-16 16:56:59 +0000402 sizeof(struct Choice2),
403 offsetof(struct Choice2, _asn_ctx),
404 offsetof(struct Choice2, present),
405 sizeof(((struct Choice2 *)0)->present),
Lev Walkine3917082017-08-23 10:29:38 -0700406 .tag2el = asn_MAP_Choice2_tag2el_1,
407 .tag2el_count = 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000408 .canonical_order = 0,
409 .ext_start = 1 /* Extensions start */
Lev Walkincee931e2005-08-16 16:56:59 +0000410};
411asn_TYPE_descriptor_t asn_DEF_Choice2 = {
412 "Choice2",
413 "Choice2",
414 CHOICE_free,
415 CHOICE_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -0700416 CHOICE_compare,
Lev Walkincee931e2005-08-16 16:56:59 +0000417 CHOICE_constraint,
418 CHOICE_decode_ber,
419 CHOICE_encode_der,
420 CHOICE_decode_xer,
421 CHOICE_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -0700422 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +0400423 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkincee931e2005-08-16 16:56:59 +0000424 CHOICE_outmost_tag,
425 0, /* No effective tags (pointer) */
426 0, /* No effective tags (count) */
427 0, /* No tags (pointer) */
428 0, /* No tags (count) */
Lev Walkinb33425f2017-07-14 14:59:52 +0400429 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000430 0, /* No PER visible constraints */
Lev Walkincee931e2005-08-16 16:56:59 +0000431 asn_MBR_Choice2_1,
Lev Walkinb85a8132005-08-18 13:38:19 +0000432 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000433 &asn_SPC_Choice2_specs_1 /* Additional specs */
Lev Walkincee931e2005-08-16 16:56:59 +0000434};
435
436
Lev Walkinb85a8132005-08-18 13:38:19 +0000437/*** <<< INCLUDES [Choice3] >>> ***/
438
439#include <constr_SEQUENCE.h>
440#include <asn_SEQUENCE_OF.h>
441#include <constr_SEQUENCE_OF.h>
442#include <constr_CHOICE.h>
443
444/*** <<< DEPS [Choice3] >>> ***/
445
446typedef enum Choice3_PR {
447 Choice3_PR_NOTHING, /* No components present */
448 Choice3_PR_a,
449 Choice3_PR_b,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000450 Choice3_PR_c
Lev Walkinb85a8132005-08-18 13:38:19 +0000451} Choice3_PR;
452
453/*** <<< FWD-DECLS [Choice3] >>> ***/
454
455struct Everything;
456struct Choice3;
457
458/*** <<< TYPE-DECLS [Choice3] >>> ***/
459
460typedef struct Choice3 {
461 Choice3_PR present;
462 union Choice3_u {
463 struct a {
464 struct Everything *aa;
465
466 /* Context for parsing across buffer boundaries */
467 asn_struct_ctx_t _asn_ctx;
468 } *a;
469 struct Everything *b;
470 struct c {
471 A_SEQUENCE_OF(struct Choice3) list;
472
473 /* Context for parsing across buffer boundaries */
474 asn_struct_ctx_t _asn_ctx;
475 } *c;
476 } choice;
477
478 /* Context for parsing across buffer boundaries */
479 asn_struct_ctx_t _asn_ctx;
480} Choice3_t;
481
482/*** <<< FUNC-DECLS [Choice3] >>> ***/
483
484extern asn_TYPE_descriptor_t asn_DEF_Choice3;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800485extern asn_CHOICE_specifics_t asn_SPC_Choice3_specs_1;
486extern asn_TYPE_member_t asn_MBR_Choice3_1[3];
Lev Walkinb85a8132005-08-18 13:38:19 +0000487
488/*** <<< POST-INCLUDE [Choice3] >>> ***/
489
Lev Walkin22b5ed42006-09-13 02:51:20 +0000490#include "Everything.h"
491#include "Choice3.h"
Lev Walkinb85a8132005-08-18 13:38:19 +0000492
493/*** <<< STAT-DEFS [Choice3] >>> ***/
494
495static asn_TYPE_member_t asn_MBR_a_2[] = {
496 { ATF_POINTER, 0, offsetof(struct a, aa),
497 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
498 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000499 .type = &asn_DEF_Everything,
Lev Walkin67a30122017-08-10 05:48:54 -0700500 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000501 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400502 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000503 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
504 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000505 .name = "aa"
506 },
507};
Lev Walkina7591b52014-10-12 18:37:35 -0700508static const ber_tlv_tag_t asn_DEF_a_tags_2[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000509 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
510 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
511};
Lev Walkina7591b52014-10-12 18:37:35 -0700512static const asn_TYPE_tag2member_t asn_MAP_a_tag2el_2[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700513 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* aa */
Lev Walkinb85a8132005-08-18 13:38:19 +0000514};
Lev Walkin59b176e2005-11-26 11:25:14 +0000515static asn_SEQUENCE_specifics_t asn_SPC_a_specs_2 = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000516 sizeof(struct a),
517 offsetof(struct a, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -0700518 .tag2el = asn_MAP_a_tag2el_2,
519 .tag2el_count = 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000520 0, 0, 0, /* Optional elements (not needed) */
Lev Walkinb85a8132005-08-18 13:38:19 +0000521 -1, /* Start extensions */
522 -1 /* Stop extensions */
523};
524static /* Use -fall-defs-global to expose */
525asn_TYPE_descriptor_t asn_DEF_a_2 = {
526 "a",
527 "a",
528 SEQUENCE_free,
529 SEQUENCE_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -0700530 SEQUENCE_compare,
Lev Walkinb85a8132005-08-18 13:38:19 +0000531 SEQUENCE_constraint,
532 SEQUENCE_decode_ber,
533 SEQUENCE_encode_der,
534 SEQUENCE_decode_xer,
535 SEQUENCE_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -0700536 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +0400537 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinb85a8132005-08-18 13:38:19 +0000538 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000539 asn_DEF_a_tags_2,
540 sizeof(asn_DEF_a_tags_2)
541 /sizeof(asn_DEF_a_tags_2[0]) - 1, /* 1 */
542 asn_DEF_a_tags_2, /* Same as above */
543 sizeof(asn_DEF_a_tags_2)
544 /sizeof(asn_DEF_a_tags_2[0]), /* 2 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400545 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000546 0, /* No PER visible constraints */
Lev Walkinb85a8132005-08-18 13:38:19 +0000547 asn_MBR_a_2,
548 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000549 &asn_SPC_a_specs_2 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +0000550};
551
552static asn_TYPE_member_t asn_MBR_c_5[] = {
553 { ATF_POINTER, 0, 0,
554 .tag = -1 /* Ambiguous tag (CHOICE?) */,
555 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000556 .type = &asn_DEF_Choice3,
Lev Walkin67a30122017-08-10 05:48:54 -0700557 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000558 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400559 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000560 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
561 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000562 .name = ""
563 },
564};
Lev Walkina7591b52014-10-12 18:37:35 -0700565static const ber_tlv_tag_t asn_DEF_c_tags_5[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000566 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
567 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
568};
Lev Walkin59b176e2005-11-26 11:25:14 +0000569static asn_SET_OF_specifics_t asn_SPC_c_specs_5 = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000570 sizeof(struct c),
571 offsetof(struct c, _asn_ctx),
Lev Walkind1bfea62005-11-08 03:06:16 +0000572 2, /* XER encoding is XMLValueList */
Lev Walkinb85a8132005-08-18 13:38:19 +0000573};
574static /* Use -fall-defs-global to expose */
575asn_TYPE_descriptor_t asn_DEF_c_5 = {
576 "c",
577 "c",
578 SEQUENCE_OF_free,
579 SEQUENCE_OF_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -0700580 SEQUENCE_OF_compare,
Lev Walkinb85a8132005-08-18 13:38:19 +0000581 SEQUENCE_OF_constraint,
582 SEQUENCE_OF_decode_ber,
583 SEQUENCE_OF_encode_der,
584 SEQUENCE_OF_decode_xer,
585 SEQUENCE_OF_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -0700586 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +0400587 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinb85a8132005-08-18 13:38:19 +0000588 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000589 asn_DEF_c_tags_5,
590 sizeof(asn_DEF_c_tags_5)
591 /sizeof(asn_DEF_c_tags_5[0]) - 1, /* 1 */
592 asn_DEF_c_tags_5, /* Same as above */
593 sizeof(asn_DEF_c_tags_5)
594 /sizeof(asn_DEF_c_tags_5[0]), /* 2 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400595 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000596 0, /* No PER visible constraints */
Lev Walkinb85a8132005-08-18 13:38:19 +0000597 asn_MBR_c_5,
598 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +0000599 &asn_SPC_c_specs_5 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +0000600};
601
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800602asn_TYPE_member_t asn_MBR_Choice3_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000603 { ATF_POINTER, 0, offsetof(struct Choice3, choice.a),
604 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
Lev Walkin9ab21b82006-10-19 02:46:01 +0000605 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000606 .type = &asn_DEF_a_2,
Lev Walkin67a30122017-08-10 05:48:54 -0700607 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000608 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400609 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000610 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
611 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000612 .name = "a"
613 },
614 { ATF_POINTER, 0, offsetof(struct Choice3, choice.b),
615 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
616 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000617 .type = &asn_DEF_Everything,
Lev Walkin67a30122017-08-10 05:48:54 -0700618 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000619 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400620 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000621 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
622 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000623 .name = "b"
624 },
625 { ATF_POINTER, 0, offsetof(struct Choice3, choice.c),
626 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
Lev Walkin9ab21b82006-10-19 02:46:01 +0000627 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000628 .type = &asn_DEF_c_5,
Lev Walkin67a30122017-08-10 05:48:54 -0700629 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000630 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400631 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000632 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
633 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000634 .name = "c"
635 },
636};
Lev Walkina7591b52014-10-12 18:37:35 -0700637static const asn_TYPE_tag2member_t asn_MAP_Choice3_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700638 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* a */
639 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* b */
640 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* c */
Lev Walkinb85a8132005-08-18 13:38:19 +0000641};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800642asn_CHOICE_specifics_t asn_SPC_Choice3_specs_1 = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000643 sizeof(struct Choice3),
644 offsetof(struct Choice3, _asn_ctx),
645 offsetof(struct Choice3, present),
646 sizeof(((struct Choice3 *)0)->present),
Lev Walkine3917082017-08-23 10:29:38 -0700647 .tag2el = asn_MAP_Choice3_tag2el_1,
648 .tag2el_count = 3, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000649 .canonical_order = 0,
650 .ext_start = -1 /* Extensions start */
Lev Walkinb85a8132005-08-18 13:38:19 +0000651};
652asn_TYPE_descriptor_t asn_DEF_Choice3 = {
653 "Choice3",
654 "Choice3",
655 CHOICE_free,
656 CHOICE_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -0700657 CHOICE_compare,
Lev Walkinb85a8132005-08-18 13:38:19 +0000658 CHOICE_constraint,
659 CHOICE_decode_ber,
660 CHOICE_encode_der,
661 CHOICE_decode_xer,
662 CHOICE_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -0700663 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +0400664 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinb85a8132005-08-18 13:38:19 +0000665 CHOICE_outmost_tag,
666 0, /* No effective tags (pointer) */
667 0, /* No effective tags (count) */
668 0, /* No tags (pointer) */
669 0, /* No tags (count) */
Lev Walkinb33425f2017-07-14 14:59:52 +0400670 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000671 0, /* No PER visible constraints */
Lev Walkinb85a8132005-08-18 13:38:19 +0000672 asn_MBR_Choice3_1,
673 3, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000674 &asn_SPC_Choice3_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +0000675};
676
677
Lev Walkincee931e2005-08-16 16:56:59 +0000678/*** <<< INCLUDES [Set] >>> ***/
679
680#include <asn_SET_OF.h>
Lev Walkin2a744a72013-03-27 01:56:23 -0700681#include <NativeInteger.h>
Lev Walkincee931e2005-08-16 16:56:59 +0000682#include <constr_SEQUENCE.h>
683#include <constr_SET_OF.h>
684
685/*** <<< FWD-DECLS [Set] >>> ***/
686
687struct Set;
Lev Walkinb85a8132005-08-18 13:38:19 +0000688struct Sequence;
Lev Walkincee931e2005-08-16 16:56:59 +0000689
Bi-Ruei, Chiu9b87e5b2016-06-06 00:23:16 +0800690/*** <<< FWD-DEFS [Set] >>> ***/
691
692typedef struct Member {
693 long Int;
694 struct Set *set;
695 struct Sequence *seq;
696 struct Set *set2 /* OPTIONAL */;
697 /*
698 * This type is extensible,
699 * possible extensions are below.
700 */
701 struct Set *set3;
702
703 /* Context for parsing across buffer boundaries */
704 asn_struct_ctx_t _asn_ctx;
705} Member;
706
Lev Walkincee931e2005-08-16 16:56:59 +0000707/*** <<< TYPE-DECLS [Set] >>> ***/
708
709typedef struct Set {
Bi-Ruei, Chiu9b87e5b2016-06-06 00:23:16 +0800710 A_SET_OF(Member) list;
Lev Walkincee931e2005-08-16 16:56:59 +0000711
712 /* Context for parsing across buffer boundaries */
713 asn_struct_ctx_t _asn_ctx;
714} Set_t;
715
716/*** <<< FUNC-DECLS [Set] >>> ***/
717
718extern asn_TYPE_descriptor_t asn_DEF_Set;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800719extern asn_SET_OF_specifics_t asn_SPC_Set_specs_1;
720extern asn_TYPE_member_t asn_MBR_Set_1[1];
Lev Walkincee931e2005-08-16 16:56:59 +0000721
722/*** <<< POST-INCLUDE [Set] >>> ***/
723
Lev Walkin22b5ed42006-09-13 02:51:20 +0000724#include "Set.h"
725#include "Sequence.h"
Lev Walkincee931e2005-08-16 16:56:59 +0000726
727/*** <<< STAT-DEFS [Set] >>> ***/
728
729static asn_TYPE_member_t asn_MBR_Member_2[] = {
730 { ATF_NOFLAGS, 0, offsetof(struct Member, Int),
731 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
732 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkin2a744a72013-03-27 01:56:23 -0700733 .type = &asn_DEF_NativeInteger,
Lev Walkin67a30122017-08-10 05:48:54 -0700734 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000735 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400736 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000737 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
738 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000739 .name = "int"
740 },
741 { ATF_POINTER, 0, offsetof(struct Member, set),
742 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
743 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000744 .type = &asn_DEF_Set,
Lev Walkin67a30122017-08-10 05:48:54 -0700745 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000746 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400747 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000748 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
749 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000750 .name = "set"
751 },
Lev Walkinb85a8132005-08-18 13:38:19 +0000752 { ATF_POINTER, 0, offsetof(struct Member, seq),
Lev Walkincee931e2005-08-16 16:56:59 +0000753 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
754 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000755 .type = &asn_DEF_Sequence,
Lev Walkin67a30122017-08-10 05:48:54 -0700756 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000757 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400758 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000759 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
760 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000761 .name = "seq"
762 },
763 { ATF_POINTER, 2, offsetof(struct Member, set2),
764 .tag = (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
765 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000766 .type = &asn_DEF_Set,
Lev Walkin67a30122017-08-10 05:48:54 -0700767 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000768 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400769 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000770 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
771 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000772 .name = "set2"
773 },
Lev Walkinb85a8132005-08-18 13:38:19 +0000774 { ATF_POINTER, 1, offsetof(struct Member, set3),
Lev Walkincee931e2005-08-16 16:56:59 +0000775 .tag = (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
776 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000777 .type = &asn_DEF_Set,
Lev Walkin67a30122017-08-10 05:48:54 -0700778 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000779 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400780 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000781 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
782 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000783 .name = "set3"
784 },
785};
Lev Walkina7591b52014-10-12 18:37:35 -0700786static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = {
Lev Walkincee931e2005-08-16 16:56:59 +0000787 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
788};
Lev Walkina7591b52014-10-12 18:37:35 -0700789static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700790 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* int */
791 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* set */
792 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* seq */
793 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* set2 */
794 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* set3 */
Lev Walkincee931e2005-08-16 16:56:59 +0000795};
Lev Walkin59b176e2005-11-26 11:25:14 +0000796static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = {
Lev Walkincee931e2005-08-16 16:56:59 +0000797 sizeof(struct Member),
798 offsetof(struct Member, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -0700799 .tag2el = asn_MAP_Member_tag2el_2,
800 .tag2el_count = 5, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000801 0, 0, 0, /* Optional elements (not needed) */
Lev Walkincee931e2005-08-16 16:56:59 +0000802 3, /* Start extensions */
803 6 /* Stop extensions */
804};
805static /* Use -fall-defs-global to expose */
806asn_TYPE_descriptor_t asn_DEF_Member_2 = {
Lev Walkin59b176e2005-11-26 11:25:14 +0000807 "SEQUENCE",
808 "SEQUENCE",
Lev Walkincee931e2005-08-16 16:56:59 +0000809 SEQUENCE_free,
810 SEQUENCE_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -0700811 SEQUENCE_compare,
Lev Walkincee931e2005-08-16 16:56:59 +0000812 SEQUENCE_constraint,
813 SEQUENCE_decode_ber,
814 SEQUENCE_encode_der,
815 SEQUENCE_decode_xer,
816 SEQUENCE_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -0700817 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +0400818 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkincee931e2005-08-16 16:56:59 +0000819 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000820 asn_DEF_Member_tags_2,
821 sizeof(asn_DEF_Member_tags_2)
822 /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */
823 asn_DEF_Member_tags_2, /* Same as above */
824 sizeof(asn_DEF_Member_tags_2)
825 /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400826 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000827 0, /* No PER visible constraints */
Lev Walkincee931e2005-08-16 16:56:59 +0000828 asn_MBR_Member_2,
829 5, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000830 &asn_SPC_Member_specs_2 /* Additional specs */
Lev Walkincee931e2005-08-16 16:56:59 +0000831};
832
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800833asn_TYPE_member_t asn_MBR_Set_1[] = {
Lev Walkincee931e2005-08-16 16:56:59 +0000834 { ATF_POINTER, 0, 0,
835 .tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
836 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000837 .type = &asn_DEF_Member_2,
Lev Walkin67a30122017-08-10 05:48:54 -0700838 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000839 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400840 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000841 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
842 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000843 .name = ""
844 },
845};
Lev Walkina7591b52014-10-12 18:37:35 -0700846static const ber_tlv_tag_t asn_DEF_Set_tags_1[] = {
Lev Walkincee931e2005-08-16 16:56:59 +0000847 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
848};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800849asn_SET_OF_specifics_t asn_SPC_Set_specs_1 = {
Lev Walkincee931e2005-08-16 16:56:59 +0000850 sizeof(struct Set),
851 offsetof(struct Set, _asn_ctx),
852 0, /* XER encoding is XMLDelimitedItemList */
853};
854asn_TYPE_descriptor_t asn_DEF_Set = {
855 "Set",
856 "Set",
857 SET_OF_free,
858 SET_OF_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -0700859 SET_OF_compare,
Lev Walkincee931e2005-08-16 16:56:59 +0000860 SET_OF_constraint,
861 SET_OF_decode_ber,
862 SET_OF_encode_der,
863 SET_OF_decode_xer,
864 SET_OF_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -0700865 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +0400866 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkincee931e2005-08-16 16:56:59 +0000867 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000868 asn_DEF_Set_tags_1,
869 sizeof(asn_DEF_Set_tags_1)
870 /sizeof(asn_DEF_Set_tags_1[0]), /* 1 */
871 asn_DEF_Set_tags_1, /* Same as above */
872 sizeof(asn_DEF_Set_tags_1)
873 /sizeof(asn_DEF_Set_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400874 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000875 0, /* No PER visible constraints */
Lev Walkincee931e2005-08-16 16:56:59 +0000876 asn_MBR_Set_1,
877 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +0000878 &asn_SPC_Set_specs_1 /* Additional specs */
Lev Walkincee931e2005-08-16 16:56:59 +0000879};
880
881
882/*** <<< INCLUDES [Sequence] >>> ***/
883
Lev Walkin2a744a72013-03-27 01:56:23 -0700884#include <NativeInteger.h>
Lev Walkincee931e2005-08-16 16:56:59 +0000885#include <constr_SEQUENCE.h>
886
887/*** <<< FWD-DECLS [Sequence] >>> ***/
888
889struct Sequence;
890struct Set;
891
892/*** <<< TYPE-DECLS [Sequence] >>> ***/
893
894typedef struct Sequence {
Lev Walkin2a744a72013-03-27 01:56:23 -0700895 long a;
Lev Walkincee931e2005-08-16 16:56:59 +0000896 struct Sequence *seq /* OPTIONAL */;
897 /*
898 * This type is extensible,
899 * possible extensions are below.
900 */
Lev Walkin2a744a72013-03-27 01:56:23 -0700901 long *b;
Lev Walkincee931e2005-08-16 16:56:59 +0000902 struct Set *set /* OPTIONAL */;
903
904 /* Context for parsing across buffer boundaries */
905 asn_struct_ctx_t _asn_ctx;
906} Sequence_t;
907
908/*** <<< FUNC-DECLS [Sequence] >>> ***/
909
910extern asn_TYPE_descriptor_t asn_DEF_Sequence;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800911extern asn_SEQUENCE_specifics_t asn_SPC_Sequence_specs_1;
912extern asn_TYPE_member_t asn_MBR_Sequence_1[4];
Lev Walkincee931e2005-08-16 16:56:59 +0000913
914/*** <<< POST-INCLUDE [Sequence] >>> ***/
915
Lev Walkin22b5ed42006-09-13 02:51:20 +0000916#include "Sequence.h"
917#include "Set.h"
Lev Walkincee931e2005-08-16 16:56:59 +0000918
919/*** <<< STAT-DEFS [Sequence] >>> ***/
920
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800921asn_TYPE_member_t asn_MBR_Sequence_1[] = {
Lev Walkincee931e2005-08-16 16:56:59 +0000922 { ATF_NOFLAGS, 0, offsetof(struct Sequence, a),
923 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
924 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkin2a744a72013-03-27 01:56:23 -0700925 .type = &asn_DEF_NativeInteger,
Lev Walkin67a30122017-08-10 05:48:54 -0700926 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000927 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400928 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000929 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
930 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000931 .name = "a"
932 },
933 { ATF_POINTER, 3, offsetof(struct Sequence, seq),
934 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
935 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000936 .type = &asn_DEF_Sequence,
Lev Walkin67a30122017-08-10 05:48:54 -0700937 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000938 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400939 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000940 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
941 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000942 .name = "seq"
943 },
Lev Walkinb85a8132005-08-18 13:38:19 +0000944 { ATF_POINTER, 2, offsetof(struct Sequence, b),
Lev Walkincee931e2005-08-16 16:56:59 +0000945 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
946 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkin2a744a72013-03-27 01:56:23 -0700947 .type = &asn_DEF_NativeInteger,
Lev Walkin67a30122017-08-10 05:48:54 -0700948 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000949 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400950 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000951 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
952 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000953 .name = "b"
954 },
955 { ATF_POINTER, 1, offsetof(struct Sequence, set),
956 .tag = (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
957 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000958 .type = &asn_DEF_Set,
Lev Walkin67a30122017-08-10 05:48:54 -0700959 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000960 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400961 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000962 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
963 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000964 .name = "set"
965 },
966};
Lev Walkina7591b52014-10-12 18:37:35 -0700967static const ber_tlv_tag_t asn_DEF_Sequence_tags_1[] = {
Lev Walkincee931e2005-08-16 16:56:59 +0000968 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
969};
Lev Walkina7591b52014-10-12 18:37:35 -0700970static const asn_TYPE_tag2member_t asn_MAP_Sequence_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700971 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* a */
972 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* seq */
973 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* b */
974 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* set */
Lev Walkincee931e2005-08-16 16:56:59 +0000975};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800976asn_SEQUENCE_specifics_t asn_SPC_Sequence_specs_1 = {
Lev Walkincee931e2005-08-16 16:56:59 +0000977 sizeof(struct Sequence),
978 offsetof(struct Sequence, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -0700979 .tag2el = asn_MAP_Sequence_tag2el_1,
980 .tag2el_count = 4, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000981 0, 0, 0, /* Optional elements (not needed) */
Lev Walkincee931e2005-08-16 16:56:59 +0000982 1, /* Start extensions */
983 5 /* Stop extensions */
984};
985asn_TYPE_descriptor_t asn_DEF_Sequence = {
986 "Sequence",
987 "Sequence",
988 SEQUENCE_free,
989 SEQUENCE_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -0700990 SEQUENCE_compare,
Lev Walkincee931e2005-08-16 16:56:59 +0000991 SEQUENCE_constraint,
992 SEQUENCE_decode_ber,
993 SEQUENCE_encode_der,
994 SEQUENCE_decode_xer,
995 SEQUENCE_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -0700996 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +0400997 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkincee931e2005-08-16 16:56:59 +0000998 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000999 asn_DEF_Sequence_tags_1,
1000 sizeof(asn_DEF_Sequence_tags_1)
1001 /sizeof(asn_DEF_Sequence_tags_1[0]), /* 1 */
1002 asn_DEF_Sequence_tags_1, /* Same as above */
1003 sizeof(asn_DEF_Sequence_tags_1)
1004 /sizeof(asn_DEF_Sequence_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001005 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001006 0, /* No PER visible constraints */
Lev Walkincee931e2005-08-16 16:56:59 +00001007 asn_MBR_Sequence_1,
1008 4, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +00001009 &asn_SPC_Sequence_specs_1 /* Additional specs */
Lev Walkincee931e2005-08-16 16:56:59 +00001010};
1011
Lev Walkinb85a8132005-08-18 13:38:19 +00001012
1013/*** <<< INCLUDES [TypeRef] >>> ***/
1014
Lev Walkin22b5ed42006-09-13 02:51:20 +00001015#include "Sequence.h"
Lev Walkinb85a8132005-08-18 13:38:19 +00001016
1017/*** <<< TYPE-DECLS [TypeRef] >>> ***/
1018
1019typedef Sequence_t TypeRef_t;
1020
1021/*** <<< FUNC-DECLS [TypeRef] >>> ***/
1022
1023extern asn_TYPE_descriptor_t asn_DEF_TypeRef;
1024asn_struct_free_f TypeRef_free;
1025asn_struct_print_f TypeRef_print;
1026asn_constr_check_f TypeRef_constraint;
1027ber_type_decoder_f TypeRef_decode_ber;
1028der_type_encoder_f TypeRef_encode_der;
1029xer_type_decoder_f TypeRef_decode_xer;
1030xer_type_encoder_f TypeRef_encode_xer;
1031
1032/*** <<< CODE [TypeRef] >>> ***/
1033
Lev Walkinb85a8132005-08-18 13:38:19 +00001034/*
1035 * This type is implemented using Sequence,
1036 * so here we adjust the DEF accordingly.
1037 */
Lev Walkinb85a8132005-08-18 13:38:19 +00001038
1039/*** <<< STAT-DEFS [TypeRef] >>> ***/
1040
Lev Walkina7591b52014-10-12 18:37:35 -07001041static const ber_tlv_tag_t asn_DEF_TypeRef_tags_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001042 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1043};
1044asn_TYPE_descriptor_t asn_DEF_TypeRef = {
1045 "TypeRef",
1046 "TypeRef",
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001047 SEQUENCE_free,
1048 SEQUENCE_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -07001049 SEQUENCE_compare,
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001050 SEQUENCE_constraint,
1051 SEQUENCE_decode_ber,
1052 SEQUENCE_encode_der,
1053 SEQUENCE_decode_xer,
1054 SEQUENCE_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -07001055 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +04001056 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinb85a8132005-08-18 13:38:19 +00001057 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001058 asn_DEF_TypeRef_tags_1,
1059 sizeof(asn_DEF_TypeRef_tags_1)
1060 /sizeof(asn_DEF_TypeRef_tags_1[0]), /* 1 */
1061 asn_DEF_TypeRef_tags_1, /* Same as above */
1062 sizeof(asn_DEF_TypeRef_tags_1)
1063 /sizeof(asn_DEF_TypeRef_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001064 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001065 0, /* No PER visible constraints */
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001066 asn_MBR_Sequence_1,
1067 4, /* Elements count */
1068 &asn_SPC_Sequence_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +00001069};
1070
1071
1072/*** <<< INCLUDES [Alpha] >>> ***/
1073
1074#include <constr_SEQUENCE.h>
1075
1076/*** <<< FWD-DECLS [Alpha] >>> ***/
1077
1078struct Beta;
1079
1080/*** <<< TYPE-DECLS [Alpha] >>> ***/
1081
1082typedef struct Alpha {
1083 struct Beta *a;
1084 struct b {
1085 struct Beta *b /* OPTIONAL */;
1086
1087 /* Context for parsing across buffer boundaries */
1088 asn_struct_ctx_t _asn_ctx;
1089 } b;
1090
1091 /* Context for parsing across buffer boundaries */
1092 asn_struct_ctx_t _asn_ctx;
1093} Alpha_t;
1094
1095/*** <<< FUNC-DECLS [Alpha] >>> ***/
1096
1097extern asn_TYPE_descriptor_t asn_DEF_Alpha;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001098extern asn_SEQUENCE_specifics_t asn_SPC_Alpha_specs_1;
1099extern asn_TYPE_member_t asn_MBR_Alpha_1[2];
Lev Walkinb85a8132005-08-18 13:38:19 +00001100
1101/*** <<< POST-INCLUDE [Alpha] >>> ***/
1102
Lev Walkin22b5ed42006-09-13 02:51:20 +00001103#include "Beta.h"
Lev Walkinb85a8132005-08-18 13:38:19 +00001104
1105/*** <<< STAT-DEFS [Alpha] >>> ***/
1106
1107static asn_TYPE_member_t asn_MBR_b_3[] = {
1108 { ATF_POINTER, 1, offsetof(struct b, b),
1109 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1110 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001111 .type = &asn_DEF_Beta,
Lev Walkin67a30122017-08-10 05:48:54 -07001112 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001113 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001114 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001115 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1116 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001117 .name = "b"
1118 },
1119};
Lev Walkina7591b52014-10-12 18:37:35 -07001120static const ber_tlv_tag_t asn_DEF_b_tags_3[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001121 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1122 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1123};
Lev Walkina7591b52014-10-12 18:37:35 -07001124static const asn_TYPE_tag2member_t asn_MAP_b_tag2el_3[] = {
Lev Walkin4062b012013-10-11 14:29:38 -07001125 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* b */
Lev Walkinb85a8132005-08-18 13:38:19 +00001126};
Lev Walkin59b176e2005-11-26 11:25:14 +00001127static asn_SEQUENCE_specifics_t asn_SPC_b_specs_3 = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001128 sizeof(struct b),
1129 offsetof(struct b, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -07001130 .tag2el = asn_MAP_b_tag2el_3,
1131 .tag2el_count = 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +00001132 0, 0, 0, /* Optional elements (not needed) */
Lev Walkinb85a8132005-08-18 13:38:19 +00001133 -1, /* Start extensions */
1134 -1 /* Stop extensions */
1135};
1136static /* Use -fall-defs-global to expose */
1137asn_TYPE_descriptor_t asn_DEF_b_3 = {
1138 "b",
1139 "b",
1140 SEQUENCE_free,
1141 SEQUENCE_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -07001142 SEQUENCE_compare,
Lev Walkinb85a8132005-08-18 13:38:19 +00001143 SEQUENCE_constraint,
1144 SEQUENCE_decode_ber,
1145 SEQUENCE_encode_der,
1146 SEQUENCE_decode_xer,
1147 SEQUENCE_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -07001148 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +04001149 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinb85a8132005-08-18 13:38:19 +00001150 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001151 asn_DEF_b_tags_3,
1152 sizeof(asn_DEF_b_tags_3)
1153 /sizeof(asn_DEF_b_tags_3[0]) - 1, /* 1 */
1154 asn_DEF_b_tags_3, /* Same as above */
1155 sizeof(asn_DEF_b_tags_3)
1156 /sizeof(asn_DEF_b_tags_3[0]), /* 2 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001157 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001158 0, /* No PER visible constraints */
Lev Walkinb85a8132005-08-18 13:38:19 +00001159 asn_MBR_b_3,
1160 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +00001161 &asn_SPC_b_specs_3 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +00001162};
1163
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001164asn_TYPE_member_t asn_MBR_Alpha_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001165 { ATF_POINTER, 0, offsetof(struct Alpha, a),
1166 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1167 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001168 .type = &asn_DEF_Beta,
Lev Walkin67a30122017-08-10 05:48:54 -07001169 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001170 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001171 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001172 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1173 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001174 .name = "a"
1175 },
1176 { ATF_NOFLAGS, 0, offsetof(struct Alpha, b),
1177 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
Lev Walkin9ab21b82006-10-19 02:46:01 +00001178 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001179 .type = &asn_DEF_b_3,
Lev Walkin67a30122017-08-10 05:48:54 -07001180 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001181 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001182 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001183 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1184 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001185 .name = "b"
1186 },
1187};
Lev Walkina7591b52014-10-12 18:37:35 -07001188static const ber_tlv_tag_t asn_DEF_Alpha_tags_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001189 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1190};
Lev Walkina7591b52014-10-12 18:37:35 -07001191static const asn_TYPE_tag2member_t asn_MAP_Alpha_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -07001192 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* a */
1193 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* b */
Lev Walkinb85a8132005-08-18 13:38:19 +00001194};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001195asn_SEQUENCE_specifics_t asn_SPC_Alpha_specs_1 = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001196 sizeof(struct Alpha),
1197 offsetof(struct Alpha, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -07001198 .tag2el = asn_MAP_Alpha_tag2el_1,
1199 .tag2el_count = 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +00001200 0, 0, 0, /* Optional elements (not needed) */
Lev Walkinb85a8132005-08-18 13:38:19 +00001201 -1, /* Start extensions */
1202 -1 /* Stop extensions */
1203};
1204asn_TYPE_descriptor_t asn_DEF_Alpha = {
1205 "Alpha",
1206 "Alpha",
1207 SEQUENCE_free,
1208 SEQUENCE_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -07001209 SEQUENCE_compare,
Lev Walkinb85a8132005-08-18 13:38:19 +00001210 SEQUENCE_constraint,
1211 SEQUENCE_decode_ber,
1212 SEQUENCE_encode_der,
1213 SEQUENCE_decode_xer,
1214 SEQUENCE_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -07001215 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +04001216 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinb85a8132005-08-18 13:38:19 +00001217 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001218 asn_DEF_Alpha_tags_1,
1219 sizeof(asn_DEF_Alpha_tags_1)
1220 /sizeof(asn_DEF_Alpha_tags_1[0]), /* 1 */
1221 asn_DEF_Alpha_tags_1, /* Same as above */
1222 sizeof(asn_DEF_Alpha_tags_1)
1223 /sizeof(asn_DEF_Alpha_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001224 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001225 0, /* No PER visible constraints */
Lev Walkinb85a8132005-08-18 13:38:19 +00001226 asn_MBR_Alpha_1,
1227 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +00001228 &asn_SPC_Alpha_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +00001229};
1230
1231
1232/*** <<< INCLUDES [Beta] >>> ***/
1233
1234#include <constr_SEQUENCE.h>
1235
1236/*** <<< FWD-DECLS [Beta] >>> ***/
1237
1238struct Alpha;
1239struct Gamma;
1240
1241/*** <<< TYPE-DECLS [Beta] >>> ***/
1242
1243typedef struct Beta {
1244 struct Alpha *b /* OPTIONAL */;
1245 struct Gamma *g /* OPTIONAL */;
1246
1247 /* Context for parsing across buffer boundaries */
1248 asn_struct_ctx_t _asn_ctx;
1249} Beta_t;
1250
1251/*** <<< FUNC-DECLS [Beta] >>> ***/
1252
1253extern asn_TYPE_descriptor_t asn_DEF_Beta;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001254extern asn_SEQUENCE_specifics_t asn_SPC_Beta_specs_1;
1255extern asn_TYPE_member_t asn_MBR_Beta_1[2];
Lev Walkinb85a8132005-08-18 13:38:19 +00001256
1257/*** <<< POST-INCLUDE [Beta] >>> ***/
1258
Lev Walkin22b5ed42006-09-13 02:51:20 +00001259#include "Alpha.h"
1260#include "Gamma.h"
Lev Walkinb85a8132005-08-18 13:38:19 +00001261
1262/*** <<< STAT-DEFS [Beta] >>> ***/
1263
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001264asn_TYPE_member_t asn_MBR_Beta_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001265 { ATF_POINTER, 2, offsetof(struct Beta, b),
1266 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1267 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001268 .type = &asn_DEF_Alpha,
Lev Walkin67a30122017-08-10 05:48:54 -07001269 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001270 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001271 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001272 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1273 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001274 .name = "b"
1275 },
1276 { ATF_POINTER, 1, offsetof(struct Beta, g),
1277 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1278 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001279 .type = &asn_DEF_Gamma,
Lev Walkin67a30122017-08-10 05:48:54 -07001280 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001281 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001282 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001283 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1284 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001285 .name = "g"
1286 },
1287};
Lev Walkina7591b52014-10-12 18:37:35 -07001288static const ber_tlv_tag_t asn_DEF_Beta_tags_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001289 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1290};
Lev Walkina7591b52014-10-12 18:37:35 -07001291static const asn_TYPE_tag2member_t asn_MAP_Beta_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -07001292 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* b */
1293 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* g */
Lev Walkinb85a8132005-08-18 13:38:19 +00001294};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001295asn_SEQUENCE_specifics_t asn_SPC_Beta_specs_1 = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001296 sizeof(struct Beta),
1297 offsetof(struct Beta, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -07001298 .tag2el = asn_MAP_Beta_tag2el_1,
1299 .tag2el_count = 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +00001300 0, 0, 0, /* Optional elements (not needed) */
Lev Walkinb85a8132005-08-18 13:38:19 +00001301 -1, /* Start extensions */
1302 -1 /* Stop extensions */
1303};
1304asn_TYPE_descriptor_t asn_DEF_Beta = {
1305 "Beta",
1306 "Beta",
1307 SEQUENCE_free,
1308 SEQUENCE_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -07001309 SEQUENCE_compare,
Lev Walkinb85a8132005-08-18 13:38:19 +00001310 SEQUENCE_constraint,
1311 SEQUENCE_decode_ber,
1312 SEQUENCE_encode_der,
1313 SEQUENCE_decode_xer,
1314 SEQUENCE_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -07001315 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +04001316 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinb85a8132005-08-18 13:38:19 +00001317 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001318 asn_DEF_Beta_tags_1,
1319 sizeof(asn_DEF_Beta_tags_1)
1320 /sizeof(asn_DEF_Beta_tags_1[0]), /* 1 */
1321 asn_DEF_Beta_tags_1, /* Same as above */
1322 sizeof(asn_DEF_Beta_tags_1)
1323 /sizeof(asn_DEF_Beta_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001324 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001325 0, /* No PER visible constraints */
Lev Walkinb85a8132005-08-18 13:38:19 +00001326 asn_MBR_Beta_1,
1327 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +00001328 &asn_SPC_Beta_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +00001329};
1330
1331
1332/*** <<< INCLUDES [Gamma] >>> ***/
1333
1334#include <constr_SEQUENCE.h>
1335
1336/*** <<< FWD-DECLS [Gamma] >>> ***/
1337
1338struct TwoThree;
1339struct Alpha;
1340struct Beta;
1341
1342/*** <<< TYPE-DECLS [Gamma] >>> ***/
1343
1344typedef struct Gamma {
1345 struct TwoThree *o;
1346 struct Alpha *a;
1347 struct Beta *b;
1348
1349 /* Context for parsing across buffer boundaries */
1350 asn_struct_ctx_t _asn_ctx;
1351} Gamma_t;
1352
1353/*** <<< FUNC-DECLS [Gamma] >>> ***/
1354
1355extern asn_TYPE_descriptor_t asn_DEF_Gamma;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001356extern asn_SEQUENCE_specifics_t asn_SPC_Gamma_specs_1;
1357extern asn_TYPE_member_t asn_MBR_Gamma_1[3];
Lev Walkinb85a8132005-08-18 13:38:19 +00001358
1359/*** <<< POST-INCLUDE [Gamma] >>> ***/
1360
Lev Walkin22b5ed42006-09-13 02:51:20 +00001361#include "TwoThree.h"
1362#include "Alpha.h"
1363#include "Beta.h"
Lev Walkinb85a8132005-08-18 13:38:19 +00001364
1365/*** <<< STAT-DEFS [Gamma] >>> ***/
1366
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001367asn_TYPE_member_t asn_MBR_Gamma_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001368 { ATF_POINTER, 0, offsetof(struct Gamma, o),
1369 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1370 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001371 .type = &asn_DEF_TwoThree,
Lev Walkin67a30122017-08-10 05:48:54 -07001372 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001373 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001374 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001375 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1376 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001377 .name = "o"
1378 },
1379 { ATF_POINTER, 0, offsetof(struct Gamma, a),
1380 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1381 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001382 .type = &asn_DEF_Alpha,
Lev Walkin67a30122017-08-10 05:48:54 -07001383 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001384 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001385 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001386 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1387 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001388 .name = "a"
1389 },
1390 { ATF_POINTER, 0, offsetof(struct Gamma, b),
1391 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
1392 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001393 .type = &asn_DEF_Beta,
Lev Walkin67a30122017-08-10 05:48:54 -07001394 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001395 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001396 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001397 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1398 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001399 .name = "b"
1400 },
1401};
Lev Walkina7591b52014-10-12 18:37:35 -07001402static const ber_tlv_tag_t asn_DEF_Gamma_tags_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001403 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1404};
Lev Walkina7591b52014-10-12 18:37:35 -07001405static const asn_TYPE_tag2member_t asn_MAP_Gamma_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -07001406 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* o */
1407 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* a */
1408 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* b */
Lev Walkinb85a8132005-08-18 13:38:19 +00001409};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001410asn_SEQUENCE_specifics_t asn_SPC_Gamma_specs_1 = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001411 sizeof(struct Gamma),
1412 offsetof(struct Gamma, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -07001413 .tag2el = asn_MAP_Gamma_tag2el_1,
1414 .tag2el_count = 3, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +00001415 0, 0, 0, /* Optional elements (not needed) */
Lev Walkinb85a8132005-08-18 13:38:19 +00001416 -1, /* Start extensions */
1417 -1 /* Stop extensions */
1418};
1419asn_TYPE_descriptor_t asn_DEF_Gamma = {
1420 "Gamma",
1421 "Gamma",
1422 SEQUENCE_free,
1423 SEQUENCE_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -07001424 SEQUENCE_compare,
Lev Walkinb85a8132005-08-18 13:38:19 +00001425 SEQUENCE_constraint,
1426 SEQUENCE_decode_ber,
1427 SEQUENCE_encode_der,
1428 SEQUENCE_decode_xer,
1429 SEQUENCE_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -07001430 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +04001431 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinb85a8132005-08-18 13:38:19 +00001432 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001433 asn_DEF_Gamma_tags_1,
1434 sizeof(asn_DEF_Gamma_tags_1)
1435 /sizeof(asn_DEF_Gamma_tags_1[0]), /* 1 */
1436 asn_DEF_Gamma_tags_1, /* Same as above */
1437 sizeof(asn_DEF_Gamma_tags_1)
1438 /sizeof(asn_DEF_Gamma_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001439 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001440 0, /* No PER visible constraints */
Lev Walkinb85a8132005-08-18 13:38:19 +00001441 asn_MBR_Gamma_1,
1442 3, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +00001443 &asn_SPC_Gamma_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +00001444};
1445
1446
1447/*** <<< INCLUDES [OneTwo] >>> ***/
1448
1449#include <constr_SET.h>
1450
1451/*** <<< DEPS [OneTwo] >>> ***/
1452
1453
1454/*
1455 * Method of determining the components presence
1456 */
1457typedef enum OneTwo_PR {
1458 OneTwo_PR_m12, /* Member m12 is present */
1459} OneTwo_PR;
1460
1461/*** <<< FWD-DECLS [OneTwo] >>> ***/
1462
1463struct TwoThree;
1464
1465/*** <<< TYPE-DECLS [OneTwo] >>> ***/
1466
1467typedef struct OneTwo {
1468 struct TwoThree *m12;
1469
1470 /* Presence bitmask: ASN_SET_ISPRESENT(pOneTwo, OneTwo_PR_x) */
1471 unsigned int _presence_map
1472 [((1+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))];
1473
1474 /* Context for parsing across buffer boundaries */
1475 asn_struct_ctx_t _asn_ctx;
1476} OneTwo_t;
1477
1478/*** <<< FUNC-DECLS [OneTwo] >>> ***/
1479
1480extern asn_TYPE_descriptor_t asn_DEF_OneTwo;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001481extern asn_SET_specifics_t asn_SPC_OneTwo_specs_1;
1482extern asn_TYPE_member_t asn_MBR_OneTwo_1[1];
Lev Walkinb85a8132005-08-18 13:38:19 +00001483
1484/*** <<< POST-INCLUDE [OneTwo] >>> ***/
1485
Lev Walkin22b5ed42006-09-13 02:51:20 +00001486#include "TwoThree.h"
Lev Walkinb85a8132005-08-18 13:38:19 +00001487
1488/*** <<< STAT-DEFS [OneTwo] >>> ***/
1489
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001490asn_TYPE_member_t asn_MBR_OneTwo_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001491 { ATF_POINTER, 0, offsetof(struct OneTwo, m12),
1492 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1493 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001494 .type = &asn_DEF_TwoThree,
Lev Walkin67a30122017-08-10 05:48:54 -07001495 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001496 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001497 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001498 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1499 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001500 .name = "m12"
1501 },
1502};
Lev Walkina7591b52014-10-12 18:37:35 -07001503static const ber_tlv_tag_t asn_DEF_OneTwo_tags_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001504 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1505};
Lev Walkina7591b52014-10-12 18:37:35 -07001506static const asn_TYPE_tag2member_t asn_MAP_OneTwo_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -07001507 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* m12 */
Lev Walkinb85a8132005-08-18 13:38:19 +00001508};
Lev Walkina7591b52014-10-12 18:37:35 -07001509static const uint8_t asn_MAP_OneTwo_mmap_1[(1 + (8 * sizeof(unsigned int)) - 1) / 8] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001510 (1 << 7)
1511};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001512asn_SET_specifics_t asn_SPC_OneTwo_specs_1 = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001513 sizeof(struct OneTwo),
1514 offsetof(struct OneTwo, _asn_ctx),
1515 offsetof(struct OneTwo, _presence_map),
Lev Walkine3917082017-08-23 10:29:38 -07001516 .tag2el = asn_MAP_OneTwo_tag2el_1,
1517 .tag2el_count = 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +00001518 asn_MAP_OneTwo_tag2el_1, /* Same as above */
Lev Walkinb85a8132005-08-18 13:38:19 +00001519 1, /* Count of tags in the CXER map */
1520 0, /* Whether extensible */
Lev Walkin46ef3f32017-07-06 08:47:53 -07001521 (const unsigned int *)asn_MAP_OneTwo_mmap_1 /* Mandatory elements map */
Lev Walkinb85a8132005-08-18 13:38:19 +00001522};
1523asn_TYPE_descriptor_t asn_DEF_OneTwo = {
1524 "OneTwo",
1525 "OneTwo",
1526 SET_free,
1527 SET_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -07001528 SET_compare,
Lev Walkinb85a8132005-08-18 13:38:19 +00001529 SET_constraint,
1530 SET_decode_ber,
1531 SET_encode_der,
1532 SET_decode_xer,
1533 SET_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -07001534 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +04001535 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinb85a8132005-08-18 13:38:19 +00001536 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001537 asn_DEF_OneTwo_tags_1,
1538 sizeof(asn_DEF_OneTwo_tags_1)
1539 /sizeof(asn_DEF_OneTwo_tags_1[0]), /* 1 */
1540 asn_DEF_OneTwo_tags_1, /* Same as above */
1541 sizeof(asn_DEF_OneTwo_tags_1)
1542 /sizeof(asn_DEF_OneTwo_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001543 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001544 0, /* No PER visible constraints */
Lev Walkinb85a8132005-08-18 13:38:19 +00001545 asn_MBR_OneTwo_1,
1546 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +00001547 &asn_SPC_OneTwo_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +00001548};
1549
1550
1551/*** <<< INCLUDES [TwoThree] >>> ***/
1552
1553#include <constr_SET.h>
1554
1555/*** <<< DEPS [TwoThree] >>> ***/
1556
1557
1558/*
1559 * Method of determining the components presence
1560 */
1561typedef enum TwoThree_PR {
1562 TwoThree_PR_m23, /* Member m23 is present */
1563} TwoThree_PR;
1564
1565/*** <<< FWD-DECLS [TwoThree] >>> ***/
1566
1567struct ThreeOne;
1568
1569/*** <<< TYPE-DECLS [TwoThree] >>> ***/
1570
1571typedef struct TwoThree {
1572 struct ThreeOne *m23;
1573
1574 /* Presence bitmask: ASN_SET_ISPRESENT(pTwoThree, TwoThree_PR_x) */
1575 unsigned int _presence_map
1576 [((1+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))];
1577
1578 /* Context for parsing across buffer boundaries */
1579 asn_struct_ctx_t _asn_ctx;
1580} TwoThree_t;
1581
1582/*** <<< FUNC-DECLS [TwoThree] >>> ***/
1583
1584extern asn_TYPE_descriptor_t asn_DEF_TwoThree;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001585extern asn_SET_specifics_t asn_SPC_TwoThree_specs_1;
1586extern asn_TYPE_member_t asn_MBR_TwoThree_1[1];
Lev Walkinb85a8132005-08-18 13:38:19 +00001587
1588/*** <<< POST-INCLUDE [TwoThree] >>> ***/
1589
Lev Walkin22b5ed42006-09-13 02:51:20 +00001590#include "ThreeOne.h"
Lev Walkinb85a8132005-08-18 13:38:19 +00001591
1592/*** <<< STAT-DEFS [TwoThree] >>> ***/
1593
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001594asn_TYPE_member_t asn_MBR_TwoThree_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001595 { ATF_POINTER, 0, offsetof(struct TwoThree, m23),
1596 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1597 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001598 .type = &asn_DEF_ThreeOne,
Lev Walkin67a30122017-08-10 05:48:54 -07001599 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001600 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001601 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001602 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1603 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001604 .name = "m23"
1605 },
1606};
Lev Walkina7591b52014-10-12 18:37:35 -07001607static const ber_tlv_tag_t asn_DEF_TwoThree_tags_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001608 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1609};
Lev Walkina7591b52014-10-12 18:37:35 -07001610static const asn_TYPE_tag2member_t asn_MAP_TwoThree_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -07001611 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* m23 */
Lev Walkinb85a8132005-08-18 13:38:19 +00001612};
Lev Walkina7591b52014-10-12 18:37:35 -07001613static const uint8_t asn_MAP_TwoThree_mmap_1[(1 + (8 * sizeof(unsigned int)) - 1) / 8] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001614 (1 << 7)
1615};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001616asn_SET_specifics_t asn_SPC_TwoThree_specs_1 = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001617 sizeof(struct TwoThree),
1618 offsetof(struct TwoThree, _asn_ctx),
1619 offsetof(struct TwoThree, _presence_map),
Lev Walkine3917082017-08-23 10:29:38 -07001620 .tag2el = asn_MAP_TwoThree_tag2el_1,
1621 .tag2el_count = 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +00001622 asn_MAP_TwoThree_tag2el_1, /* Same as above */
Lev Walkinb85a8132005-08-18 13:38:19 +00001623 1, /* Count of tags in the CXER map */
1624 0, /* Whether extensible */
Lev Walkin46ef3f32017-07-06 08:47:53 -07001625 (const unsigned int *)asn_MAP_TwoThree_mmap_1 /* Mandatory elements map */
Lev Walkinb85a8132005-08-18 13:38:19 +00001626};
1627asn_TYPE_descriptor_t asn_DEF_TwoThree = {
1628 "TwoThree",
1629 "TwoThree",
1630 SET_free,
1631 SET_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -07001632 SET_compare,
Lev Walkinb85a8132005-08-18 13:38:19 +00001633 SET_constraint,
1634 SET_decode_ber,
1635 SET_encode_der,
1636 SET_decode_xer,
1637 SET_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -07001638 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +04001639 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinb85a8132005-08-18 13:38:19 +00001640 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001641 asn_DEF_TwoThree_tags_1,
1642 sizeof(asn_DEF_TwoThree_tags_1)
1643 /sizeof(asn_DEF_TwoThree_tags_1[0]), /* 1 */
1644 asn_DEF_TwoThree_tags_1, /* Same as above */
1645 sizeof(asn_DEF_TwoThree_tags_1)
1646 /sizeof(asn_DEF_TwoThree_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001647 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001648 0, /* No PER visible constraints */
Lev Walkinb85a8132005-08-18 13:38:19 +00001649 asn_MBR_TwoThree_1,
1650 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +00001651 &asn_SPC_TwoThree_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +00001652};
1653
1654
1655/*** <<< INCLUDES [ThreeOne] >>> ***/
1656
1657#include <constr_SET.h>
1658
1659/*** <<< DEPS [ThreeOne] >>> ***/
1660
1661
1662/*
1663 * Method of determining the components presence
1664 */
1665typedef enum ThreeOne_PR {
1666 ThreeOne_PR_m31, /* Member m31 is present */
1667 ThreeOne_PR_g, /* Member g is present */
1668} ThreeOne_PR;
1669
1670/*** <<< FWD-DECLS [ThreeOne] >>> ***/
1671
1672struct OneTwo;
1673struct Gamma;
1674
1675/*** <<< TYPE-DECLS [ThreeOne] >>> ***/
1676
1677typedef struct ThreeOne {
1678 struct OneTwo *m31;
1679 struct Gamma *g;
1680
1681 /* Presence bitmask: ASN_SET_ISPRESENT(pThreeOne, ThreeOne_PR_x) */
1682 unsigned int _presence_map
1683 [((2+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))];
1684
1685 /* Context for parsing across buffer boundaries */
1686 asn_struct_ctx_t _asn_ctx;
1687} ThreeOne_t;
1688
1689/*** <<< FUNC-DECLS [ThreeOne] >>> ***/
1690
1691extern asn_TYPE_descriptor_t asn_DEF_ThreeOne;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001692extern asn_SET_specifics_t asn_SPC_ThreeOne_specs_1;
1693extern asn_TYPE_member_t asn_MBR_ThreeOne_1[2];
Lev Walkinb85a8132005-08-18 13:38:19 +00001694
1695/*** <<< POST-INCLUDE [ThreeOne] >>> ***/
1696
Lev Walkin22b5ed42006-09-13 02:51:20 +00001697#include "OneTwo.h"
1698#include "Gamma.h"
Lev Walkinb85a8132005-08-18 13:38:19 +00001699
1700/*** <<< STAT-DEFS [ThreeOne] >>> ***/
1701
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001702asn_TYPE_member_t asn_MBR_ThreeOne_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001703 { ATF_POINTER, 0, offsetof(struct ThreeOne, m31),
1704 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1705 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001706 .type = &asn_DEF_OneTwo,
Lev Walkin67a30122017-08-10 05:48:54 -07001707 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001708 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001709 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001710 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1711 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001712 .name = "m31"
1713 },
1714 { ATF_POINTER, 0, offsetof(struct ThreeOne, g),
1715 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1716 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001717 .type = &asn_DEF_Gamma,
Lev Walkin67a30122017-08-10 05:48:54 -07001718 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001719 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001720 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001721 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1722 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001723 .name = "g"
1724 },
1725};
Lev Walkina7591b52014-10-12 18:37:35 -07001726static const ber_tlv_tag_t asn_DEF_ThreeOne_tags_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001727 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1728};
Lev Walkina7591b52014-10-12 18:37:35 -07001729static const asn_TYPE_tag2member_t asn_MAP_ThreeOne_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -07001730 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* m31 */
1731 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* g */
Lev Walkinb85a8132005-08-18 13:38:19 +00001732};
Lev Walkina7591b52014-10-12 18:37:35 -07001733static const uint8_t asn_MAP_ThreeOne_mmap_1[(2 + (8 * sizeof(unsigned int)) - 1) / 8] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001734 (1 << 7) | (1 << 6)
1735};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001736asn_SET_specifics_t asn_SPC_ThreeOne_specs_1 = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001737 sizeof(struct ThreeOne),
1738 offsetof(struct ThreeOne, _asn_ctx),
1739 offsetof(struct ThreeOne, _presence_map),
Lev Walkine3917082017-08-23 10:29:38 -07001740 .tag2el = asn_MAP_ThreeOne_tag2el_1,
1741 .tag2el_count = 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +00001742 asn_MAP_ThreeOne_tag2el_1, /* Same as above */
Lev Walkinb85a8132005-08-18 13:38:19 +00001743 2, /* Count of tags in the CXER map */
1744 0, /* Whether extensible */
Lev Walkin46ef3f32017-07-06 08:47:53 -07001745 (const unsigned int *)asn_MAP_ThreeOne_mmap_1 /* Mandatory elements map */
Lev Walkinb85a8132005-08-18 13:38:19 +00001746};
1747asn_TYPE_descriptor_t asn_DEF_ThreeOne = {
1748 "ThreeOne",
1749 "ThreeOne",
1750 SET_free,
1751 SET_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -07001752 SET_compare,
Lev Walkinb85a8132005-08-18 13:38:19 +00001753 SET_constraint,
1754 SET_decode_ber,
1755 SET_encode_der,
1756 SET_decode_xer,
1757 SET_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -07001758 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +04001759 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinb85a8132005-08-18 13:38:19 +00001760 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001761 asn_DEF_ThreeOne_tags_1,
1762 sizeof(asn_DEF_ThreeOne_tags_1)
1763 /sizeof(asn_DEF_ThreeOne_tags_1[0]), /* 1 */
1764 asn_DEF_ThreeOne_tags_1, /* Same as above */
1765 sizeof(asn_DEF_ThreeOne_tags_1)
1766 /sizeof(asn_DEF_ThreeOne_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001767 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001768 0, /* No PER visible constraints */
Lev Walkinb85a8132005-08-18 13:38:19 +00001769 asn_MBR_ThreeOne_1,
1770 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +00001771 &asn_SPC_ThreeOne_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +00001772};
1773