This PR proposed to define base class functions as final and override these functions (which are templated) in child classes as a protected function. These changes are breaking but could be done in several steps:
set the function of the abstract class to final
fix the components which were overriding this function #4982
set the functions overriding the templated one as protected (for v25.06 ?)
rename functions with a clear delegate name doFunctionName() + compatibility layer
tests should be fixed to use the public virtual class (access protected functions)
add the check on the component state:
first check non-invalidity
then, check the validity
This project could have several benefits:
cleaning the API and expliciting the delegation mechanism
allowing to introduce and generalize more easily the componentState mechanims
This issue is created further to #4943
This PR proposed to define base class functions as final and override these functions (which are templated) in child classes as a protected function. These changes are breaking but could be done in several steps:
doFunctionName()
+ compatibility layerThis project could have several benefits: