From 260968beacb1a2e1c6bdd652f75fe087f907ce0f Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Wed, 12 Feb 2014 20:25:27 -0800 Subject: * eval.c (eval_init): Register hash_guni and hash_gisec as intrinsics. * hash.c (hash_guni, hash_gisec): New functions. (hash_isec): Bugfix: since gethash was naively used, keys in hash2 associated with the value nil were erroneously omitted from the intersection. * hash.h (hash_guni, hash_gisec): Declared. * txr.1: Documented new functions. --- eval.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'eval.c') diff --git a/eval.c b/eval.c index 5f88d61c..7a6fa19e 100644 --- a/eval.c +++ b/eval.c @@ -2509,8 +2509,10 @@ void eval_init(void) reg_fun(intern(lit("hash-pairs"), user_package), func_n1(hash_pairs)); reg_fun(intern(lit("hash-alist"), user_package), func_n1(hash_alist)); reg_fun(intern(lit("hash-uni"), user_package), func_n2(hash_uni)); + reg_fun(intern(lit("hash-guni"), user_package), func_n2(hash_guni)); reg_fun(intern(lit("hash-diff"), user_package), func_n2(hash_diff)); reg_fun(intern(lit("hash-isec"), user_package), func_n2(hash_isec)); + reg_fun(intern(lit("hash-gisec"), user_package), func_n2(hash_gisec)); reg_fun(intern(lit("group-by"), user_package), func_n2v(group_by)); reg_fun(intern(lit("hash-update"), user_package), func_n2(hash_update)); -- cgit v1.2.3