dune-functions 2.10
Loading...
Searching...
No Matches
Classes | Typedefs | Functions
Dune::Functions::ContainerDescriptors Namespace Reference

Classes

struct  UniformArray
 Descriptor for arrays with all children identical and the number of children a static size. More...
 
struct  UniformVector
 Uniform descriptor with dynamic size. More...
 
struct  Unknown
 Fallback container descriptor if nothing else fits. More...
 
struct  Value
 The node in the descriptor tree representing a value placeholder. More...
 

Typedefs

template<class... Children>
using Tuple = Dune::TupleVector< Children... >
 Descriptor with all children of possibly different type.
 
template<class Child , std::size_t n>
using Array = std::array< Child, n >
 Descriptor for arrays with all children of the same type and static size.
 
template<class Child >
using Vector = std::vector< Child >
 Descriptor for vectors with all children of the same type and dynamic size.
 
template<std::size_t n>
using FlatArray = UniformArray< Value, n >
 Alias for a uniform array storing value placeholders.
 
using FlatVector = UniformVector< Value >
 Alias for a uniform vector storing value placeholders.
 

Functions

template<class Child0 , class... Children, std::enable_if_t<(std::is_same_v< Child0, Children > &&...), int > = 0>
auto makeDescriptor (Child0 child, Children... children)
 Generate a descriptor in case the children are all of the same type.
 
template<class Child , std::size_t n>
auto makeUniformDescriptor (std::integral_constant< std::size_t, n >, Child child)
 Generate a uniform descriptor in case the size is a static constant.
 
template<class Child >
auto makeUniformDescriptor (std::size_t n, Child child)
 Generate a uniform descriptor in case the size is a dynamic value.
 

Typedef Documentation

◆ Array

template<class Child , std::size_t n>
using Dune::Functions::ContainerDescriptors::Array = typedef std::array<Child, n>

Descriptor for arrays with all children of the same type and static size.

◆ FlatArray

template<std::size_t n>
using Dune::Functions::ContainerDescriptors::FlatArray = typedef UniformArray<Value,n>

Alias for a uniform array storing value placeholders.

◆ FlatVector

Alias for a uniform vector storing value placeholders.

◆ Tuple

template<class... Children>
using Dune::Functions::ContainerDescriptors::Tuple = typedef Dune::TupleVector<Children...>

Descriptor with all children of possibly different type.

◆ Vector

template<class Child >
using Dune::Functions::ContainerDescriptors::Vector = typedef std::vector<Child>

Descriptor for vectors with all children of the same type and dynamic size.

Function Documentation

◆ makeDescriptor()

template<class Child0 , class... Children, std::enable_if_t<(std::is_same_v< Child0, Children > &&...), int > = 0>
auto Dune::Functions::ContainerDescriptors::makeDescriptor ( Child0  child,
Children...  children 
)

Generate a descriptor in case the children are all of the same type.

◆ makeUniformDescriptor() [1/2]

template<class Child , std::size_t n>
auto Dune::Functions::ContainerDescriptors::makeUniformDescriptor ( std::integral_constant< std::size_t, n >  ,
Child  child 
)

Generate a uniform descriptor in case the size is a static constant.

◆ makeUniformDescriptor() [2/2]

template<class Child >
auto Dune::Functions::ContainerDescriptors::makeUniformDescriptor ( std::size_t  n,
Child  child 
)

Generate a uniform descriptor in case the size is a dynamic value.