Lines Matching refs:array

27 static struct array	*array_new(void);
28 static __inline void array_free(struct array *);
29 static struct array * array_dup(const struct array *);
30 static __inline void array_grow(struct array *, size_t);
31 static __inline void array_assign(struct array *, size_t, const struct value *);
32 static __inline struct value *array_retrieve(const struct array *, size_t);
65 array_free(v->array); in stack_free_value()
66 v->array = NULL; in stack_free_value()
86 copy->array = a->array == NULL ? NULL : array_dup(a->array); in stack_dup_value()
144 stack->stack[stack->sp].array = NULL; in stack_pushnumber()
153 stack->stack[stack->sp].array = NULL; in stack_pushstring()
171 stack->stack[stack->sp].array = v->array == NULL ? in stack_push()
172 NULL : array_dup(v->array); in stack_push()
191 stack->stack[stack->sp].array = v->array == NULL ? in stack_set_tos()
192 NULL : array_dup(v->array); in stack_set_tos()
209 array_free(stack->stack[stack->sp].array); in stack_popnumber()
210 stack->stack[stack->sp].array = NULL; in stack_popnumber()
223 array_free(stack->stack[stack->sp].array); in stack_popstring()
224 stack->stack[stack->sp].array = NULL; in stack_popstring()
253 static struct array *
256 struct array *a; in array_new()
265 array_free(struct array *a) in array_free()
277 static struct array *
278 array_dup(const struct array *a) in array_dup()
280 struct array *n; in array_dup()
293 array_grow(struct array *array, size_t newsize) in array_grow() argument
297 array->data = breallocarray(array->data, newsize, sizeof(*array->data)); in array_grow()
298 for (i = array->size; i < newsize; i++) { in array_grow()
299 array->data[i].type = BCODE_NONE; in array_grow()
300 array->data[i].array = NULL; in array_grow()
302 array->size = newsize; in array_grow()
306 array_assign(struct array *array, size_t index, const struct value *v) in array_assign() argument
308 if (index >= array->size) in array_assign()
309 array_grow(array, index+1); in array_assign()
310 stack_free_value(&array->data[index]); in array_assign()
311 array->data[index] = *v; in array_assign()
315 array_retrieve(const struct array *array, size_t index) in array_retrieve() argument
317 if (index >= array->size) in array_retrieve()
319 return &array->data[index]; in array_retrieve()
325 struct array *a; in frame_assign()
330 n.array = NULL; in frame_assign()
334 a = stack->stack[stack->sp].array; in frame_assign()
336 a = stack->stack[stack->sp].array = array_new(); in frame_assign()
343 struct array *a; in frame_retrieve()
347 a = stack->stack[stack->sp].array; in frame_retrieve()
349 a = stack->stack[stack->sp].array = array_new(); in frame_retrieve()