Get rid of TreePath
There still exists the TreePath
template for encoding a fully static path. Conceptually this was superseded by HybridTreePath
since HybridTreePath<index_constant<i>...>
can serve the same purpose as TreePath<i...>
. Hence I think it's a good idea to get rid of TreePath
. Also TreePath
itself is no longer used in dune-typetree. But there's two main obstacles:
- You cannot use
HybridTreePath<index_constant<i>...>
because a lot of the utility functions forTreePath
are not implemented forHybridTreePath
. This is mostly because the intended use is different:HybridTreePath
is intended to by used as value, while those utilities act on types only. - Dune-pdelab still uses
TreePath
in many places.
In principle I solved both locally:
- Implement (in dune-typetree) the missing utilities to make
HybridTreePath<index_constant<i>...>
a drop in replacement forTreePath<i...>
. - Replace (in dune-pdelab) all uses of
TreePath
by the correspondingHybridTreePath
Is there interest (from pdelab) in this change? In the long run I think that many of the above mentioned utilities can/should be dropped if pdelab switches to a more value based handling of treepaths.