[ Recorded Database | Reference Manual | Alphabetic Index ]
recordz(+Key, ?Value, -DBRef)
Records the term Value after all other entries for key Key in the record database.
- Key
- An atom, compound term, or handle.
- Value
- An arbitrary term.
- DBRef
- A variable.
Description
Used to record an arbitrary term Value at the end of the record database
entries associated with the key Key. Unlike recordz/2, this predicate
delivers a so-called database reference in DBRef which is a unique handle
for the record database entry that is created. In the case of
compound terms, all keys of the same name and arity are treated as equal.
If backtracking occurs through the call of recordz/3 the associated
Value is not removed from the record database.
Modes and Determinism
Modules
This predicate is sensitive to its module context (tool predicate, see @/2).
Exceptions
- (4) instantiation fault
- Key is not instantiated.
- (5) type error
- Key is neither atom, compound term, nor record handle.
- (5) type error
- DBRef neither a variable nor a database reference.
Examples
Success:
[eclipse]: recordz(whiskey,jameson,Ref1),
recordz(whiskey,bushmills,Ref2).
Ref1 = $&(dbref,"370gn7")
Ref2 = $&(dbref,"370gjb")
yes.
Error:
recordz(Key, anything, Ref). (Error 4)
recordz("key",anything, Ref). (Error 5)
recordz(key,anything, 99). (Error 5)
See Also
recorda / 3, recorded / 3, erase / 1, is_handle / 1, referenced_record / 2