CGAL 5.1 - Number Types
|
#include <CGAL/Number_type_checker.h>
Number_type_checker
is a number type whose instances store two numbers of types NT1
and NT2
. It forwards all arithmetic operations to them, and calls the binary predicate Comparator
to check the equality of the instances after each modification, as well as for each comparison.
This is a debugging tool which is useful when dealing with number types.
NT1,NT2 | must be a model of the same algebraic structure concept and they must be FromDoubleConstructible . |
Comparator | must be a model of a binary predicate taking NT1 as first argument, and NT2 as second. The Comparator parameter has a default value which is a functor calling operator== between the two arguments. |
IntegralDomainWithoutDivision
(same as NT1
)
Operations
Some operations have a particular behavior documented here.
Related Functions | |
(Note that these are not member functions.) | |
std::ostream & | operator<< (std::ostream &out, const Number_type_checker &c) |
writes c.n1() to the ostream out . More... | |
std::istream & | operator>> (std::istream &in, Number_type_checker &c) |
reads an NT1 from in , then converts it to an NT2 , so a conversion from NT1 to NT2 is required here. More... | |
Creation | |
Number_type_checker () | |
introduces an uninitialized variable c . More... | |
Number_type_checker (int i) | |
introduces the integral value i. More... | |
Number_type_checker (double d) | |
introduces the floating point value d. More... | |
Number_type_checker (const NT1 &n1, const NT2 &n2) | |
introduces a variable storing the pair n1, n2 . More... | |
Operations | |
const NT1 & | n1 () const |
returns a const reference to the object of type NT1 . More... | |
const NT2 & | n2 () const |
returns a const reference to the object of type NT2 . More... | |
NT1 & | n1 () |
returns a reference to the object of type NT1 . More... | |
NT2 & | n2 () |
returns a reference to the object of type NT2 . More... | |
bool | is_valid () const |
calls the Comparator binary predicate on the two stored objects and returns its result. More... | |
CGAL::Number_type_checker< NT1, NT2, Comparator >::Number_type_checker | ( | ) |
introduces an uninitialized variable c
.
CGAL::Number_type_checker< NT1, NT2, Comparator >::Number_type_checker | ( | int | i | ) |
introduces the integral value i.
CGAL::Number_type_checker< NT1, NT2, Comparator >::Number_type_checker | ( | double | d | ) |
introduces the floating point value d.
CGAL::Number_type_checker< NT1, NT2, Comparator >::Number_type_checker | ( | const NT1 & | n1, |
const NT2 & | n2 | ||
) |
introduces a variable storing the pair n1, n2
.
bool CGAL::Number_type_checker< NT1, NT2, Comparator >::is_valid | ( | ) | const |
calls the Comparator
binary predicate on the two stored objects and returns its result.
NT1& CGAL::Number_type_checker< NT1, NT2, Comparator >::n1 | ( | ) |
returns a reference to the object of type NT1
.
const NT1& CGAL::Number_type_checker< NT1, NT2, Comparator >::n1 | ( | ) | const |
returns a const reference to the object of type NT1
.
NT2& CGAL::Number_type_checker< NT1, NT2, Comparator >::n2 | ( | ) |
returns a reference to the object of type NT2
.
const NT2& CGAL::Number_type_checker< NT1, NT2, Comparator >::n2 | ( | ) | const |
returns a const reference to the object of type NT2
.
|
related |
writes c.n1()
to the ostream out
.
|
related |
reads an NT1
from in
, then converts it to an NT2
, so a conversion from NT1
to NT2
is required here.