Functions
Algorithms

Functions

template<typename T1 , typename T2 , typename = EnableIf_< Or< All<IsSigned,T1,T2>, All<IsUnsigned,T1,T2> > >>
BLAZE_ALWAYS_INLINE constexpr auto blaze::max (const T1 &a, const T2 &b) noexcept
 Maximum function for two values of builtin data type. More...
 
template<typename T1 , typename T2 , typename T3 >
BLAZE_ALWAYS_INLINEdecltype(auto) constexpr blaze::max (const T1 &a, const T2 &b, const T3 &c) noexcept
 Maximum function for three values/objects. More...
 
template<typename T1 , typename T2 , typename T3 , typename... Ts>
BLAZE_ALWAYS_INLINEdecltype(auto) constexpr blaze::max (const T1 &a, const T2 &b, const T3 &c, const Ts &... args) noexcept
 Maximum function for at least four values/objects. More...
 
template<typename T1 , typename T2 , typename = EnableIf_< Or< All<IsSigned,T1,T2>, All<IsUnsigned,T1,T2> > >>
BLAZE_ALWAYS_INLINE constexpr auto blaze::min (const T1 &a, const T2 &b) noexcept
 Minimum function for two values of builtin data type. More...
 
template<typename T1 , typename T2 , typename T3 >
BLAZE_ALWAYS_INLINEdecltype(auto) constexpr blaze::min (const T1 &a, const T2 &b, const T3 &c) noexcept
 Minimum function for three values/objects. More...
 
template<typename T1 , typename T2 , typename T3 , typename... Ts>
BLAZE_ALWAYS_INLINEdecltype(auto) constexpr blaze::min (const T1 &a, const T2 &b, const T3 &c, const Ts &... args) noexcept
 Minimum function for at least four values/objects. More...
 
template<typename InputIterator , typename OutputIterator >
OutputIterator blaze::transfer (InputIterator first, InputIterator last, OutputIterator dest)
 Transfers the elements from the given source range to the destination range. More...
 

Detailed Description

Function Documentation

◆ max() [1/3]

template<typename T1 , typename T2 , typename = EnableIf_< Or< All<IsSigned,T1,T2>, All<IsUnsigned,T1,T2> > >>
BLAZE_ALWAYS_INLINE constexpr auto blaze::max ( const T1 &  a,
const T2 &  b 
)
noexcept

Maximum function for two values of builtin data type.

Parameters
aThe first value.
bThe second value.
Returns
The maximum of the two values.

This function returns the maximum of the two given data values. The return type of the function is determined by the data types of the given arguments.

◆ max() [2/3]

template<typename T1 , typename T2 , typename T3 >
BLAZE_ALWAYS_INLINEdecltype(auto) constexpr blaze::max ( const T1 &  a,
const T2 &  b,
const T3 &  c 
)
noexcept

Maximum function for three values/objects.

Parameters
aThe first value/object.
bThe second value/object.
cThe third value/object.
Returns
The maximum of the given values/objects.

This function returns the maximum of the given data values/objects. The return type of the function is determined by the data types of the given arguments.

◆ max() [3/3]

template<typename T1 , typename T2 , typename T3 , typename... Ts>
BLAZE_ALWAYS_INLINEdecltype(auto) constexpr blaze::max ( const T1 &  a,
const T2 &  b,
const T3 &  c,
const Ts &...  args 
)
noexcept

Maximum function for at least four values/objects.

Parameters
aThe first value/object.
bThe second value/object.
cThe third value/object.
argsThe pack of additional values/objects.
Returns
The maximum of the given values/objects.

This function returns the maximum of the given data values/objects. The return type of the function is determined by the data types of the given arguments.

◆ min() [1/3]

template<typename T1 , typename T2 , typename = EnableIf_< Or< All<IsSigned,T1,T2>, All<IsUnsigned,T1,T2> > >>
BLAZE_ALWAYS_INLINE constexpr auto blaze::min ( const T1 &  a,
const T2 &  b 
)
noexcept

Minimum function for two values of builtin data type.

Parameters
aThe first value.
bThe second value.
Returns
The minimum of the two values.

This function returns the minimum of the two given data values. The return type of the function is determined by the data types of the given arguments.

◆ min() [2/3]

template<typename T1 , typename T2 , typename T3 >
BLAZE_ALWAYS_INLINEdecltype(auto) constexpr blaze::min ( const T1 &  a,
const T2 &  b,
const T3 &  c 
)
noexcept

Minimum function for three values/objects.

Parameters
aThe first value/object.
bThe second value/object.
cThe third value/object.
Returns
The minimum of the given values/objects.

This function returns the minimum of the given data values/objects. The return type of the function is determined by the data types of the given arguments.

◆ min() [3/3]

template<typename T1 , typename T2 , typename T3 , typename... Ts>
BLAZE_ALWAYS_INLINEdecltype(auto) constexpr blaze::min ( const T1 &  a,
const T2 &  b,
const T3 &  c,
const Ts &...  args 
)
noexcept

Minimum function for at least four values/objects.

Parameters
aThe first value/object.
bThe second value/object.
cThe third value/object.
argsThe pack of additional values/objects.
Returns
The minimum of the given values/objects.

This function returns the minimum of the given data values/objects. The return type of the function is determined by the data types of the given arguments.

◆ transfer()

template<typename InputIterator , typename OutputIterator >
OutputIterator blaze::transfer ( InputIterator  first,
InputIterator  last,
OutputIterator  dest 
)

Transfers the elements from the given source range to the destination range.

Parameters
firstIterator to the first element of the source range.
lastIterator to the element one past the last element of the source range.
destIterator to the first element of the destination range.
Returns
Output iterator to the element one past the last copied element.

This function transfers the elements in the range $ [first,last) $ to the specified destination range. In case the elements provide a no-throw move assignment, the transfer operation is handled via move. Else the elements are copied.