dune-common  2.4.1
Classes | Functions
Dune::Std Namespace Reference

Classes

class  index_sequence
 a function similar to std::index_sequence to be introduced in C++14 More...
 
class  integer_sequence
 an implementation of std::integer_sequence to be introduced in C++14 More...
 
struct  MakeUniqueHelper
 
struct  MakeUniqueHelper< T[]>
 
struct  MakeUniqueHelper< T[N]>
 
class  to_false_type
 template mapping a type to std::false_type More...
 
class  to_true_type
 template mapping a type to std::true_type More...
 

Functions

template<typename T , typename... Args>
MakeUniqueHelper< T >::NonArrayUniquePtr make_unique (Args &&...args)
 Implementation of std::make_unique to be introduced in C++14. More...
 
template<typename T >
MakeUniqueHelper< T >::UnknownBoundArrayUniquePtr make_unique (size_t n)
 Implementation of std::make_unique to be introduced in C++14. More...
 
template<typename T , typename... Args>
MakeUniqueHelper< T >::KnownBoundArrayUniquePtr make_unique (Args &&...args)=delete
 Implementation of std::make_unique to be introduced in C++14. More...
 
template<std::size_t N>
static DUNE_CONSTEXPR make_index_sequence_impl< N >::type make_index_sequence ()
 a function similar to std::make_index_sequence to be introduced in C++14 More...
 
template<class T , T N>
static DUNE_CONSTEXPR make_index_sequence_impl< N >::type::template rebind< T >::type make_integer_sequence ()
 a function similar to std::make_integer_sequence to be introduced in C++14 More...
 
template<class... T>
static DUNE_CONSTEXPR make_index_sequence_impl< sizeof...(T) >::type index_sequence_for ()
 a function similar to std::index_sequence_for to be introduced in C++14 More...
 
template<class T >
std::add_rvalue_reference< T >::type declval () DUNE_NOEXCEPT
 

Function Documentation

template<class T >
std::add_rvalue_reference<T>::type Dune::Std::declval ( )

Referenced by index_sequence_for().

template<class... T>
Dune::Std::index_sequence_for ( )
inlinestatic

a function similar to std::index_sequence_for to be introduced in C++14

Template Parameters
...Ta type parameter pack

References declval(), and DUNE_NOEXCEPT.

template<std::size_t N>
Dune::Std::make_index_sequence ( )
inlinestatic

a function similar to std::make_index_sequence to be introduced in C++14

Template Parameters
Nrequested size of index sequence

References DUNE_CONSTEXPR.

template<class T , T N>
Dune::Std::make_integer_sequence ( )
inlinestatic

a function similar to std::make_integer_sequence to be introduced in C++14

Template Parameters
Tan integer type
Nrequested size of integer sequence

References DUNE_CONSTEXPR.

template<typename T , typename... Args>
MakeUniqueHelper<T>::NonArrayUniquePtr Dune::Std::make_unique ( Args &&...  args)
delete

Implementation of std::make_unique to be introduced in C++14.

Template Parameters
TNonarray type of object to be constructed
...ArgsParameter types for constructor of T
Parameters
argsArguments to be passed to constructor of T

This fallback implementation using perfect forwarding as proposed by Herb Sutter in http://herbsutter.com/gotw/_102/

Referenced by make_unique().

template<typename T >
MakeUniqueHelper<T>::UnknownBoundArrayUniquePtr Dune::Std::make_unique ( size_t  n)

Implementation of std::make_unique to be introduced in C++14.

Template Parameters
TArray type of unknown bound
Parameters
nSize of array to allocate

References make_unique().

template<typename T , typename... Args>
MakeUniqueHelper<T>::KnownBoundArrayUniquePtr Dune::Std::make_unique ( Args &&...  args)
delete

Implementation of std::make_unique to be introduced in C++14.

Template Parameters
TArray type of known bound
ArgsDummy arguments

This is deleted, since, according to the standard this should not participate in overload resolution

Parameters
argsDummy arguments
Template Parameters
TNonarray type of object to be constructed
...ArgsParameter types for constructor of T
Parameters
argsArguments to be passed to constructor of T

This fallback implementation using perfect forwarding as proposed by Herb Sutter in http://herbsutter.com/gotw/_102/

Referenced by make_unique().