summaryrefslogtreecommitdiff
path: root/cint_array.c
diff options
context:
space:
mode:
authorAndrew J. Schorr <aschorr@telemetry-investments.com>2019-01-07 09:37:25 -0500
committerAndrew J. Schorr <aschorr@telemetry-investments.com>2019-01-07 09:37:25 -0500
commit683e1c07a179096aa4bd69000c817ca707019456 (patch)
tree6c7a0e2b99da17be63767595c45bf1f29f67b3c0 /cint_array.c
parentf2fc8da25ca6fe6c089e89d2a612ec3271cf1ed1 (diff)
downloadgawk-683e1c07a179096aa4bd69000c817ca707019456.tar.gz
Use a struct instead of an array to contain the array methods.
Diffstat (limited to 'cint_array.c')
-rw-r--r--cint_array.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/cint_array.c b/cint_array.c
index 7db45fd2..497bd792 100644
--- a/cint_array.c
+++ b/cint_array.c
@@ -59,7 +59,8 @@ static NODE **cint_dump(NODE *symbol, NODE *ndump);
static void cint_print(NODE *symbol);
#endif
-afunc_t cint_array_func[] = {
+const array_funcs_t cint_array_func = {
+ "cint",
cint_array_init,
is_uinteger,
cint_lookup,
@@ -255,9 +256,9 @@ xinstall:
*/
if (is_integer(xn, subs))
- xn->array_funcs = int_array_func;
+ xn->array_funcs = & int_array_func;
else
- xn->array_funcs = str_array_func;
+ xn->array_funcs = & str_array_func;
xn->flags |= XARRAY;
}
return xn->alookup(xn, subs);
@@ -525,7 +526,7 @@ cint_dump(NODE *symbol, NODE *ndump)
kb += (INT32_BIT * sizeof(NODE *)) / 1024.0; /* symbol->nodes */
kb += (symbol->array_capacity * sizeof(NODE *)) / 1024.0; /* value nodes in Node_array_leaf(s) */
if (xn != NULL) {
- if (xn->array_funcs == int_array_func)
+ if (xn->array_funcs == & int_array_func)
kb += int_kilobytes(xn);
else
kb += str_kilobytes(xn);