Reflect removal of deprecated Node::CHILDREN in TypeTree
This is seldom case of forward-dependency in Dune.
Merge request reports
Activity
changed milestone to %DUNE 2.10.0
assigned to @santiago.ospina
- Resolved by Christoph Grüninger
We need to remove this code from here... see !1094 (closed)
76 76 77 77 template< class T > 78 78 struct DimRange< T, std::enable_if_t< std::is_same< typename T::NodeTag, Dune::TypeTree::PowerNodeTag >::value > > 79 : public std::integral_constant< std::size_t, sum< int >( T::CHILDREN * DimRange< typename T::ChildType >::value ) > Another remark is that
dune-typetree
has moved to allow dynamic ranges too. If a dynamic node comes, it won't be represented by this "concept" dispatch. IMO this class took much responsibility over classes in other modules...This seems to be used in two places:
- In
dune-grid
to get the dimension range of some field vector. - In
dune-functions
to get the degree of a tree node.
I would propose to fix the code in
dune-functions
to get the degree directly from the node instead of using the "concept" dispatch from this line, and remove this code from here. @carsten.graeser does that make sense to you?If we want to maximize backwards compatibility we should accept the change propose by @gruenich and deprecate this particular instantiation. A caveat though is that this code might be instantiated within python generation context where the warning might not be visible.
- In
added 3 commits
-
5b135e89...7f5682f7 - 2 commits from branch
master
- 7d57b151 - Reflect removal of deprecated Node::CHILDREN in TypeTree
-
5b135e89...7f5682f7 - 2 commits from branch
- Resolved by Christoph Grüninger
- Resolved by Christoph Grüninger
As suggested already in !1094 (closed) this code and the dependency on dune-typetree should be removed completely. No need to fix an outdated, wrong and unnecessary piece of code.
mentioned in commit 9b924939