bartonnackmanifcheck.hh File Reference

Provides check for implementation of interface methods when using static polymorphism, i.e. Barton-Nackman trick. Use by invoking CHECK_INTERFACE_IMPLEMENTATION(asImp().methodToCheck()) and for template methods double ( CHECK_INTERFACE_IMPLEMENTATION((asImp().template methodToCheck<param> ())). More...

Go to the source code of this file.

Defines

#define CHECK_INTERFACE_IMPLEMENTATION(dummy)
#define CHECK_AND_CALL_INTERFACE_IMPLEMENTATION(__interface_method_to_call__)   (__interface_method_to_call__)

Detailed Description

Provides check for implementation of interface methods when using static polymorphism, i.e. Barton-Nackman trick. Use by invoking CHECK_INTERFACE_IMPLEMENTATION(asImp().methodToCheck()) and for template methods double ( CHECK_INTERFACE_IMPLEMENTATION((asImp().template methodToCheck<param> ())).

Author:
Robert Kloefkorn

Define Documentation

#define CHECK_AND_CALL_INTERFACE_IMPLEMENTATION ( __interface_method_to_call__   )     (__interface_method_to_call__)

The macro CHECK_AND_CALL_INTERFACE_IMPLEMENTATION throws an exception, if the interface method ist not implemented and just calls the method otherwise. If NDEBUG is defined no checking is done and the method is just called.

#define CHECK_INTERFACE_IMPLEMENTATION ( dummy   ) 
Generated on Mon Apr 26 10:45:22 2010 for dune-common by  doxygen 1.6.3