3 copyright 1991-96, Michael D. Brennan
5 This is a source file for mawk, an implementation of
6 the AWK programming language.
8 Mawk is distributed without warranty under the terms of
9 the GNU General Public License, version 2, 1991.
13 This file was generated with the command
15 notangle -R'"array.h"' array.w > array.h
17 Notangle is part of Norman Ramsey's noweb literate programming package
18 available from CTAN(ftp.shsu.edu).
20 It's easiest to read or modify this file by working with array.w.
25 typedef struct array {
26 PTR ptr ; /* What this points to depends on the type */
27 unsigned size ; /* number of elts in the table */
28 unsigned limit ; /* Meaning depends on type */
29 unsigned hmask ; /* bitwise and with hash value to get table index */
30 short type ; /* values in AY_NULL .. AY_SPLIT */
41 #define new_ARRAY() ((ARRAY)memset(ZMALLOC(struct array),0,sizeof(struct array)))
43 CELL* PROTO(array_find, (ARRAY,CELL*,int)) ;
44 void PROTO(array_delete, (ARRAY,CELL*)) ;
45 void PROTO(array_load, (ARRAY,int)) ;
46 void PROTO(array_clear, (ARRAY)) ;
47 STRING** PROTO(array_loop_vector, (ARRAY,unsigned*)) ;
48 CELL* PROTO(array_cat, (CELL*,int)) ;