Check point concept requirements. More...
#include <concept_point.hpp>
Public Member Functions | |
void | require_nested_typename_coordinate_type () |
Requirement for associated type "coordinate_type". | |
void | require_numeric_coordinate_type () |
Requirement for coordinate_type to be a numerical type. | |
void | require_set_x (T &p, typename instigate::geometry::concept::point::interface< T >::coordinate_type a) |
Requires interface<T> to provide method set_x. | |
void | require_set_y (T &p, typename instigate::geometry::concept::point::interface< T >::coordinate_type a) |
Requires interface<T> to provide method set_y. | |
instigate::geometry::concept::point::interface < T >::coordinate_type | require_get_x (const T &p) |
Requires interface<T> to provide method get_x. | |
instigate::geometry::concept::point::interface < T >::coordinate_type | require_get_y (const T &p) |
Requires interface<T> to provide method get_y. | |
requirements () | |
Check all requrements of the concept geometry::concept::point. |
Check point concept requirements.
This code will compile if and only if T is a model of instigate::geometry::concept::point
instigate::geometry::concept::point::requirements< T >::requirements | ( | ) | [inline] |
Check all requrements of the concept geometry::concept::point.
This constructor will be invoked by macro CHECK when called as:
CHECK(instigate::geometry::concept::point:: requirements<T>);
It shall check that all the requrements of the concept::point are met.
Reimplemented from instigate::assignable::requirements< T >.
instigate::geometry::concept::point::interface<T>:: coordinate_type instigate::geometry::concept::point::requirements< T >::require_get_x | ( | const T & | p | ) | [inline] |
Requires interface<T>
to provide method get_x.
This will compile if and only if the point::interface<T> provides method get_x to get the x coordinate of a point.
instigate::geometry::concept::point::interface<T>:: coordinate_type instigate::geometry::concept::point::requirements< T >::require_get_y | ( | const T & | p | ) | [inline] |
Requires interface<T>
to provide method get_y.
This will compile if and only if the point::interface<T> provides method get_y to get the y coordinate of a point.
void instigate::geometry::concept::point::requirements< T >::require_nested_typename_coordinate_type | ( | ) | [inline] |
Requirement for associated type "coordinate_type".
This will compile if and only if point::interface<T>
defines the coordinate_type for T
void instigate::geometry::concept::point::requirements< T >::require_numeric_coordinate_type | ( | ) | [inline] |
Requirement for coordinate_type to be a numerical type.
This will compile if and only if point::interface<T>::coordinate_type
is a numerical type, i.e. std::numeric_limits is defined for it
References CHECK.
void instigate::geometry::concept::point::requirements< T >::require_set_x | ( | T & | p, | |
typename instigate::geometry::concept::point::interface< T >::coordinate_type | a | |||
) | [inline] |
Requires interface<T>
to provide method set_x.
This will compile if and only if the point::interface<T> provides proper method set_x to modify the x coordinate of a point.
References instigate::geometry::set_x().
void instigate::geometry::concept::point::requirements< T >::require_set_y | ( | T & | p, | |
typename instigate::geometry::concept::point::interface< T >::coordinate_type | a | |||
) | [inline] |
Requires interface<T>
to provide method set_y.
This will compile if and only if the point::interface<T> provides proper method set_y to modify the y coordinate of a point.
References instigate::geometry::set_y().