7
7
/*** <<< TYPE-DECLS [Message] >>> ***/
8
8
9
9
typedef struct Message {
10
- RegionalExtension_30P0_t content;
10
+ RegionalExtension_t content;
11
11
12
12
/* Context for parsing across buffer boundaries */
13
13
asn_struct_ctx_t _asn_ctx;
@@ -23,7 +23,7 @@ static asn_TYPE_member_t asn_MBR_Message_1[] = {
23
23
{ ATF_NOFLAGS, 0, offsetof(struct Message, content),
24
24
.tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
25
25
.tag_mode = 0,
26
- .type = &asn_DEF_RegionalExtension_30P0 ,
26
+ .type = &asn_DEF_RegionalExtension ,
27
27
.type_selector = 0,
28
28
{ .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
29
29
0, 0, /* No default value */
@@ -81,11 +81,11 @@ typedef enum value_PR {
81
81
82
82
/*** <<< TYPE-DECLS [SpecializedContent] >>> ***/
83
83
84
- typedef struct RegionalExtension_30P0 {
84
+ typedef struct RegionalExtension {
85
85
long id;
86
86
struct value {
87
87
value_PR present;
88
- union RegionalExtension_30P0__value_u {
88
+ union RegionalExtension__value_u {
89
89
long INTEGER;
90
90
BOOLEAN_t BOOLEAN;
91
91
} choice;
@@ -96,13 +96,13 @@ typedef struct RegionalExtension_30P0 {
96
96
97
97
/* Context for parsing across buffer boundaries */
98
98
asn_struct_ctx_t _asn_ctx;
99
- } RegionalExtension_30P0_t ;
99
+ } RegionalExtension_t ;
100
100
101
101
/*** <<< FUNC-DECLS [SpecializedContent] >>> ***/
102
102
103
- extern asn_TYPE_descriptor_t asn_DEF_RegionalExtension_30P0 ;
104
- extern asn_SEQUENCE_specifics_t asn_SPC_RegionalExtension_30P0_specs_1 ;
105
- extern asn_TYPE_member_t asn_MBR_RegionalExtension_30P0_1 [2];
103
+ extern asn_TYPE_descriptor_t asn_DEF_RegionalExtension ;
104
+ extern asn_SEQUENCE_specifics_t asn_SPC_RegionalExtension_specs_1 ;
105
+ extern asn_TYPE_member_t asn_MBR_RegionalExtension_1 [2];
106
106
107
107
/*** <<< IOC-TABLES [SpecializedContent] >>> ***/
108
108
@@ -140,21 +140,25 @@ memb_id_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
140
140
}
141
141
142
142
static asn_type_selector_result_t
143
- select_RegionalExtension_30P0_value_type (const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
143
+ select_RegionalExtension_value_type (const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
144
144
asn_type_selector_result_t result = {0, 0};
145
145
const asn_ioc_set_t *itable = asn_IOS_RegionalExtension_1;
146
146
size_t constraining_column = 0; /* &id */
147
147
size_t for_column = 1; /* &Type */
148
- size_t row;
149
- const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RegionalExtension_30P0 , id));
148
+ size_t row, presence_index = 0 ;
149
+ const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RegionalExtension , id));
150
150
151
151
for(row=0; row < itable->rows_count; row++) {
152
152
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
153
153
const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
154
154
155
+ if(type_cell->cell_kind == aioc__undefined)
156
+ continue;
157
+
158
+ presence_index++;
155
159
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
156
160
result.type_descriptor = type_cell->type_descriptor;
157
- result.presence_index = row + 1 ;
161
+ result.presence_index = presence_index ;
158
162
break;
159
163
}
160
164
}
@@ -233,8 +237,8 @@ asn_TYPE_descriptor_t asn_DEF_value_3 = {
233
237
&asn_SPC_value_specs_3 /* Additional specs */
234
238
};
235
239
236
- asn_TYPE_member_t asn_MBR_RegionalExtension_30P0_1 [] = {
237
- { ATF_NOFLAGS, 0, offsetof(struct RegionalExtension_30P0 , id),
240
+ asn_TYPE_member_t asn_MBR_RegionalExtension_1 [] = {
241
+ { ATF_NOFLAGS, 0, offsetof(struct RegionalExtension , id),
238
242
.tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
239
243
.tag_mode = 0,
240
244
.type = &asn_DEF_NativeInteger,
@@ -243,43 +247,43 @@ asn_TYPE_member_t asn_MBR_RegionalExtension_30P0_1[] = {
243
247
0, 0, /* No default value */
244
248
.name = "id"
245
249
},
246
- { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RegionalExtension_30P0 , value),
250
+ { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RegionalExtension , value),
247
251
.tag = -1 /* Ambiguous tag (ANY?) */,
248
252
.tag_mode = 0,
249
253
.type = &asn_DEF_value_3,
250
- .type_selector = select_RegionalExtension_30P0_value_type ,
254
+ .type_selector = select_RegionalExtension_value_type ,
251
255
{ .oer_constraints = 0, .per_constraints = 0, .general_constraints = memb_value_constraint_1 },
252
256
0, 0, /* No default value */
253
257
.name = "value"
254
258
},
255
259
};
256
- static const ber_tlv_tag_t asn_DEF_RegionalExtension_30P0_tags_1 [] = {
260
+ static const ber_tlv_tag_t asn_DEF_RegionalExtension_tags_1 [] = {
257
261
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
258
262
};
259
- static const asn_TYPE_tag2member_t asn_MAP_RegionalExtension_30P0_tag2el_1 [] = {
263
+ static const asn_TYPE_tag2member_t asn_MAP_RegionalExtension_tag2el_1 [] = {
260
264
{ (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* id */
261
265
};
262
- asn_SEQUENCE_specifics_t asn_SPC_RegionalExtension_30P0_specs_1 = {
263
- sizeof(struct RegionalExtension_30P0 ),
264
- offsetof(struct RegionalExtension_30P0 , _asn_ctx),
265
- .tag2el = asn_MAP_RegionalExtension_30P0_tag2el_1 ,
266
+ asn_SEQUENCE_specifics_t asn_SPC_RegionalExtension_specs_1 = {
267
+ sizeof(struct RegionalExtension ),
268
+ offsetof(struct RegionalExtension , _asn_ctx),
269
+ .tag2el = asn_MAP_RegionalExtension_tag2el_1 ,
266
270
.tag2el_count = 1, /* Count of tags in the map */
267
271
0, 0, 0, /* Optional elements (not needed) */
268
272
-1, /* First extension addition */
269
273
};
270
- asn_TYPE_descriptor_t asn_DEF_RegionalExtension_30P0 = {
274
+ asn_TYPE_descriptor_t asn_DEF_RegionalExtension = {
271
275
"RegionalExtension",
272
276
"RegionalExtension",
273
277
&asn_OP_SEQUENCE,
274
- asn_DEF_RegionalExtension_30P0_tags_1 ,
275
- sizeof(asn_DEF_RegionalExtension_30P0_tags_1 )
276
- /sizeof(asn_DEF_RegionalExtension_30P0_tags_1 [0]), /* 1 */
277
- asn_DEF_RegionalExtension_30P0_tags_1 , /* Same as above */
278
- sizeof(asn_DEF_RegionalExtension_30P0_tags_1 )
279
- /sizeof(asn_DEF_RegionalExtension_30P0_tags_1 [0]), /* 1 */
278
+ asn_DEF_RegionalExtension_tags_1 ,
279
+ sizeof(asn_DEF_RegionalExtension_tags_1 )
280
+ /sizeof(asn_DEF_RegionalExtension_tags_1 [0]), /* 1 */
281
+ asn_DEF_RegionalExtension_tags_1 , /* Same as above */
282
+ sizeof(asn_DEF_RegionalExtension_tags_1 )
283
+ /sizeof(asn_DEF_RegionalExtension_tags_1 [0]), /* 1 */
280
284
{ 0, 0, SEQUENCE_constraint },
281
- asn_MBR_RegionalExtension_30P0_1 ,
285
+ asn_MBR_RegionalExtension_1 ,
282
286
2, /* Elements count */
283
- &asn_SPC_RegionalExtension_30P0_specs_1 /* Additional specs */
287
+ &asn_SPC_RegionalExtension_specs_1 /* Additional specs */
284
288
};
285
289
0 commit comments