[ Recorded Database | Reference Manual | Alphabetic Index ]

# current_record(?Key)

Succeeds if Key is the key of a recorded item.

Key
  Variable, atom, compound term, or handle.

## Description

Used to backtrack over the named record keys that currently have recorded terms. Key must be either a variable, an atom or a compound term. In the case of compound terms, all keys of the same name and arity are treated as equal.

### Modes and Determinism

- current_record(+) is semidet
- current_record(-) is nondet

### Modules

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

### Fail Conditions

Fails if Key is not a current key

### Exceptions

(5) type error
  Key is neither a variable, atom, compound term, or record handle.

## Examples

       Success:
       [eclipse]: record(whiskey,jameson),
       >        record(whiskey,bushmills),
       >        record(beer,lowenbrau),
       >        record(car(bmw), 735).
       yes.
       [eclipse]: current_record(Key).
       Key = beer     More? (;)
       Key = whiskey     More? (;)
       Key = car(_g62)     More? (;)
       no (more) solution.
       Fail:
       record(whiskey,bushmills),current_record(bushmills).
       Error:
       current_record(1).                     (Error 5)
       current_record("whiskey").             (Error 5)

## See Also

is_record / 1