3 #include <amdis/common/RecursiveForEach.hpp> 4 #include <amdis/common/RecursiveMap.hpp> 5 #include <amdis/typetree/TreeContainer.hpp> 12 template <
class Value>
13 struct Apply<TypeTree::LeafNodeStorage<Value>>
15 template <
class F,
class VC>
16 static auto impl(F&& f, VC
const& vc)
19 Recursive::apply(f,vc.value())};
23 template <
class Value,
class Container>
24 struct Apply<TypeTree::InnerNodeStorage<Value,Container>>
26 template <
class F,
class VC>
27 static auto impl(F&& f, VC
const& vc)
30 Recursive::apply(f,vc.value()),
31 Recursive::apply(f,vc.container())};
35 template <
class Container>
36 struct Apply<TypeTree::TreeContainerStorage<Container>>
38 template <
class F,
class TC>
39 static auto impl(F&& f, TC
const& c)
48 template <
class Value>
49 struct ForEach<TypeTree::LeafNodeStorage<Value>>
51 template <
class VC,
class F>
52 static void impl(VC&& vc, F&& f)
54 Recursive::forEach(vc.value(),f);
58 template <
class Value,
class Container>
59 struct ForEach<TypeTree::InnerNodeStorage<Value,Container>>
61 template <
class VC,
class F>
62 static void impl(VC&& vc, F&& f)
64 Recursive::forEach(vc.value(),f);
65 Recursive::forEach(vc.container(),f);
69 template <
class Container>
70 struct ForEach<TypeTree::TreeContainerStorage<Container>>
72 template <
class F,
class TC>
73 static void impl(TC&& c, F&& f)
75 Recursive::forEach(c.data(),f);
Default implementation of the recursive forEach function.
Definition: RecursiveForEach.hpp:21
Contains all classes needed for solving linear and non linear equation systems.
Definition: AdaptBase.hpp:6
Definition: TreeContainer.hpp:53
Vector data-structure with tree-path index access and hierarchic structure given by the Container tem...
Definition: TreeContainer.hpp:169
Default implementation of the recursive map function.
Definition: RecursiveApply.hpp:16
Definition: TreeContainer.hpp:23