c5b7465d594260be94dc8e113c06840cc119021e
[com/asn1c.git] / tests / tests-asn1c-compiler / 104-param-1-OK.asn1.-Pfwide-types
1
2 /*** <<< INCLUDES [Collection] >>> ***/
3
4 #include <REAL.h>
5 #include <asn_SET_OF.h>
6 #include <constr_SET_OF.h>
7 #include <IA5String.h>
8
9 /*** <<< TYPE-DECLS [Collection] >>> ***/
10
11 typedef struct Collection_16P0 {
12         A_SET_OF(REAL_t) list;
13         
14         /* Context for parsing across buffer boundaries */
15         asn_struct_ctx_t _asn_ctx;
16 } Collection_16P0_t;
17 typedef struct Collection_16P1 {
18         A_SET_OF(IA5String_t) list;
19         
20         /* Context for parsing across buffer boundaries */
21         asn_struct_ctx_t _asn_ctx;
22 } Collection_16P1_t;
23
24 /*** <<< FUNC-DECLS [Collection] >>> ***/
25
26 extern asn_TYPE_descriptor_t asn_DEF_Collection_16P0;
27 extern asn_SET_OF_specifics_t asn_SPC_Collection_16P0_specs_1;
28 extern asn_TYPE_member_t asn_MBR_Collection_16P0_1[1];
29 extern asn_TYPE_descriptor_t asn_DEF_Collection_16P1;
30 extern asn_SET_OF_specifics_t asn_SPC_Collection_16P1_specs_3;
31 extern asn_TYPE_member_t asn_MBR_Collection_16P1_3[1];
32
33 /*** <<< STAT-DEFS [Collection] >>> ***/
34
35 asn_TYPE_member_t asn_MBR_Collection_16P0_1[] = {
36         { ATF_POINTER, 0, 0,
37                 .tag = (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)),
38                 .tag_mode = 0,
39                 .type = &asn_DEF_REAL,
40                 .type_selector = 0,
41                 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
42                 0, 0, /* No default value */
43                 .name = ""
44                 },
45 };
46 static const ber_tlv_tag_t asn_DEF_Collection_16P0_tags_1[] = {
47         (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
48 };
49 asn_SET_OF_specifics_t asn_SPC_Collection_16P0_specs_1 = {
50         sizeof(struct Collection_16P0),
51         offsetof(struct Collection_16P0, _asn_ctx),
52         0,      /* XER encoding is XMLDelimitedItemList */
53 };
54 asn_TYPE_descriptor_t asn_DEF_Collection_16P0 = {
55         "Collection",
56         "Collection",
57         &asn_OP_SET_OF,
58         asn_DEF_Collection_16P0_tags_1,
59         sizeof(asn_DEF_Collection_16P0_tags_1)
60                 /sizeof(asn_DEF_Collection_16P0_tags_1[0]), /* 1 */
61         asn_DEF_Collection_16P0_tags_1, /* Same as above */
62         sizeof(asn_DEF_Collection_16P0_tags_1)
63                 /sizeof(asn_DEF_Collection_16P0_tags_1[0]), /* 1 */
64         { 0, 0, SET_OF_constraint },
65         asn_MBR_Collection_16P0_1,
66         1,      /* Single element */
67         &asn_SPC_Collection_16P0_specs_1        /* Additional specs */
68 };
69
70 asn_TYPE_member_t asn_MBR_Collection_16P1_3[] = {
71         { ATF_POINTER, 0, 0,
72                 .tag = (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)),
73                 .tag_mode = 0,
74                 .type = &asn_DEF_IA5String,
75                 .type_selector = 0,
76                 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
77                 0, 0, /* No default value */
78                 .name = ""
79                 },
80 };
81 static const ber_tlv_tag_t asn_DEF_Collection_16P1_tags_3[] = {
82         (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
83 };
84 asn_SET_OF_specifics_t asn_SPC_Collection_16P1_specs_3 = {
85         sizeof(struct Collection_16P1),
86         offsetof(struct Collection_16P1, _asn_ctx),
87         0,      /* XER encoding is XMLDelimitedItemList */
88 };
89 asn_TYPE_descriptor_t asn_DEF_Collection_16P1 = {
90         "Collection",
91         "Collection",
92         &asn_OP_SET_OF,
93         asn_DEF_Collection_16P1_tags_3,
94         sizeof(asn_DEF_Collection_16P1_tags_3)
95                 /sizeof(asn_DEF_Collection_16P1_tags_3[0]), /* 1 */
96         asn_DEF_Collection_16P1_tags_3, /* Same as above */
97         sizeof(asn_DEF_Collection_16P1_tags_3)
98                 /sizeof(asn_DEF_Collection_16P1_tags_3[0]), /* 1 */
99         { 0, 0, SET_OF_constraint },
100         asn_MBR_Collection_16P1_3,
101         1,      /* Single element */
102         &asn_SPC_Collection_16P1_specs_3        /* Additional specs */
103 };
104
105
106 /*** <<< INCLUDES [Bunch] >>> ***/
107
108 #include "Collection.h"
109 #include <constr_SEQUENCE.h>
110
111 /*** <<< TYPE-DECLS [Bunch] >>> ***/
112
113 typedef struct Bunch {
114         Collection_16P0_t        field_REAL;
115         Collection_16P1_t        field_IA5String;
116         
117         /* Context for parsing across buffer boundaries */
118         asn_struct_ctx_t _asn_ctx;
119 } Bunch_t;
120
121 /*** <<< FUNC-DECLS [Bunch] >>> ***/
122
123 extern asn_TYPE_descriptor_t asn_DEF_Bunch;
124
125 /*** <<< STAT-DEFS [Bunch] >>> ***/
126
127 static asn_TYPE_member_t asn_MBR_Bunch_1[] = {
128         { ATF_NOFLAGS, 0, offsetof(struct Bunch, field_REAL),
129                 .tag = (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)),
130                 .tag_mode = 0,
131                 .type = &asn_DEF_Collection_16P0,
132                 .type_selector = 0,
133                 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
134                 0, 0, /* No default value */
135                 .name = "field-REAL"
136                 },
137         { ATF_NOFLAGS, 0, offsetof(struct Bunch, field_IA5String),
138                 .tag = (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)),
139                 .tag_mode = 0,
140                 .type = &asn_DEF_Collection_16P1,
141                 .type_selector = 0,
142                 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
143                 0, 0, /* No default value */
144                 .name = "field-IA5String"
145                 },
146 };
147 static const ber_tlv_tag_t asn_DEF_Bunch_tags_1[] = {
148         (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
149 };
150 static const asn_TYPE_tag2member_t asn_MAP_Bunch_tag2el_1[] = {
151     { (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)), 0, 0, 1 }, /* field-REAL */
152     { (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)), 1, -1, 0 } /* field-IA5String */
153 };
154 static asn_SEQUENCE_specifics_t asn_SPC_Bunch_specs_1 = {
155         sizeof(struct Bunch),
156         offsetof(struct Bunch, _asn_ctx),
157         .tag2el = asn_MAP_Bunch_tag2el_1,
158         .tag2el_count = 2,      /* Count of tags in the map */
159         0, 0, 0,        /* Optional elements (not needed) */
160         -1,     /* First extension addition */
161 };
162 asn_TYPE_descriptor_t asn_DEF_Bunch = {
163         "Bunch",
164         "Bunch",
165         &asn_OP_SEQUENCE,
166         asn_DEF_Bunch_tags_1,
167         sizeof(asn_DEF_Bunch_tags_1)
168                 /sizeof(asn_DEF_Bunch_tags_1[0]), /* 1 */
169         asn_DEF_Bunch_tags_1,   /* Same as above */
170         sizeof(asn_DEF_Bunch_tags_1)
171                 /sizeof(asn_DEF_Bunch_tags_1[0]), /* 1 */
172         { 0, 0, SEQUENCE_constraint },
173         asn_MBR_Bunch_1,
174         2,      /* Elements count */
175         &asn_SPC_Bunch_specs_1  /* Additional specs */
176 };
177