diff options
Diffstat (limited to 'Src/params.c')
-rw-r--r-- | Src/params.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/Src/params.c b/Src/params.c index 8c39ec2ac..aa20e79f4 100644 --- a/Src/params.c +++ b/Src/params.c @@ -1741,6 +1741,21 @@ gethparam(char *s) return NULL; } +/* Retrieve the keys of an assoc array parameter as an array */ + +/**/ +mod_export char ** +gethkparam(char *s) +{ + struct value vbuf; + Value v; + + if (!idigit(*s) && (v = getvalue(&vbuf, &s, 0)) && + PM_TYPE(v->pm->flags) == PM_HASHED) + return paramvalarr(v->pm->gets.hfn(v->pm), SCANPM_WANTKEYS); + return NULL; +} + /**/ mod_export Param setsparam(char *s, char *val) |