WIP: Experimental replacement of typetree
Summary
This is an experiment to replace the old structures in dune-typetree with a new type-tree implementation more similar to the TreeContainer, i.e., a composition of std::array
, std::tuple
and std::vector
.
See also dune-typetree!111
Merge request reports
Activity
added 1 commit
- 8f1fe61d - Rewrite treeContainer and add generic tree transformation
added 1 commit
- 533dad02 - Include some tests from typetree to verify the implementation
Actually, including the typetree into dune-function is not what is suggested by this MR. It is just to make the experimentation simpler.
This MR is more about an experiment whether it is possible to unify the multiple type-tree implementations we are currently using or that are proposed. In dune-functions we currently have at least 2 type-trees: The basis-tree and the tree-container. Both with different purpose and both with different interface. Both need hierarchic traversal/access and size/resize utilities. In !350 (closed) a third tree is proposed, again with the same requirements, but encoding something different. Actually, there are more trees hidden: The basis tree is basically a combination of two trees, a localbasis tree and an index tree.
So, the question is, can we find a data-structure that is flexible enough to represent all these trees, with a simple and efficient storage, access, traversal and transformation. It should be possible to transform a basis-tree into a tree-container, or a basis-tree into a size-tree... with a not too complicated utility.
added 1 commit
- eac302b2 - Move new typetree implementation to dune-typetree
added 18 commits
-
21dccfde...14610512 - 6 commits from branch
master
- 7a07ca38 - Experimental replacement of typetree
- 4791b826 - Add a more descriptive documentation
- c1d4699c - Improve documentation
- 062a62f9 - Rewrite treeContainer and add generic tree transformation
- e18ca319 - Remove vectorGenerator source
- 5600b085 - Do not remove treedata.hh
- d89c0476 - Reactivate concepts
- 8bf7243c - Include some tests from typetree to verify the implementation
- 88594adc - Move new typetree implementation to dune-typetree
- d06297de - Unde changes to doxygen local configuration
- b5a642a2 - Use child with multiple indices
- 2f914473 - Remove unnecessary includes
Toggle commit list-
21dccfde...14610512 - 6 commits from branch