lines 8-58 of file: include/cppad/utility/check_numeric_type.hpp

{xrst_begin CheckNumericType}
{xrst_spell
   preforms
}

Check NumericType Class Concept
###############################

Syntax
******

   # ``include <cppad/utility/check_numeric_type.hpp>``

``CheckNumericType`` < *NumericType* >()

Purpose
*******
The syntax

   ``CheckNumericType`` < *NumericType* >()

preforms compile and run time checks that the type specified
by *NumericType* satisfies all the requirements for
a :ref:`NumericType-name` class.
If a requirement is not satisfied,
a an error message makes it clear what condition is not satisfied.

Include
*******
The file ``cppad/utility/check_numeric_type.hpp``
is included by ``cppad/cppad.hpp``
but it can also be included separately with out the rest
if the CppAD include files.

Parallel Mode
*************
The routine :ref:`thread_alloc::parallel_setup<ta_parallel_setup-name>`
must be called before it
can be used in :ref:`parallel<ta_in_parallel-name>` mode.

Example
*******
{xrst_toc_hidden
   example/utility/check_numeric_type.cpp
}
The file :ref:`check_numeric_type.cpp-name`
contains an example and test of this function.
The comments in this example suggest a way to change the example
so an error message occurs.

{xrst_end CheckNumericType}
