Skip to content

Avoid using deprecated header dune/common/function.hh

Carsten Gräser requested to merge feature/avoid-dune-common-function into master

This removed all uses of the old interface in dune-localfunctions. Here's a list of all changes. The one with potential influence to users are bold:

  • Stop using VirtualFunction in LocalFiniteElementVirtualInterface and replace it by std:function. Strictly speaking this is an interface change. Implications of this change:
    • You can still pass a function providing the old interface to interpolate(). It will still be wrapped automatically.
    • The virtual wrapper LocalFiniteElementVirtualImp still works, but from now on the virtual wrapper assumes that the wrapped LFE supports passing functions with operator().
    • If you derived from the virtual interface class (instead of using LocalFiniteElementVirtualImp') you have to be careful to switch the function type if you did not extract it from the interface class by using the FunctionType` typedef.
  • Deprecate LocalFiniteElementFunctionBase and now exports a dummy base class to keep it working during the deprecation period.
  • Avoid deprecated function base classes in tests
  • Use operator() function interface in internal helper ComponentEvaluator.
  • Remove internal helpers for creating old style function classes

Merge request reports