My Project
Loading...
Searching...
No Matches
Functions
ftmpl_functions.h File Reference

some useful template functions. More...

Go to the source code of this file.

Functions

template<class T >
T tmax (const T &a, const T &b)
 template <class T> inline T tmax ( const T & a, const T & b ) More...
 
template<class T >
T tmin (const T &a, const T &b)
 template <class T> inline T tmin ( const T & a, const T & b ) More...
 
template<class T >
T tabs (const T &a)
 template <class T> inline T tabs ( const T & a ) More...
 

Detailed Description

some useful template functions.

Header file corresponds to: nothing

Hierarchy: bottom, templates

Developer note:

Sooner or later you need them: functions to calculate the minimum or maximum of two values or the absolute value. Here they are. All of them are inlined, hence there is no source file corresponding to ‘ftmpl_functions.h’.

The functions are for internal use only (i.e., to build the library), hence they should not be included from ‘factory.h’. However, we have to install ‘ftmpl_functions.h’ with the other templates since the functions have to be instantiated.

Definition in file ftmpl_functions.h.

Function Documentation

◆ tabs()

template<class T >
T tabs ( const T a)
inline

template <class T> inline T tabs ( const T & a )

tabs() - return the absolute value of ‘a’.

‘a’ is negated iff it is less or equal ‘T( 0 )’.

Developers note:

‘T’ should have an ‘operator >()’, an ‘operator -()’, and a ‘T::T( int )’ constructor.

Definition at line 72 of file ftmpl_functions.h.

73{
74 return (a > T( 0 )) ? a : -a;
75}
STATIC_VAR jList * T
Definition: janet.cc:30

◆ tmax()

template<class T >
T tmax ( const T a,
const T b 
)
inline

template <class T> inline T tmax ( const T & a, const T & b )

tmax() - return the maximum of ‘a’ and ‘b’.

Developers note:

‘T’ should have an ‘operator >()’.

Definition at line 39 of file ftmpl_functions.h.

40{
41 return (a > b) ? a : b;
42}
CanonicalForm b
Definition: cfModGcd.cc:4103

◆ tmin()

template<class T >
T tmin ( const T a,
const T b 
)
inline

template <class T> inline T tmin ( const T & a, const T & b )

tmin() - return the minimum of ‘a’ and ‘b’.

Developers note:

‘T’ should have an ‘operator <()’.

Definition at line 54 of file ftmpl_functions.h.

55{
56 return (a < b) ? a : b;
57}