X-Git-Url: https://git.distorted.org.uk/~mdw/runlisp/blobdiff_plain/8996f767e047eefa8af4d01b1434b54f4c169b79..2fb0f2a61ed61747f7b8c206849dadc41079e850:/lib.h diff --git a/lib.h b/lib.h index 97d8a96..9bf07d9 100644 --- a/lib.h +++ b/lib.h @@ -108,6 +108,7 @@ #define CTYPE_HACK(func, ch) (func((unsigned char)(ch))) #define ISSPACE(ch) CTYPE_HACK(isspace, ch) #define ISALNUM(ch) CTYPE_HACK(isalnum, ch) +#define ISXDIGIT(ch) CTYPE_HACK(isxdigit, ch) #define TOLOWER(ch) CTYPE_HACK(tolower, ch) #define TOUPPER(ch) CTYPE_HACK(toupper, ch) @@ -439,7 +440,7 @@ extern void *treap_probe(struct treap */*t*/, * This is similar to `treap_lookup', in that it returns the * requested node if it already exists, or null otherwise, but it * also records in P information to be used by `treap_insert' to - * insert a new node with the given key it's not there already. + * insert a new node with the given key if it's not there already. */ extern void treap_insert(struct treap */*t*/, const struct treap_path */*p*/, @@ -621,23 +622,28 @@ extern struct config_var *config_find_var_n(struct config */*conf*/, * the NAME rather than null-termination. */ -extern void config_set_var(struct config */*conf*/, - struct config_section */*sect*/, unsigned /*f*/, - const char */*name*/, const char */*value*/); +extern struct config_var *config_set_var(struct config */*conf*/, + struct config_section */*sect*/, + unsigned /*f*/, + const char */*name*/, + const char */*value*/); /* Set variable NAME to VALUE in SECT, with associated flags F. * * The names are null-terminated. The flags are variable flags: see - * `struct config_var' for details. + * `struct config_var' for details. Returns the variable. * * If the variable is already set and has the `CF_OVERRIDE' flag, * then this function does nothing unless `CF_OVERRIDE' is /also/ set * in F. */ -extern void config_set_var_n(struct config */*conf*/, - struct config_section */*sect*/, unsigned /*f*/, - const char */*name*/, size_t /*namelen*/, - const char */*value*/, size_t /*valuelen*/); +extern struct config_var *config_set_var_n(struct config */*conf*/, + struct config_section */*sect*/, + unsigned /*f*/, + const char */*name*/, + size_t /*namelen*/, + const char */*value*/, + size_t /*valuelen*/); /* As `config_set_var', except that the variable NAME and VALUE have * explicit lengths (NAMELEN and VALUELEN, respectively) rather than * being null- terminated.