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 SeePredicates 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)’.