diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2011-12-07 09:01:26 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2011-12-07 09:01:26 -0800 |
commit | b3540d10efec1c3d27d0206d67635eaeb39141ec (patch) | |
tree | 19d302ab079edb0f744b5ca9feb11239038722c3 /eval.c | |
parent | b4d0fe33246175c0ac8e094ca46036444136a3be (diff) | |
download | txr-b3540d10efec1c3d27d0206d67635eaeb39141ec.tar.gz txr-b3540d10efec1c3d27d0206d67635eaeb39141ec.tar.bz2 txr-b3540d10efec1c3d27d0206d67635eaeb39141ec.zip |
* eval.c (eval_init): New character functions registered.
* lib.c (c_num): Generalized to convert characters to numbers also.
This allows functions like gt and lt to work with characters.
(chr_isalnum, chr_isalpha, chr_isascii, chr_iscntrl, chr_isdigit,
chr_isgraph, chr_islower, chr_isprint, chr_ispunct, chr_isspace,
chr_isupper, chr_isxdigit): New functions added.
* lib.h: (chr_isalnum, chr_isalpha, chr_isascii, chr_iscntrl,
* chr_isdigit, chr_isgraph, chr_islower, chr_isprint, chr_ispunct,
* chr_isspace, chr_isupper, chr_isxdigit): New functions declared.
(c_true): New macro.
Diffstat (limited to 'eval.c')
-rw-r--r-- | eval.c | 12 |
1 files changed, 12 insertions, 0 deletions
@@ -1187,6 +1187,18 @@ void eval_init(void) reg_fun(intern(lit("string-lt"), user_package), func_n2(string_lt)); reg_fun(intern(lit("int-str"), user_package), func_n2(int_str)); reg_fun(intern(lit("chrp"), user_package), func_n1(chrp)); + reg_fun(intern(lit("chr-isalnum"), user_package), func_n1(chr_isalnum)); + reg_fun(intern(lit("chr-isalpha"), user_package), func_n1(chr_isalpha)); + reg_fun(intern(lit("chr-isascii"), user_package), func_n1(chr_isascii)); + reg_fun(intern(lit("chr-iscntrl"), user_package), func_n1(chr_iscntrl)); + reg_fun(intern(lit("chr-isdigit"), user_package), func_n1(chr_isdigit)); + reg_fun(intern(lit("chr-isgraph"), user_package), func_n1(chr_isgraph)); + reg_fun(intern(lit("chr-islower"), user_package), func_n1(chr_islower)); + reg_fun(intern(lit("chr-isprint"), user_package), func_n1(chr_isprint)); + reg_fun(intern(lit("chr-ispunct"), user_package), func_n1(chr_ispunct)); + reg_fun(intern(lit("chr-isspace"), user_package), func_n1(chr_isspace)); + reg_fun(intern(lit("chr-isupper"), user_package), func_n1(chr_isupper)); + reg_fun(intern(lit("chr-isxdigit"), user_package), func_n1(chr_isxdigit)); reg_fun(intern(lit("chr-str"), user_package), func_n2(chr_str)); reg_fun(intern(lit("chr-str-set"), user_package), func_n3(chr_str_set)); reg_fun(intern(lit("span-str"), user_package), func_n2(span_str)); |