Type Specifier satisfies

Compound Type Specifier Kind:

Predicating.

Compound Type Specifier Syntax:

satisfies predicate-name

Compound Type Specifier Arguments:

predicate-name—a symbol.

Compound Type Specifier Description:

4.3.0 1 \itemitem

This denotes the set of all objects that satisfy the predicate predicate-name, which must be a symbol whose global function definition is a one-argument predicate. A name is required for predicate-name; lambda expressions are not allowed. For example, the type specifier (and integer (satisfies evenp)) denotes the set of all even integers. The form (typep x '(satisfies p)) is equivalent to (if (p x) t nil). The call {\tt (typep x '(satisfies p))} results in applying \f{p} to \f{x} and returning \f{t} if the result is \term{true} and \nil\ if the result is \term{false}. 4.3.0 2 I don't like the following example because it presupposes that standard-char-p is not defined in terms of typep. -kmp 24-Oct-90 For example, \thetype{standard-char} could be defined as follows: \code (deftype standard-char () '(and character (satisfies standard-char-p))) \endcode

The argument is required. The symbol * can be the argument, but it denotes itself (the symbol *), and does not represent an unspecified value.

The symbol satisfies is not valid as a type specifier.