|
dune-typetree 2.10
|
Loading...
Searching...
No Matches
treecontainer.hh
Go to the documentation of this file.
3// SPDX-FileCopyrightInfo: Copyright © DUNE Project contributors, see file LICENSE.md in module root
44 using StaticDegreeConcept = decltype((std::integral_constant<std::size_t, N::degree()>{}, true));
127 static constexpr decltype(auto) accessByTreePath(C&& container, const HybridTreePath<T...>& path)
300 using UniformTreeContainer = std::decay_t<decltype(makeTreeContainer<Value>(std::declval<const Tree&>()))>;
306 using TreeContainer = std::decay_t<decltype(makeTreeContainer(std::declval<const Tree&>(), std::declval<Detail::LeafToDefaultConstructibleValue<LeafToValue>>()))>;
auto makeTreeContainer(const Tree &tree, LeafToValue &&leafToValue)
Create container havin the same structure as the given tree.
Definition treecontainer.hh:268
std::size_t degree(const Node &node)
Returns the degree of node as run time information.
Definition nodeinterface.hh:79
constexpr auto treePath(const T &... t)
Constructs a new HybridTreePath from the given indices.
Definition treepath.hh:326
STL namespace.
auto makeTreeContainerVectorBackend(Container &&container)
Definition treecontainer.hh:224
constexpr index_constant< 0 > _0
decltype(auto) constexpr unpackIntegerSequence(F &&f, std::integer_sequence< I, i... > sequence)
static StaticIntegralRange< T, to > range(std::integral_constant< T, to >) noexcept
constexpr void forEach(Range &&range, F &&f)
virtual void operator()()=0
constexpr std::integral_constant< T, I0 > head(std::integer_sequence< T, I0, II... >)
constexpr auto makeTupleVector(T &&... t)
Definition treecontainer.hh:39
auto operator()(const Node &node)
Definition treecontainer.hh:63
ContainerFactory(LeafToValue leafToValue)
Create ContainerFactory.
Definition treecontainer.hh:58
Definition treecontainer.hh:119
void resize(const Tree &tree)
Resize the (nested) container depending on the degree of the tree nodes.
Definition treecontainer.hh:204
Container & data()
Definition treecontainer.hh:214
const Container & data() const
Definition treecontainer.hh:209
TreeContainerVectorBackend(Container &&container)
Move the passed container into the internal storage.
Definition treecontainer.hh:171
TreeContainerVectorBackend()
Default constructor. The stored container might need to be resized before usage.
Definition treecontainer.hh:186
TreeContainerVectorBackend(const Tree &tree)
Default construct the container and perform a resize depending on the tree-node degrees.
Definition treecontainer.hh:177
Definition treecontainer.hh:238
auto operator()(const Node &node) const
Definition treecontainer.hh:240
A hybrid version of TreePath that supports both compile time and run time indices.
Definition treepath.hh:158
T emplace_back(T... args)
T reduce(T... args)
T ref(T... args)
T reserve(T... args)
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8