mirror of
https://https.git.savannah.gnu.org/git/bash.git
synced 2026-06-29 00:19:51 +02:00
bash-5.0 distribution sources and documentation
This commit is contained in:
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user