WIP: move cleaned-up dune-typetree to dune-common
This is a work-in-progress MR for the inclusion of dune-type into dune-common as decided on the dune developer meeting 2020. It acts as a base of discussion and may be split up into smaller parts if necessary. Some points might be discussed and reverted to previous implementation.
Major changes/cleanup compared to dune-typetree:
- Unification of implementation namespaces to
Impl::
- Replace
Hybrid::ifElse
withif constexpr
- Cleanup of recursive implementation of
child()
andchildStorage
- several unused utilities are removed
-
TreeInfo
moved to filetreeinfo.hh
-
convert_arg
utility move toshared_ptr.hh
and renamed tocopy_or_wrap
- fully static treepath
TreePath
removed
More cleanup suggestions:
- Remove one of the
Child
types:type
orType
. They refer to the same underlying type.