
store_contains(+StoreHandle, ++Key)

   Check for an entry in a store object

Arguments
   StoreHandle         A store handle or store name
   Key                 A ground term

Type
   Non-logical Variables, Arrays, Bags, Shelves and Stores

Description
	This checks whether a given store object contains an entry for a
	given key.  If so, the predicate succeeds, otherwise it fails.

	The key can be arbitrarily complex, but must be a ground term.

	The complexity of this  operation is linear in the size
	of the key, since the key needs to be compared. For indexing purposes,
	a hash value is computed from the key, and the full depth of the key
	is taken into account.

	Note: If StoreHandle is not a handle, then it must be an atom or a
	compound term, and the store is identified by this term's toplevel
	functor together with the context module.

    

Modes and Determinism
   store_contains(+, ++) is semidet

Modules
   This predicate is sensitive to its module context (tool predicate, see @/2).

Fail Conditions
   The store does not contain an entry for Key

Exceptions
     4 --- StoreHandle is uninstantiated
     4 --- Key is not ground
     5 --- StoreHandle is neither atom nor compound term nor store handle
    45 --- StoreHandle is not the name of a store

Examples
   

    ?- store_create(Handle),
       store_set(Handle, tom, 12345),
       store_contains(Handle, tom).

    Yes (0.00s cpu)


    ?- store_create(Handle),
       store_set(Handle, tom, 12345),
       store_contains(Handle, harry).

    No (0.00s cpu)
    

See Also
   store / 1, store_create / 1, store_count / 2, store_get / 3, store_inc / 2, store_insert / 3, store_remove / 3, store_test_and_set / 4, store_update / 4
