blob: fbf2aeb6394aed62f84f9660545c93bb5c8df8ee [file] [log] [blame]
Lev Walkin67ec2092004-09-08 00:26:56 +00001
2/*** <<< INCLUDES [Test-structure-1] >>> ***/
3
Lev Walkin67ec2092004-09-08 00:26:56 +00004#include <INTEGER.h>
5#include <asn_SET_OF.h>
6#include <constr_SET_OF.h>
7#include <asn_SEQUENCE_OF.h>
8#include <constr_SEQUENCE_OF.h>
9#include <constr_SEQUENCE.h>
10
Lev Walkinc8285712005-03-04 22:18:20 +000011/*** <<< FWD-DECLS [Test-structure-1] >>> ***/
Lev Walkin1ca69672004-09-29 13:19:12 +000012
Lev Walkinbf56d542005-03-04 23:50:56 +000013struct Test_structure_1;
Lev Walkin67ec2092004-09-08 00:26:56 +000014
15/*** <<< TYPE-DECLS [Test-structure-1] >>> ***/
16
Lev Walkin67ec2092004-09-08 00:26:56 +000017typedef struct Test_structure_1 {
18 struct t_member1 {
19 A_SET_OF(struct Test_structure_1) list;
20
21 /* Context for parsing across buffer boundaries */
Lev Walkin1ca69672004-09-29 13:19:12 +000022 asn_struct_ctx_t _asn_ctx;
Lev Walkin67ec2092004-09-08 00:26:56 +000023 } t_member1;
24 struct t_member2 {
25 A_SEQUENCE_OF(struct Test_structure_1) list;
26
27 /* Context for parsing across buffer boundaries */
Lev Walkin1ca69672004-09-29 13:19:12 +000028 asn_struct_ctx_t _asn_ctx;
Lev Walkin67ec2092004-09-08 00:26:56 +000029 } t_member2;
30 struct Test_structure_1 *t_member3 /* OPTIONAL */;
31 INTEGER_t t_member4;
32
33 /* Context for parsing across buffer boundaries */
Lev Walkin1ca69672004-09-29 13:19:12 +000034 asn_struct_ctx_t _asn_ctx;
Lev Walkin67ec2092004-09-08 00:26:56 +000035} Test_structure_1_t;
36
Lev Walkinc8285712005-03-04 22:18:20 +000037/*** <<< FUNC-DECLS [Test-structure-1] >>> ***/
38
39extern asn_TYPE_descriptor_t asn_DEF_Test_structure_1;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +080040extern asn_SEQUENCE_specifics_t asn_SPC_Test_structure_1_specs_1;
41extern asn_TYPE_member_t asn_MBR_Test_structure_1_1[4];
Lev Walkinc8285712005-03-04 22:18:20 +000042
43/*** <<< POST-INCLUDE [Test-structure-1] >>> ***/
44
Lev Walkin22b5ed42006-09-13 02:51:20 +000045#include "Test-structure-1.h"
Lev Walkinc8285712005-03-04 22:18:20 +000046
Lev Walkin67ec2092004-09-08 00:26:56 +000047/*** <<< STAT-DEFS [Test-structure-1] >>> ***/
48
Lev Walkine0272aa2005-03-04 11:26:08 +000049static asn_TYPE_member_t asn_MBR_t_member1_2[] = {
Lev Walkin8eb4b572005-08-16 16:57:17 +000050 { ATF_POINTER, 0, 0,
Lev Walkin67ec2092004-09-08 00:26:56 +000051 .tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
52 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +000053 .type = &asn_DEF_Test_structure_1,
Lev Walkin67a30122017-08-10 05:48:54 -070054 .type_selector = 0,
Lev Walkinba58e1b2005-01-17 12:20:19 +000055 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +040056 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +000057 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
58 .default_value = 0,
Lev Walkin67ec2092004-09-08 00:26:56 +000059 .name = ""
60 },
61};
Lev Walkina7591b52014-10-12 18:37:35 -070062static const ber_tlv_tag_t asn_DEF_t_member1_tags_2[] = {
Lev Walkin67ec2092004-09-08 00:26:56 +000063 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
64};
Lev Walkin59b176e2005-11-26 11:25:14 +000065static asn_SET_OF_specifics_t asn_SPC_t_member1_specs_2 = {
Lev Walkin67ec2092004-09-08 00:26:56 +000066 sizeof(struct t_member1),
Lev Walkin1ca69672004-09-29 13:19:12 +000067 offsetof(struct t_member1, _asn_ctx),
Lev Walkina9cc46e2004-09-22 16:06:28 +000068 0, /* XER encoding is XMLDelimitedItemList */
Lev Walkin67ec2092004-09-08 00:26:56 +000069};
70static /* Use -fall-defs-global to expose */
Lev Walkine0272aa2005-03-04 11:26:08 +000071asn_TYPE_descriptor_t asn_DEF_t_member1_2 = {
Lev Walkin67ec2092004-09-08 00:26:56 +000072 "t-member1",
Lev Walkindc06f6b2004-10-20 15:50:55 +000073 "t-member1",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +080074 &asn_OP_SET_OF,
Lev Walkin67ec2092004-09-08 00:26:56 +000075 SET_OF_constraint,
Lev Walkin59b176e2005-11-26 11:25:14 +000076 asn_DEF_t_member1_tags_2,
77 sizeof(asn_DEF_t_member1_tags_2)
78 /sizeof(asn_DEF_t_member1_tags_2[0]), /* 1 */
79 asn_DEF_t_member1_tags_2, /* Same as above */
80 sizeof(asn_DEF_t_member1_tags_2)
81 /sizeof(asn_DEF_t_member1_tags_2[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +040082 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +000083 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +000084 asn_MBR_t_member1_2,
Lev Walkin67ec2092004-09-08 00:26:56 +000085 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +000086 &asn_SPC_t_member1_specs_2 /* Additional specs */
Lev Walkin67ec2092004-09-08 00:26:56 +000087};
88
Lev Walkine8318b82005-03-06 09:29:03 +000089static asn_TYPE_member_t asn_MBR_t_member2_4[] = {
Lev Walkin8eb4b572005-08-16 16:57:17 +000090 { ATF_POINTER, 0, 0,
Lev Walkin67ec2092004-09-08 00:26:56 +000091 .tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
92 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +000093 .type = &asn_DEF_Test_structure_1,
Lev Walkin67a30122017-08-10 05:48:54 -070094 .type_selector = 0,
Lev Walkinba58e1b2005-01-17 12:20:19 +000095 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +040096 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +000097 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
98 .default_value = 0,
Lev Walkin67ec2092004-09-08 00:26:56 +000099 .name = ""
100 },
101};
Lev Walkina7591b52014-10-12 18:37:35 -0700102static const ber_tlv_tag_t asn_DEF_t_member2_tags_4[] = {
Lev Walkin67ec2092004-09-08 00:26:56 +0000103 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
104};
Lev Walkin59b176e2005-11-26 11:25:14 +0000105static asn_SET_OF_specifics_t asn_SPC_t_member2_specs_4 = {
Lev Walkin67ec2092004-09-08 00:26:56 +0000106 sizeof(struct t_member2),
Lev Walkin1ca69672004-09-29 13:19:12 +0000107 offsetof(struct t_member2, _asn_ctx),
Lev Walkina9cc46e2004-09-22 16:06:28 +0000108 0, /* XER encoding is XMLDelimitedItemList */
Lev Walkin67ec2092004-09-08 00:26:56 +0000109};
110static /* Use -fall-defs-global to expose */
Lev Walkine8318b82005-03-06 09:29:03 +0000111asn_TYPE_descriptor_t asn_DEF_t_member2_4 = {
Lev Walkin67ec2092004-09-08 00:26:56 +0000112 "t-member2",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000113 "t-member2",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800114 &asn_OP_SEQUENCE_OF,
Lev Walkin67ec2092004-09-08 00:26:56 +0000115 SEQUENCE_OF_constraint,
Lev Walkin59b176e2005-11-26 11:25:14 +0000116 asn_DEF_t_member2_tags_4,
117 sizeof(asn_DEF_t_member2_tags_4)
118 /sizeof(asn_DEF_t_member2_tags_4[0]), /* 1 */
119 asn_DEF_t_member2_tags_4, /* Same as above */
120 sizeof(asn_DEF_t_member2_tags_4)
121 /sizeof(asn_DEF_t_member2_tags_4[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400122 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000123 0, /* No PER visible constraints */
Lev Walkine8318b82005-03-06 09:29:03 +0000124 asn_MBR_t_member2_4,
Lev Walkin67ec2092004-09-08 00:26:56 +0000125 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +0000126 &asn_SPC_t_member2_specs_4 /* Additional specs */
Lev Walkin67ec2092004-09-08 00:26:56 +0000127};
128
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800129asn_TYPE_member_t asn_MBR_Test_structure_1_1[] = {
Lev Walkincc93b0f2004-09-10 09:18:20 +0000130 { ATF_NOFLAGS, 0, offsetof(struct Test_structure_1, t_member1),
Lev Walkin67ec2092004-09-08 00:26:56 +0000131 .tag = (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)),
132 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000133 .type = &asn_DEF_t_member1_2,
Lev Walkin67a30122017-08-10 05:48:54 -0700134 .type_selector = 0,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000135 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400136 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000137 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
138 .default_value = 0,
Lev Walkin67ec2092004-09-08 00:26:56 +0000139 .name = "t-member1"
140 },
Lev Walkincc93b0f2004-09-10 09:18:20 +0000141 { ATF_NOFLAGS, 0, offsetof(struct Test_structure_1, t_member2),
Lev Walkin67ec2092004-09-08 00:26:56 +0000142 .tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
143 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000144 .type = &asn_DEF_t_member2_4,
Lev Walkin67a30122017-08-10 05:48:54 -0700145 .type_selector = 0,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000146 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400147 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000148 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
149 .default_value = 0,
Lev Walkin67ec2092004-09-08 00:26:56 +0000150 .name = "t-member2"
151 },
Lev Walkincc93b0f2004-09-10 09:18:20 +0000152 { ATF_POINTER, 1, offsetof(struct Test_structure_1, t_member3),
Lev Walkin67ec2092004-09-08 00:26:56 +0000153 .tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
154 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000155 .type = &asn_DEF_Test_structure_1,
Lev Walkin67a30122017-08-10 05:48:54 -0700156 .type_selector = 0,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000157 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400158 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000159 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
160 .default_value = 0,
Lev Walkin67ec2092004-09-08 00:26:56 +0000161 .name = "t-member3"
162 },
Lev Walkincc93b0f2004-09-10 09:18:20 +0000163 { ATF_NOFLAGS, 0, offsetof(struct Test_structure_1, t_member4),
Lev Walkin67ec2092004-09-08 00:26:56 +0000164 .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
165 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000166 .type = &asn_DEF_INTEGER,
Lev Walkin67a30122017-08-10 05:48:54 -0700167 .type_selector = 0,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000168 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400169 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000170 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
171 .default_value = 0,
Lev Walkin67ec2092004-09-08 00:26:56 +0000172 .name = "t-member4"
173 },
174};
Lev Walkina7591b52014-10-12 18:37:35 -0700175static const ber_tlv_tag_t asn_DEF_Test_structure_1_tags_1[] = {
Lev Walkin67ec2092004-09-08 00:26:56 +0000176 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
177};
Lev Walkina7591b52014-10-12 18:37:35 -0700178static const asn_TYPE_tag2member_t asn_MAP_Test_structure_1_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700179 { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 3, 0, 0 }, /* t-member4 */
180 { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 1 }, /* t-member2 */
181 { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -1, 0 }, /* t-member3 */
182 { (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)), 0, 0, 0 } /* t-member1 */
Lev Walkin67ec2092004-09-08 00:26:56 +0000183};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800184asn_SEQUENCE_specifics_t asn_SPC_Test_structure_1_specs_1 = {
Lev Walkin67ec2092004-09-08 00:26:56 +0000185 sizeof(struct Test_structure_1),
Lev Walkin1ca69672004-09-29 13:19:12 +0000186 offsetof(struct Test_structure_1, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -0700187 .tag2el = asn_MAP_Test_structure_1_tag2el_1,
188 .tag2el_count = 4, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000189 0, 0, 0, /* Optional elements (not needed) */
Lev Walkin67ec2092004-09-08 00:26:56 +0000190 -1, /* Start extensions */
191 -1 /* Stop extensions */
192};
Lev Walkin1ca69672004-09-29 13:19:12 +0000193asn_TYPE_descriptor_t asn_DEF_Test_structure_1 = {
Lev Walkin67ec2092004-09-08 00:26:56 +0000194 "Test-structure-1",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000195 "Test-structure-1",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800196 &asn_OP_SEQUENCE,
Lev Walkin67ec2092004-09-08 00:26:56 +0000197 SEQUENCE_constraint,
Lev Walkin59b176e2005-11-26 11:25:14 +0000198 asn_DEF_Test_structure_1_tags_1,
199 sizeof(asn_DEF_Test_structure_1_tags_1)
200 /sizeof(asn_DEF_Test_structure_1_tags_1[0]), /* 1 */
201 asn_DEF_Test_structure_1_tags_1, /* Same as above */
202 sizeof(asn_DEF_Test_structure_1_tags_1)
203 /sizeof(asn_DEF_Test_structure_1_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400204 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000205 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000206 asn_MBR_Test_structure_1_1,
Lev Walkin67ec2092004-09-08 00:26:56 +0000207 4, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000208 &asn_SPC_Test_structure_1_specs_1 /* Additional specs */
Lev Walkin67ec2092004-09-08 00:26:56 +0000209};
210
211
212/*** <<< INCLUDES [Choice-1] >>> ***/
213
Lev Walkin67ec2092004-09-08 00:26:56 +0000214#include <INTEGER.h>
215#include <asn_SET_OF.h>
216#include <constr_SET_OF.h>
217#include <constr_CHOICE.h>
218
219/*** <<< DEPS [Choice-1] >>> ***/
220
221typedef enum Choice_1_PR {
222 Choice_1_PR_NOTHING, /* No components present */
223 Choice_1_PR_and,
224 Choice_1_PR_or,
225 Choice_1_PR_not,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000226 Choice_1_PR_other
Lev Walkin67ec2092004-09-08 00:26:56 +0000227} Choice_1_PR;
Lev Walkin1ca69672004-09-29 13:19:12 +0000228
Lev Walkinc8285712005-03-04 22:18:20 +0000229/*** <<< FWD-DECLS [Choice-1] >>> ***/
Lev Walkin1ca69672004-09-29 13:19:12 +0000230
Lev Walkinbf56d542005-03-04 23:50:56 +0000231struct Choice_1;
Lev Walkin67ec2092004-09-08 00:26:56 +0000232
233/*** <<< TYPE-DECLS [Choice-1] >>> ***/
234
Lev Walkin67ec2092004-09-08 00:26:56 +0000235typedef struct Choice_1 {
236 Choice_1_PR present;
Lev Walkin0f5d74c2005-08-14 15:03:31 +0000237 union Choice_1_u {
Lev Walkin2a744a72013-03-27 01:56:23 -0700238 struct Choice_1 *And;
239 struct Or {
Lev Walkin67ec2092004-09-08 00:26:56 +0000240 A_SET_OF(struct Choice_1) list;
241
242 /* Context for parsing across buffer boundaries */
Lev Walkin1ca69672004-09-29 13:19:12 +0000243 asn_struct_ctx_t _asn_ctx;
Lev Walkin2a744a72013-03-27 01:56:23 -0700244 } Or;
245 struct Choice_1 *Not;
Lev Walkin67ec2092004-09-08 00:26:56 +0000246 INTEGER_t other;
247 } choice;
248
249 /* Context for parsing across buffer boundaries */
Lev Walkin1ca69672004-09-29 13:19:12 +0000250 asn_struct_ctx_t _asn_ctx;
Lev Walkin67ec2092004-09-08 00:26:56 +0000251} Choice_1_t;
252
Lev Walkinc8285712005-03-04 22:18:20 +0000253/*** <<< FUNC-DECLS [Choice-1] >>> ***/
254
255extern asn_TYPE_descriptor_t asn_DEF_Choice_1;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800256extern asn_CHOICE_specifics_t asn_SPC_Choice_1_specs_1;
257extern asn_TYPE_member_t asn_MBR_Choice_1_1[4];
Lev Walkinc8285712005-03-04 22:18:20 +0000258
259/*** <<< POST-INCLUDE [Choice-1] >>> ***/
260
Lev Walkin22b5ed42006-09-13 02:51:20 +0000261#include "Choice-1.h"
Lev Walkinc8285712005-03-04 22:18:20 +0000262
Lev Walkin67ec2092004-09-08 00:26:56 +0000263/*** <<< STAT-DEFS [Choice-1] >>> ***/
264
Lev Walkine8318b82005-03-06 09:29:03 +0000265static asn_TYPE_member_t asn_MBR_or_3[] = {
Lev Walkin8eb4b572005-08-16 16:57:17 +0000266 { ATF_POINTER, 0, 0,
Lev Walkinb9189732004-09-10 09:37:12 +0000267 .tag = -1 /* Ambiguous tag (CHOICE?) */,
Lev Walkin67ec2092004-09-08 00:26:56 +0000268 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000269 .type = &asn_DEF_Choice_1,
Lev Walkin67a30122017-08-10 05:48:54 -0700270 .type_selector = 0,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000271 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400272 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000273 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
274 .default_value = 0,
Lev Walkin67ec2092004-09-08 00:26:56 +0000275 .name = ""
276 },
277};
Lev Walkina7591b52014-10-12 18:37:35 -0700278static const ber_tlv_tag_t asn_DEF_or_tags_3[] = {
Lev Walkin188ed2c2004-09-13 08:31:01 +0000279 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
280 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
Lev Walkin67ec2092004-09-08 00:26:56 +0000281};
Lev Walkin59b176e2005-11-26 11:25:14 +0000282static asn_SET_OF_specifics_t asn_SPC_or_specs_3 = {
Lev Walkin2a744a72013-03-27 01:56:23 -0700283 sizeof(struct Or),
284 offsetof(struct Or, _asn_ctx),
Lev Walkind1bfea62005-11-08 03:06:16 +0000285 2, /* XER encoding is XMLValueList */
Lev Walkin67ec2092004-09-08 00:26:56 +0000286};
287static /* Use -fall-defs-global to expose */
Lev Walkine8318b82005-03-06 09:29:03 +0000288asn_TYPE_descriptor_t asn_DEF_or_3 = {
Lev Walkin67ec2092004-09-08 00:26:56 +0000289 "or",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000290 "or",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800291 &asn_OP_SET_OF,
Lev Walkin67ec2092004-09-08 00:26:56 +0000292 SET_OF_constraint,
Lev Walkin59b176e2005-11-26 11:25:14 +0000293 asn_DEF_or_tags_3,
294 sizeof(asn_DEF_or_tags_3)
295 /sizeof(asn_DEF_or_tags_3[0]) - 1, /* 1 */
296 asn_DEF_or_tags_3, /* Same as above */
297 sizeof(asn_DEF_or_tags_3)
298 /sizeof(asn_DEF_or_tags_3[0]), /* 2 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400299 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000300 0, /* No PER visible constraints */
Lev Walkine8318b82005-03-06 09:29:03 +0000301 asn_MBR_or_3,
Lev Walkin67ec2092004-09-08 00:26:56 +0000302 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +0000303 &asn_SPC_or_specs_3 /* Additional specs */
Lev Walkin67ec2092004-09-08 00:26:56 +0000304};
305
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800306asn_TYPE_member_t asn_MBR_Choice_1_1[] = {
Lev Walkin2a744a72013-03-27 01:56:23 -0700307 { ATF_POINTER, 0, offsetof(struct Choice_1, choice.And),
Lev Walkin67ec2092004-09-08 00:26:56 +0000308 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
309 .tag_mode = +1, /* EXPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000310 .type = &asn_DEF_Choice_1,
Lev Walkin67a30122017-08-10 05:48:54 -0700311 .type_selector = 0,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000312 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400313 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000314 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
315 .default_value = 0,
Lev Walkin67ec2092004-09-08 00:26:56 +0000316 .name = "and"
317 },
Lev Walkin2a744a72013-03-27 01:56:23 -0700318 { ATF_NOFLAGS, 0, offsetof(struct Choice_1, choice.Or),
Lev Walkin67ec2092004-09-08 00:26:56 +0000319 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
Lev Walkin9ab21b82006-10-19 02:46:01 +0000320 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000321 .type = &asn_DEF_or_3,
Lev Walkin67a30122017-08-10 05:48:54 -0700322 .type_selector = 0,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000323 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400324 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000325 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
326 .default_value = 0,
Lev Walkin67ec2092004-09-08 00:26:56 +0000327 .name = "or"
328 },
Lev Walkin2a744a72013-03-27 01:56:23 -0700329 { ATF_POINTER, 0, offsetof(struct Choice_1, choice.Not),
Lev Walkin67ec2092004-09-08 00:26:56 +0000330 .tag = (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
331 .tag_mode = +1, /* EXPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000332 .type = &asn_DEF_Choice_1,
Lev Walkin67a30122017-08-10 05:48:54 -0700333 .type_selector = 0,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000334 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400335 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000336 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
337 .default_value = 0,
Lev Walkin67ec2092004-09-08 00:26:56 +0000338 .name = "not"
339 },
Lev Walkincc93b0f2004-09-10 09:18:20 +0000340 { ATF_NOFLAGS, 0, offsetof(struct Choice_1, choice.other),
Lev Walkin67ec2092004-09-08 00:26:56 +0000341 .tag = (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
342 .tag_mode = +1, /* EXPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000343 .type = &asn_DEF_INTEGER,
Lev Walkin67a30122017-08-10 05:48:54 -0700344 .type_selector = 0,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000345 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400346 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000347 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
348 .default_value = 0,
Lev Walkin67ec2092004-09-08 00:26:56 +0000349 .name = "other"
350 },
351};
Lev Walkina7591b52014-10-12 18:37:35 -0700352static const asn_TYPE_tag2member_t asn_MAP_Choice_1_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700353 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 0, 0, 0 }, /* and */
354 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 1, 0, 0 }, /* or */
355 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 2, 0, 0 }, /* not */
356 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 3, 0, 0 } /* other */
Lev Walkin67ec2092004-09-08 00:26:56 +0000357};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800358asn_CHOICE_specifics_t asn_SPC_Choice_1_specs_1 = {
Lev Walkin67ec2092004-09-08 00:26:56 +0000359 sizeof(struct Choice_1),
Lev Walkin1ca69672004-09-29 13:19:12 +0000360 offsetof(struct Choice_1, _asn_ctx),
Lev Walkin67ec2092004-09-08 00:26:56 +0000361 offsetof(struct Choice_1, present),
362 sizeof(((struct Choice_1 *)0)->present),
Lev Walkine3917082017-08-23 10:29:38 -0700363 .tag2el = asn_MAP_Choice_1_tag2el_1,
364 .tag2el_count = 4, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000365 .canonical_order = 0,
366 .ext_start = -1 /* Extensions start */
Lev Walkin67ec2092004-09-08 00:26:56 +0000367};
Lev Walkin1ca69672004-09-29 13:19:12 +0000368asn_TYPE_descriptor_t asn_DEF_Choice_1 = {
Lev Walkin67ec2092004-09-08 00:26:56 +0000369 "Choice-1",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000370 "Choice-1",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800371 &asn_OP_CHOICE,
Lev Walkin67ec2092004-09-08 00:26:56 +0000372 CHOICE_constraint,
Lev Walkin188ed2c2004-09-13 08:31:01 +0000373 0, /* No effective tags (pointer) */
374 0, /* No effective tags (count) */
375 0, /* No tags (pointer) */
376 0, /* No tags (count) */
Lev Walkinb33425f2017-07-14 14:59:52 +0400377 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000378 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000379 asn_MBR_Choice_1_1,
Lev Walkin67ec2092004-09-08 00:26:56 +0000380 4, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000381 &asn_SPC_Choice_1_specs_1 /* Additional specs */
Lev Walkin1ca69672004-09-29 13:19:12 +0000382};
383
384
385/*** <<< INCLUDES [Test-structure-2] >>> ***/
386
Lev Walkin1ca69672004-09-29 13:19:12 +0000387#include <constr_SET.h>
388
389/*** <<< DEPS [Test-structure-2] >>> ***/
390
391
392/*
393 * Method of determining the components presence
394 */
395typedef enum Test_structure_2_PR {
396 Test_structure_2_PR_m1, /* Member m1 is present */
397} Test_structure_2_PR;
398
Lev Walkinc8285712005-03-04 22:18:20 +0000399/*** <<< FWD-DECLS [Test-structure-2] >>> ***/
400
Lev Walkinbf56d542005-03-04 23:50:56 +0000401struct Test_structure_3;
Lev Walkin1ca69672004-09-29 13:19:12 +0000402
403/*** <<< TYPE-DECLS [Test-structure-2] >>> ***/
404
Lev Walkin1ca69672004-09-29 13:19:12 +0000405typedef struct Test_structure_2 {
406 struct Test_structure_3 *m1 /* OPTIONAL */;
407
408 /* Presence bitmask: ASN_SET_ISPRESENT(pTest_structure_2, Test_structure_2_PR_x) */
409 unsigned int _presence_map
410 [((1+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))];
411
412 /* Context for parsing across buffer boundaries */
413 asn_struct_ctx_t _asn_ctx;
414} Test_structure_2_t;
415
Lev Walkinc8285712005-03-04 22:18:20 +0000416/*** <<< FUNC-DECLS [Test-structure-2] >>> ***/
417
418extern asn_TYPE_descriptor_t asn_DEF_Test_structure_2;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800419extern asn_SET_specifics_t asn_SPC_Test_structure_2_specs_1;
420extern asn_TYPE_member_t asn_MBR_Test_structure_2_1[1];
Lev Walkinc8285712005-03-04 22:18:20 +0000421
422/*** <<< POST-INCLUDE [Test-structure-2] >>> ***/
423
Lev Walkin22b5ed42006-09-13 02:51:20 +0000424#include "Test-structure-3.h"
Lev Walkinc8285712005-03-04 22:18:20 +0000425
Lev Walkin1ca69672004-09-29 13:19:12 +0000426/*** <<< STAT-DEFS [Test-structure-2] >>> ***/
427
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800428asn_TYPE_member_t asn_MBR_Test_structure_2_1[] = {
Lev Walkin1ca69672004-09-29 13:19:12 +0000429 { ATF_POINTER, 1, offsetof(struct Test_structure_2, m1),
430 .tag = (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)),
431 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000432 .type = &asn_DEF_Test_structure_3,
Lev Walkin67a30122017-08-10 05:48:54 -0700433 .type_selector = 0,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000434 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400435 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000436 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
437 .default_value = 0,
Lev Walkin1ca69672004-09-29 13:19:12 +0000438 .name = "m1"
439 },
440};
Lev Walkina7591b52014-10-12 18:37:35 -0700441static const ber_tlv_tag_t asn_DEF_Test_structure_2_tags_1[] = {
Lev Walkin1ca69672004-09-29 13:19:12 +0000442 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
443};
Lev Walkina7591b52014-10-12 18:37:35 -0700444static const asn_TYPE_tag2member_t asn_MAP_Test_structure_2_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700445 { (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)), 0, 0, 0 } /* m1 */
Lev Walkin1ca69672004-09-29 13:19:12 +0000446};
Lev Walkina7591b52014-10-12 18:37:35 -0700447static const uint8_t asn_MAP_Test_structure_2_mmap_1[(1 + (8 * sizeof(unsigned int)) - 1) / 8] = {
Lev Walkin1ca69672004-09-29 13:19:12 +0000448 (0 << 7)
449};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800450asn_SET_specifics_t asn_SPC_Test_structure_2_specs_1 = {
Lev Walkin1ca69672004-09-29 13:19:12 +0000451 sizeof(struct Test_structure_2),
452 offsetof(struct Test_structure_2, _asn_ctx),
453 offsetof(struct Test_structure_2, _presence_map),
Lev Walkine3917082017-08-23 10:29:38 -0700454 .tag2el = asn_MAP_Test_structure_2_tag2el_1,
455 .tag2el_count = 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000456 asn_MAP_Test_structure_2_tag2el_1, /* Same as above */
Lev Walkinf82138b2005-02-25 08:20:32 +0000457 1, /* Count of tags in the CXER map */
Lev Walkin1ca69672004-09-29 13:19:12 +0000458 0, /* Whether extensible */
Lev Walkin46ef3f32017-07-06 08:47:53 -0700459 (const unsigned int *)asn_MAP_Test_structure_2_mmap_1 /* Mandatory elements map */
Lev Walkin1ca69672004-09-29 13:19:12 +0000460};
461asn_TYPE_descriptor_t asn_DEF_Test_structure_2 = {
462 "Test-structure-2",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000463 "Test-structure-2",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800464 &asn_OP_SET,
Lev Walkin1ca69672004-09-29 13:19:12 +0000465 SET_constraint,
Lev Walkin59b176e2005-11-26 11:25:14 +0000466 asn_DEF_Test_structure_2_tags_1,
467 sizeof(asn_DEF_Test_structure_2_tags_1)
468 /sizeof(asn_DEF_Test_structure_2_tags_1[0]), /* 1 */
469 asn_DEF_Test_structure_2_tags_1, /* Same as above */
470 sizeof(asn_DEF_Test_structure_2_tags_1)
471 /sizeof(asn_DEF_Test_structure_2_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400472 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000473 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000474 asn_MBR_Test_structure_2_1,
Lev Walkin1ca69672004-09-29 13:19:12 +0000475 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000476 &asn_SPC_Test_structure_2_specs_1 /* Additional specs */
Lev Walkin1ca69672004-09-29 13:19:12 +0000477};
478
479
480/*** <<< INCLUDES [Test-structure-3] >>> ***/
481
Lev Walkin1ca69672004-09-29 13:19:12 +0000482#include <constr_SET.h>
483
484/*** <<< DEPS [Test-structure-3] >>> ***/
485
486
487/*
488 * Method of determining the components presence
489 */
490typedef enum Test_structure_3_PR {
491 Test_structure_3_PR_m1, /* Member m1 is present */
492} Test_structure_3_PR;
493
Lev Walkinc8285712005-03-04 22:18:20 +0000494/*** <<< FWD-DECLS [Test-structure-3] >>> ***/
495
Lev Walkinbf56d542005-03-04 23:50:56 +0000496struct Test_structure_2;
Lev Walkin1ca69672004-09-29 13:19:12 +0000497
498/*** <<< TYPE-DECLS [Test-structure-3] >>> ***/
499
Lev Walkin1ca69672004-09-29 13:19:12 +0000500typedef struct Test_structure_3 {
501 struct Test_structure_2 *m1 /* OPTIONAL */;
502
503 /* Presence bitmask: ASN_SET_ISPRESENT(pTest_structure_3, Test_structure_3_PR_x) */
504 unsigned int _presence_map
505 [((1+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))];
506
507 /* Context for parsing across buffer boundaries */
508 asn_struct_ctx_t _asn_ctx;
509} Test_structure_3_t;
510
Lev Walkinc8285712005-03-04 22:18:20 +0000511/*** <<< FUNC-DECLS [Test-structure-3] >>> ***/
512
513extern asn_TYPE_descriptor_t asn_DEF_Test_structure_3;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800514extern asn_SET_specifics_t asn_SPC_Test_structure_3_specs_1;
515extern asn_TYPE_member_t asn_MBR_Test_structure_3_1[1];
Lev Walkinc8285712005-03-04 22:18:20 +0000516
517/*** <<< POST-INCLUDE [Test-structure-3] >>> ***/
518
Lev Walkin22b5ed42006-09-13 02:51:20 +0000519#include "Test-structure-2.h"
Lev Walkinc8285712005-03-04 22:18:20 +0000520
Lev Walkin1ca69672004-09-29 13:19:12 +0000521/*** <<< STAT-DEFS [Test-structure-3] >>> ***/
522
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800523asn_TYPE_member_t asn_MBR_Test_structure_3_1[] = {
Lev Walkin1ca69672004-09-29 13:19:12 +0000524 { ATF_POINTER, 1, offsetof(struct Test_structure_3, m1),
525 .tag = (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)),
526 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000527 .type = &asn_DEF_Test_structure_2,
Lev Walkin67a30122017-08-10 05:48:54 -0700528 .type_selector = 0,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000529 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400530 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000531 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
532 .default_value = 0,
Lev Walkin1ca69672004-09-29 13:19:12 +0000533 .name = "m1"
534 },
535};
Lev Walkina7591b52014-10-12 18:37:35 -0700536static const ber_tlv_tag_t asn_DEF_Test_structure_3_tags_1[] = {
Lev Walkin1ca69672004-09-29 13:19:12 +0000537 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
538};
Lev Walkina7591b52014-10-12 18:37:35 -0700539static const asn_TYPE_tag2member_t asn_MAP_Test_structure_3_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700540 { (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)), 0, 0, 0 } /* m1 */
Lev Walkin1ca69672004-09-29 13:19:12 +0000541};
Lev Walkina7591b52014-10-12 18:37:35 -0700542static const uint8_t asn_MAP_Test_structure_3_mmap_1[(1 + (8 * sizeof(unsigned int)) - 1) / 8] = {
Lev Walkin1ca69672004-09-29 13:19:12 +0000543 (0 << 7)
544};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800545asn_SET_specifics_t asn_SPC_Test_structure_3_specs_1 = {
Lev Walkin1ca69672004-09-29 13:19:12 +0000546 sizeof(struct Test_structure_3),
547 offsetof(struct Test_structure_3, _asn_ctx),
548 offsetof(struct Test_structure_3, _presence_map),
Lev Walkine3917082017-08-23 10:29:38 -0700549 .tag2el = asn_MAP_Test_structure_3_tag2el_1,
550 .tag2el_count = 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000551 asn_MAP_Test_structure_3_tag2el_1, /* Same as above */
Lev Walkinf82138b2005-02-25 08:20:32 +0000552 1, /* Count of tags in the CXER map */
Lev Walkin1ca69672004-09-29 13:19:12 +0000553 0, /* Whether extensible */
Lev Walkin46ef3f32017-07-06 08:47:53 -0700554 (const unsigned int *)asn_MAP_Test_structure_3_mmap_1 /* Mandatory elements map */
Lev Walkin1ca69672004-09-29 13:19:12 +0000555};
556asn_TYPE_descriptor_t asn_DEF_Test_structure_3 = {
557 "Test-structure-3",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000558 "Test-structure-3",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800559 &asn_OP_SET,
Lev Walkin1ca69672004-09-29 13:19:12 +0000560 SET_constraint,
Lev Walkin59b176e2005-11-26 11:25:14 +0000561 asn_DEF_Test_structure_3_tags_1,
562 sizeof(asn_DEF_Test_structure_3_tags_1)
563 /sizeof(asn_DEF_Test_structure_3_tags_1[0]), /* 1 */
564 asn_DEF_Test_structure_3_tags_1, /* Same as above */
565 sizeof(asn_DEF_Test_structure_3_tags_1)
566 /sizeof(asn_DEF_Test_structure_3_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400567 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000568 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000569 asn_MBR_Test_structure_3_1,
Lev Walkin1ca69672004-09-29 13:19:12 +0000570 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000571 &asn_SPC_Test_structure_3_specs_1 /* Additional specs */
Lev Walkin67ec2092004-09-08 00:26:56 +0000572};
573