asn_SEQUENCE_OF.c
Go to the documentation of this file.
1 /*-
2  * Copyright (c) 2003, 2004 Lev Walkin <vlm@lionet.info>. All rights reserved.
3  * Redistribution and modifications are permitted subject to BSD license.
4  */
7 
8 typedef A_SEQUENCE_OF(void) asn_sequence;
9 
10 void
11 asn_sequence_del(void *asn_sequence_of_x, int number, int _do_free) {
12  asn_sequence *as = (asn_sequence *)asn_sequence_of_x;
13 
14  if(as) {
15  void *ptr;
16  int n;
17 
18  if(number < 0 || number >= as->count)
19  return; /* Nothing to delete */
20 
21  if(_do_free && as->free) {
22  ptr = as->array[number];
23  } else {
24  ptr = 0;
25  }
26 
27  /*
28  * Shift all elements to the left to hide the gap.
29  */
30  --as->count;
31  for(n = number; n < as->count; n++)
32  as->array[n] = as->array[n+1];
33 
34  /*
35  * Invoke the third-party function only when the state
36  * of the parent structure is consistent.
37  */
38  if(ptr) as->free(ptr);
39  }
40 }
41 
A_SEQUENCE_OF
typedef A_SEQUENCE_OF(void)
Definition: asn_SEQUENCE_OF.c:8
asn_sequence_del
void asn_sequence_del(void *asn_sequence_of_x, int number, int _do_free)
asn_internal.h
asn_SEQUENCE_OF.h


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