constr_SET_OF_print.c
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2017 Lev Walkin <vlm@lionet.info>.
3  * All rights reserved.
4  * Redistribution and modifications are permitted subject to BSD license.
5  */
8 
9 int
10 SET_OF_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel,
11  asn_app_consume_bytes_f *cb, void *app_key) {
12  asn_TYPE_member_t *elm = td->elements;
13  const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr);
14  int ret;
15  int i;
16 
17  if(!sptr) return (cb("<absent>", 8, app_key) < 0) ? -1 : 0;
18 
19  /* Dump preamble */
20  if(cb(td->name, strlen(td->name), app_key) < 0
21  || cb(" ::= {", 6, app_key) < 0)
22  return -1;
23 
24  for(i = 0; i < list->count; i++) {
25  const void *memb_ptr = list->array[i];
26  if(!memb_ptr) continue;
27 
28  _i_INDENT(1);
29 
30  ret = elm->type->op->print_struct(elm->type, memb_ptr,
31  ilevel + 1, cb, app_key);
32  if(ret) return ret;
33  }
34 
35  ilevel--;
36  _i_INDENT(1);
37 
38  return (cb("}", 1, app_key) < 0) ? -1 : 0;
39 }
asn_TYPE_descriptor_s::name
const char * name
Definition: constr_TYPE.h:225
asn_TYPE_descriptor_s
Definition: constr_TYPE.h:224
asn_TYPE_member_s::type
asn_TYPE_descriptor_t * type
Definition: constr_TYPE.h:278
asn_TYPE_descriptor_s::op
asn_TYPE_operation_t * op
Definition: constr_TYPE.h:232
constr_SET_OF.h
_A_CSET_FROM_VOID
#define _A_CSET_FROM_VOID(ptr)
Definition: asn_SET_OF.h:66
asn_TYPE_operation_s::print_struct
asn_struct_print_f * print_struct
Definition: constr_TYPE.h:186
SET_OF_print
int SET_OF_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, asn_app_consume_bytes_f *cb, void *app_key)
Definition: constr_SET_OF_print.c:10
asn_app_consume_bytes_f
int() asn_app_consume_bytes_f(const void *buffer, size_t size, void *application_specific_key)
Definition: asn_application.h:124
asn_internal.h
asn_TYPE_descriptor_s::elements
struct asn_TYPE_member_s * elements
Definition: constr_TYPE.h:252
_i_INDENT
#define _i_INDENT(nl)
Definition: asn_internal.h:127
asn_TYPE_member_s
Definition: constr_TYPE.h:272


etsi_its_vam_ts_coding
Author(s): Jean-Pierre Busch , Guido Küppers , Lennart Reiher
autogenerated on Sun May 18 2025 02:30:55