carl  24.04
Computer ARithmetic Library
UnderlyingNumberType

The number type that some type is built upon can be defined with UnderlyingNumberType. More...

Collaboration diagram for UnderlyingNumberType:

Data Structures

struct  carl::UnderlyingNumberType< T >
 Gives the underlying number type of a complex object. More...
 
struct  carl::UnderlyingNumberType< MultivariatePolynomial< C, O, P > >
 States that UnderlyingNumberType of MultivariatePolynomial<C,O,P> is UnderlyingNumberType<C>::type. More...
 
struct  carl::UnderlyingNumberType< UnivariatePolynomial< C > >
 States that UnderlyingNumberType of UnivariatePolynomial<T> is UnderlyingNumberType<C>::type. More...
 

Detailed Description

The number type that some type is built upon can be defined with UnderlyingNumberType.

Any function that operates on the (more complex) type and returns a number can use this trait. The function can thereby easily retrieve the exact number type that is used within the complex type.


Data Structure Documentation

◆ carl::UnderlyingNumberType

struct carl::UnderlyingNumberType

template<typename T>
struct carl::UnderlyingNumberType< T >

Gives the underlying number type of a complex object.

Default is the type itself.

Definition at line 336 of file typetraits.h.

Inheritance diagram for carl::UnderlyingNumberType< T >:
Collaboration diagram for carl::UnderlyingNumberType< T >:

Public Types

using type = T
 A type associated with the type. More...
 

Member Typedef Documentation

◆ type

template<typename T >
using carl::has_subtype< T >::type = T
inherited

A type associated with the type.

Definition at line 77 of file typetraits.h.

◆ carl::UnderlyingNumberType< MultivariatePolynomial< C, O, P > >

struct carl::UnderlyingNumberType< MultivariatePolynomial< C, O, P > >

template<typename C, typename O, typename P>
struct carl::UnderlyingNumberType< MultivariatePolynomial< C, O, P > >

States that UnderlyingNumberType of MultivariatePolynomial<C,O,P> is UnderlyingNumberType<C>::type.

Definition at line 650 of file MultivariatePolynomial.h.

Inheritance diagram for carl::UnderlyingNumberType< MultivariatePolynomial< C, O, P > >:
Collaboration diagram for carl::UnderlyingNumberType< MultivariatePolynomial< C, O, P > >:

Public Types

using type = UnderlyingNumberType< C >::type
 A type associated with the type. More...
 

Member Typedef Documentation

◆ type

A type associated with the type.

Definition at line 77 of file typetraits.h.

◆ carl::UnderlyingNumberType< UnivariatePolynomial< C > >

struct carl::UnderlyingNumberType< UnivariatePolynomial< C > >

template<typename C>
struct carl::UnderlyingNumberType< UnivariatePolynomial< C > >

States that UnderlyingNumberType of UnivariatePolynomial<T> is UnderlyingNumberType<C>::type.

Definition at line 839 of file UnivariatePolynomial.h.

Inheritance diagram for carl::UnderlyingNumberType< UnivariatePolynomial< C > >:
Collaboration diagram for carl::UnderlyingNumberType< UnivariatePolynomial< C > >:

Public Types

using type = UnderlyingNumberType< C >::type
 A type associated with the type. More...
 

Member Typedef Documentation

◆ type

A type associated with the type.

Definition at line 77 of file typetraits.h.