object
optional
Constructors for optional terms. An optional term is either empty or holds a value. Optional terms should be regarded as opaque terms and always used with the optional/1 object by passing the optional term as a parameter.
logtalk_load(optionals(loader))static, context_switching_calls
Type-checking support: This object also defines a type
optionalfor use with thetypelibrary object.
Public predicates
empty/1
Constructs an empty optional term.
staticempty(Optional)empty(--nonvar) - oneof/2
Constructs an optional term holding the given value.
staticof(Value,Optional)of(@term,--nonvar) - onefrom_goal/3
Constructs an optional term holding a value bound by calling the given goal. Returns an empty optional term if the goal fails. Also returns an empty optional term if the goal throws an error, silently discarding the error information. Use from_goal_or_throw/3 if exceptions should be propagated or the expected library from_goal/3 predicate if error information should be preserved.
staticfrom_goal(Goal,Value,Optional)from_goal(0,*,*)from_goal(+callable,--term,--nonvar) - onefrom_goal/2
Constructs an optional term holding a value bound by calling the given closure. Returns an empty optional term if the closure fails. Also returns an empty optional term if the closure throws an error, silently discarding the error information. Use from_goal_or_throw/2 if exceptions should be propagated or the expected library from_goal/2 predicate if error information should be preserved.
staticfrom_goal(Closure,Optional)from_goal(1,*)from_goal(+callable,--nonvar) - onefrom_generator/3
Constructs optional terms with the values generated by calling the given goal. On goal failure, returns an empty optional. On goal error, also returns an empty optional, silently discarding the error information.
staticfrom_generator(Goal,Value,Optional)from_generator(0,*,*)from_generator(+callable,--term,--nonvar) - one_or_morefrom_generator/2
Constructs optional terms with the values generated by calling the given closure. On closure failure, returns an empty optional. On closure error, also returns an empty optional, silently discarding the error information.
staticfrom_generator(Closure,Optional)from_generator(1,*)from_generator(+from_generator,--nonvar) - one_or_morefrom_goal_or_throw/3
Constructs an optional term holding a value bound by calling the given goal. Returns an empty optional term if the goal fails. Propagates any exception thrown by the goal.
staticfrom_goal_or_throw(Goal,Value,Optional)from_goal_or_throw(0,*,*)from_goal_or_throw(+callable,--term,--nonvar) - one_or_errorfrom_goal_or_throw/2
Constructs an optional term holding a value bound by calling the given closure. Returns an empty optional term if the closure fails. Propagates any exception thrown by the closure.
staticfrom_goal_or_throw(Closure,Optional)from_goal_or_throw(1,*)from_goal_or_throw(+callable,--nonvar) - one_or_errorProtected predicates
(no local declarations; see entity ancestors if any)
Private predicates
(no local declarations; see entity ancestors if any)
Operators
(none)
See also