CGAL 6.0 - Algebraic Foundations
Loading...
Searching...
No Matches
CGAL::Coercion_traits< A, B > Struct Template Reference

#include <CGAL/Coercion_traits.h>

Definition

template<typename A, typename B>
struct CGAL::Coercion_traits< A, B >

An instance of Coercion_traits reflects the type coercion of the types A and B, it is symmetric in the two template arguments.

See also
ExplicitInteroperable
ImplicitInteroperable
Examples
Algebraic_foundations/implicit_interoperable_dispatch.cpp, and Algebraic_foundations/interoperable.cpp.

Types

typedef unspecified_type Are_explicit_interoperable
 Tag indicating whether the two types A and B are a model of ExplicitInteroperable
 
typedef unspecified_type Are_implicit_interoperable
 Tag indicating whether the two types A and B are a model of ImplicitInteroperable
 
typedef unspecified_type Type
 The coercion type of A and B.
 
typedef unspecified_type Cast
 A model of the AdaptableFunctor concept, providing the conversion of A or B to Type.
 

Member Typedef Documentation

◆ Are_explicit_interoperable

template<typename A , typename B >
typedef unspecified_type CGAL::Coercion_traits< A, B >::Are_explicit_interoperable

Tag indicating whether the two types A and B are a model of ExplicitInteroperable

This is either CGAL::Tag_true or CGAL::Tag_false.

◆ Are_implicit_interoperable

template<typename A , typename B >
typedef unspecified_type CGAL::Coercion_traits< A, B >::Are_implicit_interoperable

Tag indicating whether the two types A and B are a model of ImplicitInteroperable

This is either CGAL::Tag_true or CGAL::Tag_false.

◆ Cast

template<typename A , typename B >
typedef unspecified_type CGAL::Coercion_traits< A, B >::Cast

A model of the AdaptableFunctor concept, providing the conversion of A or B to Type.

In case A and B are not ExplicitInteroperable this is undefined.

◆ Type

template<typename A , typename B >
typedef unspecified_type CGAL::Coercion_traits< A, B >::Type

The coercion type of A and B.

In case A and B are not ExplicitInteroperable this is undefined.