context(Context)
Returns the execution context for a predicate clause using the term logtalk(Head,ExecutionContext)
where Head
is the head of the clause containing the call. This private predicate is mainly used for providing a default error context when type-checking predicate arguments. The ExecutionContext
term should be regarded as an opaque term, which can be decoded using the logtalk::execution_context/7
predicate. Calls to this predicate are inlined at compilation time.
context(--callable)
type_error(var, Context)
foo(A, N) :- % type-check arguments context(Context), type::check(atom, A, Context), type::check(integer, N, Context), % arguments are fine; go ahead ... .