aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShawn O. Pearce <sop@google.com>2011-06-06 10:42:50 -0700
committerShawn O. Pearce <sop@google.com>2011-06-06 10:45:15 -0700
commit339cb6cae1053c0cec8c34bd3ee1a66ff6ee7b42 (patch)
treebe6b7ffaa0c24cb2161dfec409cdc3477a5e7081
parentcb88682c9b8307063487d4b5225623e6b8002211 (diff)
downloadprolog-cafe-339cb6cae1053c0cec8c34bd3ee1a66ff6ee7b42.tar.gz
Define hash_exists/2
Simple utilty function to determine if an alias has already been assigned in the internal hash manager.
-rw-r--r--src/builtin/builtins.pl16
1 files changed, 6 insertions, 10 deletions
diff --git a/src/builtin/builtins.pl b/src/builtin/builtins.pl
index db3f695..b2e1eaf 100644
--- a/src/builtin/builtins.pl
+++ b/src/builtin/builtins.pl
@@ -1849,17 +1849,8 @@ expand_term(Dcg, Dcg).
% Hash creation and control
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
:- public new_hash/1.
-%:- public new_hash/2. written in Java
-%:- public hash_clear/1. written in Java
-%:- public hash_contains_key/2. written in Java
-%:- public hash_get/3. written in Java
-%:- public hash_is_empty/1. written in Java
-%:- public hash_keys/2. written in Java
:- public hash_map/2.
-%:- public hash_put/3. written in Java
-%:- public hash_remove/2. written in Java
-%:- public hash_size/2. written in Java
-%:- public '$get_hash_manager'/1. written in Java
+:- public hash_exists/1.
new_hash(Hash) :- new_hash(Hash, []).
@@ -1873,6 +1864,11 @@ hash_map([K|Ks], [(K,V)|Ls], H_or_a) :-
hash_get(H_or_a, K, V),
hash_map(Ks, Ls, H_or_a).
+hash_exists(Alias) :-
+ atom(Alias),
+ '$get_hash_manager'(HM),
+ hash_contains_key(HM, Alias).
+
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Java interoperation
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%