1 /* c/zx-di12-dec.c - WARNING: This file was auto generated by xsd2sg.pl. DO NOT EDIT!
2  * $Id$ */
3 /* Code generation design Copyright (c) 2006 Sampo Kellomaki (sampo@iki.fi),
4  * All Rights Reserved. NO WARRANTY. See file COPYING for terms and conditions
5  * of use. Some aspects of code generation were driven by schema
6  * descriptions that were used as input and may be subject to their own copyright.
7  * Code generation uses a template, whose copyright statement follows. */
8 
9 /** dec-templ.c  -  XML decoder template, used in code generation
10  ** Copyright (c) 2010 Sampo Kellomaki (sampo@iki.fi), All Rights Reserved.
11  ** Copyright (c) 2006-2007 Symlabs (symlabs@symlabs.com), All Rights Reserved.
12  ** Author: Sampo Kellomaki (sampo@iki.fi)
13  ** This is confidential unpublished proprietary source code of the author.
14  ** NO WARRANTY, not even implied warranties. Contains trade secrets.
15  ** Distribution prohibited unless authorized in writing.
16  ** Licensed under Apache License 2.0, see file COPYING.
17  ** Id: dec-templ.c,v 1.30 2008-10-04 23:42:14 sampo Exp $
18  **
19  ** 28.5.2006, created, Sampo Kellomaki (sampo@iki.fi)
20  ** 8.8.2006,  reworked namespace handling --Sampo
21  ** 12.8.2006, added special scanning of xmlns to avoid backtracking elem recognition --Sampo
22  ** 23.9.2006, added collection of WO information --Sampo
23  ** 21.6.2007, improved handling of undeclared namespace prefixes --Sampo
24  ** 27.10.2010, CSE refactoring, re-engineered namespace handling --Sampo
25  ** 21.11.2010, re-engineered to extract most code to zx_DEC_elem, leaving just switches --Sampo
26  **
27  ** N.B: This template is meant to be processed by pd/xsd2sg.pl. Beware
28  ** of special markers that xsd2sg.pl expects to find and understand.
29  **/
30 
31 #include "errmac.h"
32 #include "zx.h"
33 #include "c/zx-const.h"
34 #include "c/zx-data.h"
35 #include "c/zx-di12-data.h"
36 #define TPF zx_
37 #include "zx_ext_pt.h"
38 
39 
40 
zx_DEC_ATTR_di12_AuthenticateRequester(struct zx_ctx * c,struct zx_di12_AuthenticateRequester_s * x)41 int zx_DEC_ATTR_di12_AuthenticateRequester(struct zx_ctx* c, struct zx_di12_AuthenticateRequester_s* x)
42 {
43   switch (x->gg.attr->g.tok) {
44     case zx_descriptionIDRefs_ATTR:  x->descriptionIDRefs = x->gg.attr; return 1;
45 
46   default: return 0;
47   }
48 }
49 
zx_DEC_ELEM_di12_AuthenticateRequester(struct zx_ctx * c,struct zx_di12_AuthenticateRequester_s * x)50 int zx_DEC_ELEM_di12_AuthenticateRequester(struct zx_ctx* c, struct zx_di12_AuthenticateRequester_s* x)
51 {
52   struct zx_elem_s* el = x->gg.kids;
53   switch (el->g.tok) {
54 
55   default: return 0;
56   }
57 }
58 
59 
60 
61 
zx_DEC_ATTR_di12_AuthenticateSessionContext(struct zx_ctx * c,struct zx_di12_AuthenticateSessionContext_s * x)62 int zx_DEC_ATTR_di12_AuthenticateSessionContext(struct zx_ctx* c, struct zx_di12_AuthenticateSessionContext_s* x)
63 {
64   switch (x->gg.attr->g.tok) {
65     case zx_descriptionIDRefs_ATTR:  x->descriptionIDRefs = x->gg.attr; return 1;
66 
67   default: return 0;
68   }
69 }
70 
zx_DEC_ELEM_di12_AuthenticateSessionContext(struct zx_ctx * c,struct zx_di12_AuthenticateSessionContext_s * x)71 int zx_DEC_ELEM_di12_AuthenticateSessionContext(struct zx_ctx* c, struct zx_di12_AuthenticateSessionContext_s* x)
72 {
73   struct zx_elem_s* el = x->gg.kids;
74   switch (el->g.tok) {
75 
76   default: return 0;
77   }
78 }
79 
80 
81 
82 
zx_DEC_ATTR_di12_AuthorizeRequester(struct zx_ctx * c,struct zx_di12_AuthorizeRequester_s * x)83 int zx_DEC_ATTR_di12_AuthorizeRequester(struct zx_ctx* c, struct zx_di12_AuthorizeRequester_s* x)
84 {
85   switch (x->gg.attr->g.tok) {
86     case zx_descriptionIDRefs_ATTR:  x->descriptionIDRefs = x->gg.attr; return 1;
87 
88   default: return 0;
89   }
90 }
91 
zx_DEC_ELEM_di12_AuthorizeRequester(struct zx_ctx * c,struct zx_di12_AuthorizeRequester_s * x)92 int zx_DEC_ELEM_di12_AuthorizeRequester(struct zx_ctx* c, struct zx_di12_AuthorizeRequester_s* x)
93 {
94   struct zx_elem_s* el = x->gg.kids;
95   switch (el->g.tok) {
96 
97   default: return 0;
98   }
99 }
100 
101 
102 
103 
zx_DEC_ATTR_di12_Credentials(struct zx_ctx * c,struct zx_di12_Credentials_s * x)104 int zx_DEC_ATTR_di12_Credentials(struct zx_ctx* c, struct zx_di12_Credentials_s* x)
105 {
106   switch (x->gg.attr->g.tok) {
107 
108   default: return 0;
109   }
110 }
111 
zx_DEC_ELEM_di12_Credentials(struct zx_ctx * c,struct zx_di12_Credentials_s * x)112 int zx_DEC_ELEM_di12_Credentials(struct zx_ctx* c, struct zx_di12_Credentials_s* x)
113 {
114   struct zx_elem_s* el = x->gg.kids;
115   switch (el->g.tok) {
116 
117   default: return 0;
118   }
119 }
120 
121 
122 
123 
zx_DEC_ATTR_di12_Description(struct zx_ctx * c,struct zx_di12_Description_s * x)124 int zx_DEC_ATTR_di12_Description(struct zx_ctx* c, struct zx_di12_Description_s* x)
125 {
126   switch (x->gg.attr->g.tok) {
127     case zx_id_ATTR:  x->id = x->gg.attr; return 1;
128 
129   default: return 0;
130   }
131 }
132 
zx_DEC_ELEM_di12_Description(struct zx_ctx * c,struct zx_di12_Description_s * x)133 int zx_DEC_ELEM_di12_Description(struct zx_ctx* c, struct zx_di12_Description_s* x)
134 {
135   struct zx_elem_s* el = x->gg.kids;
136   switch (el->g.tok) {
137   case zx_di12_SecurityMechID_ELEM:
138     if (!x->SecurityMechID)
139       x->SecurityMechID = el;
140     return 1;
141   case zx_di12_CredentialRef_ELEM:
142     if (!x->CredentialRef)
143       x->CredentialRef = el;
144     return 1;
145   case zx_di12_WsdlURI_ELEM:
146     if (!x->WsdlURI)
147       x->WsdlURI = el;
148     return 1;
149   case zx_di12_ServiceNameRef_ELEM:
150     if (!x->ServiceNameRef)
151       x->ServiceNameRef = el;
152     return 1;
153   case zx_di12_Endpoint_ELEM:
154     if (!x->Endpoint)
155       x->Endpoint = el;
156     return 1;
157   case zx_di12_SoapAction_ELEM:
158     if (!x->SoapAction)
159       x->SoapAction = el;
160     return 1;
161 
162   default: return 0;
163   }
164 }
165 
166 
167 
168 
zx_DEC_ATTR_di12_EncryptResourceID(struct zx_ctx * c,struct zx_di12_EncryptResourceID_s * x)169 int zx_DEC_ATTR_di12_EncryptResourceID(struct zx_ctx* c, struct zx_di12_EncryptResourceID_s* x)
170 {
171   switch (x->gg.attr->g.tok) {
172     case zx_descriptionIDRefs_ATTR:  x->descriptionIDRefs = x->gg.attr; return 1;
173 
174   default: return 0;
175   }
176 }
177 
zx_DEC_ELEM_di12_EncryptResourceID(struct zx_ctx * c,struct zx_di12_EncryptResourceID_s * x)178 int zx_DEC_ELEM_di12_EncryptResourceID(struct zx_ctx* c, struct zx_di12_EncryptResourceID_s* x)
179 {
180   struct zx_elem_s* el = x->gg.kids;
181   switch (el->g.tok) {
182 
183   default: return 0;
184   }
185 }
186 
187 
188 
189 
zx_DEC_ATTR_di12_EncryptedResourceID(struct zx_ctx * c,struct zx_di12_EncryptedResourceID_s * x)190 int zx_DEC_ATTR_di12_EncryptedResourceID(struct zx_ctx* c, struct zx_di12_EncryptedResourceID_s* x)
191 {
192   switch (x->gg.attr->g.tok) {
193 
194   default: return 0;
195   }
196 }
197 
zx_DEC_ELEM_di12_EncryptedResourceID(struct zx_ctx * c,struct zx_di12_EncryptedResourceID_s * x)198 int zx_DEC_ELEM_di12_EncryptedResourceID(struct zx_ctx* c, struct zx_di12_EncryptedResourceID_s* x)
199 {
200   struct zx_elem_s* el = x->gg.kids;
201   switch (el->g.tok) {
202   case zx_xenc_EncryptedData_ELEM:
203     if (!x->EncryptedData)
204       x->EncryptedData = (struct zx_xenc_EncryptedData_s*)el;
205     return 1;
206   case zx_xenc_EncryptedKey_ELEM:
207     if (!x->EncryptedKey)
208       x->EncryptedKey = (struct zx_xenc_EncryptedKey_s*)el;
209     return 1;
210 
211   default: return 0;
212   }
213 }
214 
215 
216 
217 
zx_DEC_ATTR_di12_Extension(struct zx_ctx * c,struct zx_di12_Extension_s * x)218 int zx_DEC_ATTR_di12_Extension(struct zx_ctx* c, struct zx_di12_Extension_s* x)
219 {
220   switch (x->gg.attr->g.tok) {
221 
222   default: return 0;
223   }
224 }
225 
zx_DEC_ELEM_di12_Extension(struct zx_ctx * c,struct zx_di12_Extension_s * x)226 int zx_DEC_ELEM_di12_Extension(struct zx_ctx* c, struct zx_di12_Extension_s* x)
227 {
228   struct zx_elem_s* el = x->gg.kids;
229   switch (el->g.tok) {
230 
231   default: return 0;
232   }
233 }
234 
235 
236 
237 
zx_DEC_ATTR_di12_InsertEntry(struct zx_ctx * c,struct zx_di12_InsertEntry_s * x)238 int zx_DEC_ATTR_di12_InsertEntry(struct zx_ctx* c, struct zx_di12_InsertEntry_s* x)
239 {
240   switch (x->gg.attr->g.tok) {
241 
242   default: return 0;
243   }
244 }
245 
zx_DEC_ELEM_di12_InsertEntry(struct zx_ctx * c,struct zx_di12_InsertEntry_s * x)246 int zx_DEC_ELEM_di12_InsertEntry(struct zx_ctx* c, struct zx_di12_InsertEntry_s* x)
247 {
248   struct zx_elem_s* el = x->gg.kids;
249   switch (el->g.tok) {
250   case zx_di12_ResourceOffering_ELEM:
251     if (!x->ResourceOffering)
252       x->ResourceOffering = (struct zx_di12_ResourceOffering_s*)el;
253     return 1;
254 
255   default: return 0;
256   }
257 }
258 
259 
260 
261 
zx_DEC_ATTR_di12_Modify(struct zx_ctx * c,struct zx_di12_Modify_s * x)262 int zx_DEC_ATTR_di12_Modify(struct zx_ctx* c, struct zx_di12_Modify_s* x)
263 {
264   switch (x->gg.attr->g.tok) {
265     case zx_id_ATTR:  x->id = x->gg.attr; return 1;
266 
267   default: return 0;
268   }
269 }
270 
zx_DEC_ELEM_di12_Modify(struct zx_ctx * c,struct zx_di12_Modify_s * x)271 int zx_DEC_ELEM_di12_Modify(struct zx_ctx* c, struct zx_di12_Modify_s* x)
272 {
273   struct zx_elem_s* el = x->gg.kids;
274   switch (el->g.tok) {
275   case zx_di12_ResourceID_ELEM:
276     if (!x->ResourceID)
277       x->ResourceID = (struct zx_di12_ResourceID_s*)el;
278     return 1;
279   case zx_di12_EncryptedResourceID_ELEM:
280     if (!x->EncryptedResourceID)
281       x->EncryptedResourceID = (struct zx_di12_EncryptedResourceID_s*)el;
282     return 1;
283   case zx_di12_InsertEntry_ELEM:
284     if (!x->InsertEntry)
285       x->InsertEntry = (struct zx_di12_InsertEntry_s*)el;
286     return 1;
287   case zx_di12_RemoveEntry_ELEM:
288     if (!x->RemoveEntry)
289       x->RemoveEntry = (struct zx_di12_RemoveEntry_s*)el;
290     return 1;
291 
292   default: return 0;
293   }
294 }
295 
296 
297 
298 
zx_DEC_ATTR_di12_ModifyResponse(struct zx_ctx * c,struct zx_di12_ModifyResponse_s * x)299 int zx_DEC_ATTR_di12_ModifyResponse(struct zx_ctx* c, struct zx_di12_ModifyResponse_s* x)
300 {
301   switch (x->gg.attr->g.tok) {
302     case zx_id_ATTR:  x->id = x->gg.attr; return 1;
303     case zx_newEntryIDs_ATTR:  x->newEntryIDs = x->gg.attr; return 1;
304 
305   default: return 0;
306   }
307 }
308 
zx_DEC_ELEM_di12_ModifyResponse(struct zx_ctx * c,struct zx_di12_ModifyResponse_s * x)309 int zx_DEC_ELEM_di12_ModifyResponse(struct zx_ctx* c, struct zx_di12_ModifyResponse_s* x)
310 {
311   struct zx_elem_s* el = x->gg.kids;
312   switch (el->g.tok) {
313   case zx_di12_Status_ELEM:
314     if (!x->Status)
315       x->Status = (struct zx_di12_Status_s*)el;
316     return 1;
317   case zx_di12_Extension_ELEM:
318     if (!x->Extension)
319       x->Extension = (struct zx_di12_Extension_s*)el;
320     return 1;
321 
322   default: return 0;
323   }
324 }
325 
326 
327 
328 
zx_DEC_ATTR_di12_Options(struct zx_ctx * c,struct zx_di12_Options_s * x)329 int zx_DEC_ATTR_di12_Options(struct zx_ctx* c, struct zx_di12_Options_s* x)
330 {
331   switch (x->gg.attr->g.tok) {
332 
333   default: return 0;
334   }
335 }
336 
zx_DEC_ELEM_di12_Options(struct zx_ctx * c,struct zx_di12_Options_s * x)337 int zx_DEC_ELEM_di12_Options(struct zx_ctx* c, struct zx_di12_Options_s* x)
338 {
339   struct zx_elem_s* el = x->gg.kids;
340   switch (el->g.tok) {
341   case zx_di12_Option_ELEM:
342     if (!x->Option)
343       x->Option = el;
344     return 1;
345 
346   default: return 0;
347   }
348 }
349 
350 
351 
352 
zx_DEC_ATTR_di12_Query(struct zx_ctx * c,struct zx_di12_Query_s * x)353 int zx_DEC_ATTR_di12_Query(struct zx_ctx* c, struct zx_di12_Query_s* x)
354 {
355   switch (x->gg.attr->g.tok) {
356     case zx_id_ATTR:  x->id = x->gg.attr; return 1;
357 
358   default: return 0;
359   }
360 }
361 
zx_DEC_ELEM_di12_Query(struct zx_ctx * c,struct zx_di12_Query_s * x)362 int zx_DEC_ELEM_di12_Query(struct zx_ctx* c, struct zx_di12_Query_s* x)
363 {
364   struct zx_elem_s* el = x->gg.kids;
365   switch (el->g.tok) {
366   case zx_di12_ResourceID_ELEM:
367     if (!x->ResourceID)
368       x->ResourceID = (struct zx_di12_ResourceID_s*)el;
369     return 1;
370   case zx_di12_EncryptedResourceID_ELEM:
371     if (!x->EncryptedResourceID)
372       x->EncryptedResourceID = (struct zx_di12_EncryptedResourceID_s*)el;
373     return 1;
374   case zx_di12_RequestedServiceType_ELEM:
375     if (!x->RequestedServiceType)
376       x->RequestedServiceType = (struct zx_di12_RequestedServiceType_s*)el;
377     return 1;
378 
379   default: return 0;
380   }
381 }
382 
383 
384 
385 
zx_DEC_ATTR_di12_QueryResponse(struct zx_ctx * c,struct zx_di12_QueryResponse_s * x)386 int zx_DEC_ATTR_di12_QueryResponse(struct zx_ctx* c, struct zx_di12_QueryResponse_s* x)
387 {
388   switch (x->gg.attr->g.tok) {
389     case zx_id_ATTR:  x->id = x->gg.attr; return 1;
390 
391   default: return 0;
392   }
393 }
394 
zx_DEC_ELEM_di12_QueryResponse(struct zx_ctx * c,struct zx_di12_QueryResponse_s * x)395 int zx_DEC_ELEM_di12_QueryResponse(struct zx_ctx* c, struct zx_di12_QueryResponse_s* x)
396 {
397   struct zx_elem_s* el = x->gg.kids;
398   switch (el->g.tok) {
399   case zx_di12_Status_ELEM:
400     if (!x->Status)
401       x->Status = (struct zx_di12_Status_s*)el;
402     return 1;
403   case zx_di12_ResourceOffering_ELEM:
404     if (!x->ResourceOffering)
405       x->ResourceOffering = (struct zx_di12_ResourceOffering_s*)el;
406     return 1;
407   case zx_di12_Credentials_ELEM:
408     if (!x->Credentials)
409       x->Credentials = (struct zx_di12_Credentials_s*)el;
410     return 1;
411 
412   default: return 0;
413   }
414 }
415 
416 
417 
418 
zx_DEC_ATTR_di12_RemoveEntry(struct zx_ctx * c,struct zx_di12_RemoveEntry_s * x)419 int zx_DEC_ATTR_di12_RemoveEntry(struct zx_ctx* c, struct zx_di12_RemoveEntry_s* x)
420 {
421   switch (x->gg.attr->g.tok) {
422     case zx_entryID_ATTR:  x->entryID = x->gg.attr; return 1;
423 
424   default: return 0;
425   }
426 }
427 
zx_DEC_ELEM_di12_RemoveEntry(struct zx_ctx * c,struct zx_di12_RemoveEntry_s * x)428 int zx_DEC_ELEM_di12_RemoveEntry(struct zx_ctx* c, struct zx_di12_RemoveEntry_s* x)
429 {
430   struct zx_elem_s* el = x->gg.kids;
431   switch (el->g.tok) {
432 
433   default: return 0;
434   }
435 }
436 
437 
438 
439 
zx_DEC_ATTR_di12_RequestedServiceType(struct zx_ctx * c,struct zx_di12_RequestedServiceType_s * x)440 int zx_DEC_ATTR_di12_RequestedServiceType(struct zx_ctx* c, struct zx_di12_RequestedServiceType_s* x)
441 {
442   switch (x->gg.attr->g.tok) {
443 
444   default: return 0;
445   }
446 }
447 
zx_DEC_ELEM_di12_RequestedServiceType(struct zx_ctx * c,struct zx_di12_RequestedServiceType_s * x)448 int zx_DEC_ELEM_di12_RequestedServiceType(struct zx_ctx* c, struct zx_di12_RequestedServiceType_s* x)
449 {
450   struct zx_elem_s* el = x->gg.kids;
451   switch (el->g.tok) {
452   case zx_di12_ServiceType_ELEM:
453     if (!x->ServiceType)
454       x->ServiceType = el;
455     return 1;
456   case zx_di12_Options_ELEM:
457     if (!x->Options)
458       x->Options = (struct zx_di12_Options_s*)el;
459     return 1;
460 
461   default: return 0;
462   }
463 }
464 
465 
466 
467 
zx_DEC_ATTR_di12_ResourceID(struct zx_ctx * c,struct zx_di12_ResourceID_s * x)468 int zx_DEC_ATTR_di12_ResourceID(struct zx_ctx* c, struct zx_di12_ResourceID_s* x)
469 {
470   switch (x->gg.attr->g.tok) {
471     case zx_id_ATTR:  x->id = x->gg.attr; return 1;
472 
473   default: return 0;
474   }
475 }
476 
zx_DEC_ELEM_di12_ResourceID(struct zx_ctx * c,struct zx_di12_ResourceID_s * x)477 int zx_DEC_ELEM_di12_ResourceID(struct zx_ctx* c, struct zx_di12_ResourceID_s* x)
478 {
479   struct zx_elem_s* el = x->gg.kids;
480   switch (el->g.tok) {
481 
482   default: return 0;
483   }
484 }
485 
486 
487 
488 
zx_DEC_ATTR_di12_ResourceOffering(struct zx_ctx * c,struct zx_di12_ResourceOffering_s * x)489 int zx_DEC_ATTR_di12_ResourceOffering(struct zx_ctx* c, struct zx_di12_ResourceOffering_s* x)
490 {
491   switch (x->gg.attr->g.tok) {
492     case zx_entryID_ATTR:  x->entryID = x->gg.attr; return 1;
493 
494   default: return 0;
495   }
496 }
497 
zx_DEC_ELEM_di12_ResourceOffering(struct zx_ctx * c,struct zx_di12_ResourceOffering_s * x)498 int zx_DEC_ELEM_di12_ResourceOffering(struct zx_ctx* c, struct zx_di12_ResourceOffering_s* x)
499 {
500   struct zx_elem_s* el = x->gg.kids;
501   switch (el->g.tok) {
502   case zx_di12_ResourceID_ELEM:
503     if (!x->ResourceID)
504       x->ResourceID = (struct zx_di12_ResourceID_s*)el;
505     return 1;
506   case zx_di12_EncryptedResourceID_ELEM:
507     if (!x->EncryptedResourceID)
508       x->EncryptedResourceID = (struct zx_di12_EncryptedResourceID_s*)el;
509     return 1;
510   case zx_di12_ServiceInstance_ELEM:
511     if (!x->ServiceInstance)
512       x->ServiceInstance = (struct zx_di12_ServiceInstance_s*)el;
513     return 1;
514   case zx_di12_Options_ELEM:
515     if (!x->Options)
516       x->Options = (struct zx_di12_Options_s*)el;
517     return 1;
518   case zx_di12_Abstract_ELEM:
519     if (!x->Abstract)
520       x->Abstract = el;
521     return 1;
522 
523   default: return 0;
524   }
525 }
526 
527 
528 
529 
zx_DEC_ATTR_di12_ServiceInstance(struct zx_ctx * c,struct zx_di12_ServiceInstance_s * x)530 int zx_DEC_ATTR_di12_ServiceInstance(struct zx_ctx* c, struct zx_di12_ServiceInstance_s* x)
531 {
532   switch (x->gg.attr->g.tok) {
533 
534   default: return 0;
535   }
536 }
537 
zx_DEC_ELEM_di12_ServiceInstance(struct zx_ctx * c,struct zx_di12_ServiceInstance_s * x)538 int zx_DEC_ELEM_di12_ServiceInstance(struct zx_ctx* c, struct zx_di12_ServiceInstance_s* x)
539 {
540   struct zx_elem_s* el = x->gg.kids;
541   switch (el->g.tok) {
542   case zx_di12_ServiceType_ELEM:
543     if (!x->ServiceType)
544       x->ServiceType = el;
545     return 1;
546   case zx_di12_ProviderID_ELEM:
547     if (!x->ProviderID)
548       x->ProviderID = el;
549     return 1;
550   case zx_di12_Description_ELEM:
551     if (!x->Description)
552       x->Description = (struct zx_di12_Description_s*)el;
553     return 1;
554 
555   default: return 0;
556   }
557 }
558 
559 
560 
561 
zx_DEC_ATTR_di12_Status(struct zx_ctx * c,struct zx_di12_Status_s * x)562 int zx_DEC_ATTR_di12_Status(struct zx_ctx* c, struct zx_di12_Status_s* x)
563 {
564   switch (x->gg.attr->g.tok) {
565     case zx_code_ATTR:  x->code = x->gg.attr; return 1;
566     case zx_comment_ATTR:  x->comment = x->gg.attr; return 1;
567     case zx_ref_ATTR:  x->ref = x->gg.attr; return 1;
568 
569   default: return 0;
570   }
571 }
572 
zx_DEC_ELEM_di12_Status(struct zx_ctx * c,struct zx_di12_Status_s * x)573 int zx_DEC_ELEM_di12_Status(struct zx_ctx* c, struct zx_di12_Status_s* x)
574 {
575   struct zx_elem_s* el = x->gg.kids;
576   switch (el->g.tok) {
577   case zx_di12_Status_ELEM:
578     if (!x->Status)
579       x->Status = (struct zx_di12_Status_s*)el;
580     return 1;
581 
582   default: return 0;
583   }
584 }
585 
586 
587 /* EOF -- c/zx-di12-dec.c */
588