Table of Contents

Class Meta2ClassesTransformation.Operation2Method

Namespace
NMF.Models.Meta
Assembly
NMF.Models.MetaTransformation.dll

The transformation rule to transform operations

public class Meta2ClassesTransformation.Operation2Method : TransformationRule<IOperation, CodeMemberMethod>
Inheritance
Meta2ClassesTransformation.Operation2Method
Inherited Members

Methods

CreateBagInterfaceType(CodeTypeReference)

Creates the bag interface type for the given element type

protected virtual CodeTypeReference CreateBagInterfaceType(CodeTypeReference elementTypeReference)

Parameters

elementTypeReference CodeTypeReference

The element type

Returns

CodeTypeReference

The bag interface type reference, by default the generic ICollection

CreateListInterfaceType(CodeTypeReference)

Creates the list interface type for the given element type

protected virtual CodeTypeReference CreateListInterfaceType(CodeTypeReference elementTypeReference)

Parameters

elementTypeReference CodeTypeReference

The element type

Returns

CodeTypeReference

The list interface type reference, by default the generic IList

CreateOrderedSetInterfaceType(CodeTypeReference)

Creates the ordered set interface type for the given element type

protected virtual CodeTypeReference CreateOrderedSetInterfaceType(CodeTypeReference elementTypeReference)

Parameters

elementTypeReference CodeTypeReference

The element type reference

Returns

CodeTypeReference

The ordered set interface type, by default the generic IOrderedSet interface from NMF.Collections.Generic

CreateOutput(IOperation, ITransformationContext)

Creates the output of this transformation rule

public override CodeMemberMethod CreateOutput(IOperation input, ITransformationContext context)

Parameters

input IOperation

The input of the transformation rule

context ITransformationContext

The context (and trace!) object

Returns

CodeMemberMethod

The output for this transformation under this input

Remarks

At this point, not all of the computations have created their output and thus, the trace is not complete. Use the OutputDelayLevel-feature to have the trace contain all elements created in earlier levels

CreateSetInterfaceType(CodeTypeReference)

Creates the unordered set interface type for the given element type

protected virtual CodeTypeReference CreateSetInterfaceType(CodeTypeReference elementTypeReference)

Parameters

elementTypeReference CodeTypeReference

The element type reference

Returns

CodeTypeReference

The unordered set interface type, by default the generic ISet

RegisterDependencies()

Registers the dependencies, i.e. transform the parameters

public override void RegisterDependencies()

Transform(IOperation, CodeMemberMethod, ITransformationContext)

Initialize the generated operation

public override void Transform(IOperation input, CodeMemberMethod output, ITransformationContext context)

Parameters

input IOperation

The input NMeta operation

output CodeMemberMethod

The generated code method

context ITransformationContext

The transformation context