atom
, atomic
, between
, boolean
, callable
,
chars
, codes
, text
, compound
, constant
, float
,
integer
, nonneg
, positive_integer
, negative_integer
,
nonvar
, number
, oneof
, list
, list_or_partial_list
,
symbol
, var
, rational
, encoding
, dict
and string
.
Most of these types are defined by an arity-1 built-in predicate of the same name. Below is a brief definition of the other types.
boolean one of true
orfalse
char Atom of length 1 code Representation Unicode code point chars Proper list of 1-character atoms codes Proper list of Unicode character codes text One of atom
,string
,chars
orcodes
between(IntL,IntU)
Integer [IntL..IntU] between(FloatL,FloatU)
Number [FloatL..FloatU] nonneg Integer >=
0positive_integer Integer > 0 negative_integer Integer < 0 oneof(L)
Ground term that is member of L encoding Valid name for a character encoding cyclic Cyclic term (rational tree) acyclic Acyclic term (tree) list(Type)
Proper list with elements of Type list_or_partial_list A list or an open list (ending in a variable
Note: The Windows version can only represent Unicode code points up
to 2^
16-1. Higher values cause a representation error on
most text handling predicates.
- throws
- instantiation_error if Term is insufficiently instantiated
and
type_error(Type, Term)
if Term is not of Type.