diff options
Diffstat (limited to 'src/array_base.c')
-rw-r--r-- | src/array_base.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/array_base.c b/src/array_base.c index a70bd86..f340d6c 100644 --- a/src/array_base.c +++ b/src/array_base.c @@ -247,3 +247,19 @@ int ARRAY_FUNC(print) (ARRAY_TYPENAME array){ return(0); } #endif + +// allocate memory for values until there are at least 'n' alloacted values +#ifdef ARRAY_VAL_INIT +int ARRAY_FUNC(alloc_tmps) (unsigned int n, ARRAY_TYPENAME* array){ + unsigned int i; + // resize if needed + if(array->memory<n){ + ARRAY_FUNC(resize)(array, n); + } + for (i=array->length; i<n; i++){ + ARRAY_VAL_INIT(array->values+i, 2); + (array->length)++; + } + return(0); +} +#endif |