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

Classes

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...
 
class  integer_sequence
 an implementation of std::integer_sequence to be introduced in C++14 More...
 
class  index_sequence
 a function similar to std::index_sequence to be introduced in C++14 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 ( )
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
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
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
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/

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
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/