elisp: Predicates on Numbers
3.3 Type Predicates for Numbers
===============================
The functions in this section test for numbers, or for a specific type
of number. The functions ‘integerp’ and ‘floatp’ can take any type of
Lisp object as argument (they would not be of much use otherwise), but
the ‘zerop’ predicate requires a number as its argument. See also
‘integer-or-marker-p’ and ‘number-or-marker-p’, in Predicates on
Markers.
-- Function: floatp object
This predicate tests whether its argument is floating point and
returns ‘t’ if so, ‘nil’ otherwise.
-- Function: integerp object
This predicate tests whether its argument is an integer, and
returns ‘t’ if so, ‘nil’ otherwise.
-- Function: numberp object
This predicate tests whether its argument is a number (either
integer or floating point), and returns ‘t’ if so, ‘nil’ otherwise.
-- Function: natnump object
This predicate (whose name comes from the phrase “natural number”)
tests to see whether its argument is a nonnegative integer, and
returns ‘t’ if so, ‘nil’ otherwise. 0 is considered non-negative.
‘wholenump’ is a synonym for ‘natnump’.
-- Function: zerop number
This predicate tests whether its argument is zero, and returns ‘t’
if so, ‘nil’ otherwise. The argument must be a number.
‘(zerop x)’ is equivalent to ‘(= x 0)’.