Dune Core Modules (2.8.0)

Transformation

Classes

struct  Dune::TypeTree::TransformTree< SourceTree, Transformation, Tag, recursive >
 Transform a TypeTree. More...
 

Functions

template<typename SourceNode , typename Transformation , typename Tag >
void Dune::TypeTree::registerNodeTransformation (SourceNode *, Transformation *, Tag *)
 Register transformation descriptor to transform SourceNode with Transformation. More...
 

Detailed Description

Function Documentation

◆ registerNodeTransformation()

template<typename SourceNode , typename Transformation , typename Tag >
void Dune::TypeTree::registerNodeTransformation ( SourceNode *  ,
Transformation *  ,
Tag *   
)

Register transformation descriptor to transform SourceNode with Transformation.

The tree transformation engine expects this function to return a struct describing how to perform the Transformation for the type SourceNode, which has ImplementationTag Tag. This function has to be specialized for every combination of Transformation and Tag that the transformation engine should support.

Note
The arguments are given as pointers to avoid problems with incomplete types.
The specialization does not have to placed in the namespace Dune::TypeTree, it can simply reside in the same namespace as either the SourceNode or the Tag.
This function will never be really called, the engine only extracts the return type. It is thus not necessary to actually implement the function, it is sufficient to declare it.
Template Parameters
SourceNodeThe type of the node in the source tree that should be transformed.
TransformationThe type of the transformation to apply to the source node.
TagThe implementation tag of the source node.
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.111.3 (Dec 22, 23:30, 2024)