Availability:built-in
var_property(+Var,
?Property)True when Property is a property of Var. These
properties are available during goal- and term-expansion. Defined
properties are below. Future versions are likely to provide more
properties, such as whether the variable is referenced in the remainder
of the term. See also goal_expansion/2.
- fresh(Bool)
- Bool has the value
true
if the variable is
guaranteed to be unbound at entry of the goal, otherwise its value is false.
This implies that the variable first appears in this goal or a previous
appearance was in a negation (\+/1)
or a different branch of a disjunction.
- singleton(Bool)
- Bool has the value
true
if the variable is a
syntactic singleton in the term it appears in. Note that this
tests that the variable appears exactly once in the term being expanded
without making any claim on the syntax of the variable. Variables that
appear only once in multiple branches are not singletons
according to this property. Future implementations may improve on that.
- name(Name)
- True when variable appears with the given name in the source.