src/cx/collection.h

changeset 856
6bbbf219251d
parent 855
35bcb3216c0d
child 857
4d12e34bb130
     1.1 --- a/src/cx/collection.h	Thu May 23 20:31:37 2024 +0200
     1.2 +++ b/src/cx/collection.h	Thu May 23 20:43:04 2024 +0200
     1.3 @@ -97,7 +97,7 @@
     1.4  /**
     1.5   * Use this macro to declare common members for a collection structure.
     1.6   */
     1.7 -#define CX_COLLECTION_BASE struct cx_collection_s base
     1.8 +#define CX_COLLECTION_BASE struct cx_collection_s collection
     1.9  
    1.10  /**
    1.11   * Invokes the simple destructor function for a specific element.
    1.12 @@ -109,7 +109,7 @@
    1.13   * @param e the element
    1.14   */
    1.15  #define cx_invoke_simple_destructor(c, e) \
    1.16 -    (c)->base.simple_destructor((c)->base.store_pointer ? (*((void **) (e))) : (e))
    1.17 +    (c)->collection.simple_destructor((c)->collection.store_pointer ? (*((void **) (e))) : (e))
    1.18  
    1.19  /**
    1.20   * Invokes the advanced destructor function for a specific element.
    1.21 @@ -121,8 +121,8 @@
    1.22   * @param e the element
    1.23   */
    1.24  #define cx_invoke_advanced_destructor(c, e) \
    1.25 -    (c)->base.advanced_destructor((c)->base.destructor_data, \
    1.26 -    (c)->base.store_pointer ? (*((void **) (e))) : (e))
    1.27 +    (c)->collection.advanced_destructor((c)->collection.destructor_data, \
    1.28 +    (c)->collection.store_pointer ? (*((void **) (e))) : (e))
    1.29  
    1.30  
    1.31  /**
    1.32 @@ -135,8 +135,8 @@
    1.33   * @param e the element
    1.34   */
    1.35  #define cx_invoke_destructor(c, e) \
    1.36 -    if ((c)->base.simple_destructor) cx_invoke_simple_destructor(c,e); \
    1.37 -    if ((c)->base.advanced_destructor) cx_invoke_advanced_destructor(c,e)
    1.38 +    if ((c)->collection.simple_destructor) cx_invoke_simple_destructor(c,e); \
    1.39 +    if ((c)->collection.advanced_destructor) cx_invoke_advanced_destructor(c,e)
    1.40  
    1.41  #ifdef __cplusplus
    1.42  } // extern "C"

mercurial