Dune Core Modules (2.8.0)

Dune::TypeTree::TransformTree< SourceTree, Transformation, Tag, recursive > Struct Template Reference

Transform a TypeTree. More...

#include <dune/typetree/transformation.hh>

Public Types

typedef transformed_type type
 The type of the transformed tree.
 

Static Public Member Functions

static transformed_type transform (const SourceTree &s, const Transformation &t=Transformation())
 Apply transformation to an existing tree s.
 
static transformed_type transform (const SourceTree &s, Transformation &t)
 Apply transformation to an existing tree s.
 
static transformed_type transform (std::shared_ptr< const SourceTree > sp, const Transformation &t=Transformation())
 Apply transformation to an existing tree s.
 
static transformed_type transform (std::shared_ptr< const SourceTree > sp, Transformation &t)
 Apply transformation to an existing tree s.
 
static transformed_storage_type transform_storage (std::shared_ptr< const SourceTree > sp, const Transformation &t=Transformation())
 
static transformed_storage_type transform_storage (std::shared_ptr< const SourceTree > sp, Transformation &t)
 

Detailed Description

template<typename SourceTree, typename Transformation, typename Tag = StartTag, bool recursive = true>
struct Dune::TypeTree::TransformTree< SourceTree, Transformation, Tag, recursive >

Transform a TypeTree.

This struct can be used to apply a transformation to a given TypeTree. It exports the type of the resulting (transformed) tree and contains methods to actually transform tree instances.

Template Parameters
SourceTree= The TypeTree that should be transformed.
Transformation= The Transformation to apply to the TypeTree.
Tag= This parameter is an implementation detail and must always be set to its default value.
recursive= This parameter is an implementation detail and must always be set to its default value.

Member Function Documentation

◆ transform_storage() [1/2]

template<typename SourceTree , typename Transformation , typename Tag = StartTag, bool recursive = true>
static transformed_storage_type Dune::TypeTree::TransformTree< SourceTree, Transformation, Tag, recursive >::transform_storage ( std::shared_ptr< const SourceTree >  sp,
const Transformation &  t = Transformation() 
)
inlinestatic

Apply transformation to storage type of an existing tree, returning a heap-allocated storage type instance of the transformed tree.

References Dune::TypeTree::TransformTree< SourceTree, Transformation, Tag, recursive >::transform_storage().

Referenced by Dune::TypeTree::TransformTree< SourceTree, Transformation, Tag, recursive >::transform_storage().

◆ transform_storage() [2/2]

template<typename SourceTree , typename Transformation , typename Tag = StartTag, bool recursive = true>
static transformed_storage_type Dune::TypeTree::TransformTree< SourceTree, Transformation, Tag, recursive >::transform_storage ( std::shared_ptr< const SourceTree >  sp,
Transformation &  t 
)
inlinestatic

Apply transformation to storage type of an existing tree, returning a heap-allocated storage type instance of the transformed tree.

References Dune::TypeTree::TransformTree< SourceTree, Transformation, Tag, recursive >::transform_storage().


The documentation for this struct was generated from the following file:
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.111.3 (Dec 22, 23:30, 2024)