Diff for /libelwix/inc/elwix/aarray.h between versions 1.11 and 1.12

version 1.11, 2019/09/24 15:49:52 version 1.12, 2024/10/29 01:16:12
Line 12  terms: Line 12  terms:
 All of the documentation and software included in the ELWIX and AITNET  All of the documentation and software included in the ELWIX and AITNET
 Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org>  Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org>
   
Copyright 2004 - 2019Copyright 2004 - 2024
         by Michael Pounov <misho@elwix.org>.  All rights reserved.          by Michael Pounov <misho@elwix.org>.  All rights reserved.
   
 Redistribution and use in source and binary forms, with or without  Redistribution and use in source and binary forms, with or without
Line 53  typedef struct _tagArray { Line 53  typedef struct _tagArray {
         void    **arr_data;          void    **arr_data;
 } array_t;  } array_t;
   
   #define array_Data(_arr)                ((_arr) ? (_arr)->arr_data : NULL)
 #define array_Size(_arr)                ((_arr) ? (_arr)->arr_num : 0)  #define array_Size(_arr)                ((_arr) ? (_arr)->arr_num : 0)
 #define array_Last(_arr)                (array_Size((_arr)) ? (_arr)->arr_last : -1)  #define array_Last(_arr)                (array_Size((_arr)) ? (_arr)->arr_last : -1)
 #define array_Zero(_arr)                (assert((_arr)), (_arr)->arr_last = -1, \  #define array_Zero(_arr)                (assert((_arr)), (_arr)->arr_last = -1, \
                                                 memset((_arr)->arr_data, 0, array_Size((_arr)) * sizeof(intptr_t)))                                                  memset((_arr)->arr_data, 0, array_Size((_arr)) * sizeof(intptr_t)))
   
#define array_Ptr(_arr, _d)             ((_arr) ? (_arr)->arr_data[_d] : NULL)#define array_Ptr(_arr, _d)             ((_arr && (_arr)->arr_data) ? (_arr)->arr_data[_d] : NULL)
 #define array_Get2(_arr, _d)            (assert((_arr) && (_arr)->arr_num > _d), ((_arr)->arr_data + _d))  #define array_Get2(_arr, _d)            (assert((_arr) && (_arr)->arr_num > _d), ((_arr)->arr_data + _d))
#define array_Get(_arr, _d)             (assert((_arr)), (_arr)->arr_data[_d])#define array_Get(_arr, _d)             (assert((_arr) && (_arr)->arr_data), (_arr)->arr_data[_d])
#define array(_arr, _d, _type)          (assert((_arr)), ((_type) (_arr)->arr_data[_d]))#define array(_arr, _d, _type)          (assert((_arr) && (_arr)->arr_data), ((_type) (_arr)->arr_data[_d]))
 #define array_Set(_arr, _d, _ptr)       do { int __d = _d; assert((_arr) && (_arr)->arr_num > __d); \  #define array_Set(_arr, _d, _ptr)       do { int __d = _d; assert((_arr) && (_arr)->arr_num > __d); \
                                                 if ((_arr)->arr_last < __d) \                                                  if ((_arr)->arr_last < __d) \
                                                         (_arr)->arr_last = __d; \                                                          (_arr)->arr_last = __d; \

Removed from v.1.11  
changed lines
  Added in v.1.12


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>