[ Obsolete | Reference Manual | Alphabetic Index ]
is_built_in(++PredSpec)
Succeeds if PredSpec is a system built-in predicate.
- PredSpec
- Term of the form Atom/Integer.
This built-in predicate is obsolete!
Description
Used to test whether PredSpec is a ECLiPSe built-in predicate.
This predicate only succeeds for a PredSpec which is known to be a
built-in. Undefined Predspec's raise an exception.
Modes and Determinism
- is_built_in(++) is semidet
Modules
This predicate is sensitive to its module context (tool predicate, see @/2).
Fail Conditions
Fails if PredSpec is not a built-in predicate
Exceptions
- (4) instantiation fault
- PredSpec is not fully instantiated.
- (5) type error
- PredSpec is not in the format Atom/Integer.
- (60) referring to an undefined procedure
- PredSpec is not a defined procedure.
Examples
Success:
is_built_in(nl/0).
is_built_in(write/1).
Fail:
is_built_in(append/3). % append/3 is a library
% predicate, not a built-in.
Error:
is_built_in(X). (Error 4).
is_built_in(a/X). (Error 4).
is_built_in(a). (Error 5).
is_built_in(1). (Error 5).
is_built_in(undefined/0). (Error 60).
See Also
current_built_in / 1, is_predicate / 1, get_flag / 3