diff options
Diffstat (limited to 'array.h')
| -rw-r--r-- | array.h | 4 |
1 files changed, 4 insertions, 0 deletions
@@ -33,6 +33,7 @@ typedef struct array { enum atype type; arrayind_t max_index; int num_elements; + struct array_element *lastref; struct array_element *head; } ARRAY; @@ -94,6 +95,7 @@ extern ARRAY *array_from_string __P((char *, char *)); #define array_num_elements(a) ((a)->num_elements) #define array_max_index(a) ((a)->max_index) +#define array_first_index(a) ((a)->head->next->ind) #define array_head(a) ((a)->head) #define array_empty(a) ((a)->num_elements == 0) @@ -102,6 +104,8 @@ extern ARRAY *array_from_string __P((char *, char *)); #define element_forw(ae) ((ae)->next) #define element_back(ae) ((ae)->prev) +#define set_element_value(ae, val) ((ae)->value = (val)) + /* Convenience */ #define array_push(a,v) \ do { array_rshift ((a), 1, (v)); } while (0) |
