DUNE PDELab (unstable)
containerdescriptors.hh
Go to the documentation of this file.
A class augmenting std::tuple by element access via operator[].
Definition: tuplevector.hh:35
std::array< Child, n > Array
Descriptor for arrays with all children of the same type and static size.
Definition: containerdescriptors.hh:98
auto makeUniformDescriptor(std::integral_constant< std::size_t, n >, Child child)
Generate a uniform descriptor in case the size is a static constant.
Definition: containerdescriptors.hh:147
auto containerDescriptor(const PreBasis &preBasis)
Return the container descriptor of the pre-basis, if defined, otherwise ContainerDescriptor::Unknown.
Definition: containerdescriptors.hh:58
auto makeDescriptor(Child0 child, Children... children)
Generate a descriptor in case the children are all of the same type.
Definition: containerdescriptors.hh:103
UniformVector< Value > FlatVector
Alias for a uniform vector storing value placeholders.
Definition: containerdescriptors.hh:184
std::vector< Child > Vector
Descriptor for vectors with all children of the same type and dynamic size.
Definition: containerdescriptors.hh:112
Utility to generate an array with a certain value.
decltype(auto) constexpr unpackIntegerSequence(F &&f, std::integer_sequence< I, i... > sequence)
Unpack an std::integer_sequence<I,i...> to std::integral_constant<I,i>...
Definition: indices.hh:124
std::integral_constant< std::size_t, i > index_constant
An index constant with value i.
Definition: indices.hh:29
constexpr FlatLexicographic flatLexicographic()
Creates a lexicographic merging of direct children without blocking.
Definition: basistags.hh:192
static constexpr IntegralRange< std::decay_t< T > > range(T &&from, U &&to) noexcept
free standing function for setting up a range based for loop over an integer range for (auto i: range...
Definition: rangeutilities.hh:288
typename impl::_Child< Node, indices... >::type Child
Template alias for the type of a child node given by a list of child indices.
Definition: childextraction.hh:224
ImplementationDefined child(Node &&node, Indices... indices)
Extracts the child of a node given by a sequence of compile-time and run-time indices.
Definition: childextraction.hh:127
STL namespace.
Utilities for reduction like operations on ranges.
Descriptor for arrays with all children identical and the number of children a static size.
Definition: containerdescriptors.hh:117
static constexpr std::size_t size()
The static size information, i.e., number of children.
Definition: containerdescriptors.hh:135
UniformArray()
Default constructor. Is enable if the child-type is default constructible.
Definition: containerdescriptors.hh:121
UniformArray(Child child)
Constructor that stores a single child only.
Definition: containerdescriptors.hh:126
const Child & operator[](const Index &) const
Access the i'th child that is always the same, i.e., child_.
Definition: containerdescriptors.hh:132
Uniform descriptor with dynamic size.
Definition: containerdescriptors.hh:156
UniformVector(std::size_t size, Child child)
Constructor that stores the size and a single child only.
Definition: containerdescriptors.hh:166
std::size_t size() const
The dynamic size information, i.e., number of children.
Definition: containerdescriptors.hh:176
UniformVector(std::size_t size)
Default constructor with size. Is enable if the child-type is default constructible.
Definition: containerdescriptors.hh:160
const Child & operator[](const Index &) const
Access the i'th child that is always the same, i.e., child_.
Definition: containerdescriptors.hh:173
Fallback container descriptor if nothing else fits.
Definition: containerdescriptors.hh:52
The node in the descriptor tree representing a value placeholder.
Definition: containerdescriptors.hh:71
static constexpr std::size_t size()
A value placeholder does not have any sub-descriptors, thus its size is zero.
Definition: containerdescriptors.hh:77
Value operator[](const Index &) const
The child access method is only available for the interface, but should not be called.
Definition: containerdescriptors.hh:74
Provides the TupleVector class that augments std::tuple by operator[].
Utilities for type computations, constraining overloads, ...
|
Legal Statements / Impressum |
Hosted by TU Dresden & Uni Heidelberg |
generated with Hugo v0.111.3
(Nov 3, 23:36, 2025)