Table of Contents

Class Clause

Namespace
NMF.Interop.Uml
Assembly
NMF.UMLInterop.dll

A Clause is an Element that represents a single branch of a ConditionalNode, including a test and a body section. The body section is executed only if (but not necessarily if) the test section evaluates to true. <p>From package UML::Actions.</p>

[XmlNamespace("http://www.eclipse.org/uml2/5.0.0/UML")]
[XmlNamespacePrefix("uml")]
[ModelRepresentationClass("http://www.eclipse.org/uml2/5.0.0/UML#//Clause")]
public class Clause : Element, IClause, IElement, IEModelElement, IModelElement, INotifyPropertyChanged, INotifyPropertyChanging
Inheritance
Clause
Implements
Inherited Members

Constructors

Clause()

Creates a new instance

public Clause()

Properties

Body

The set of ExecutableNodes that are executed if the test evaluates to true and the Clause is chosen over other Clauses within the ConditionalNode that also have tests that evaluate to true. <p>From package UML::Actions.</p>

[XmlElementName("body")]
[XmlAttribute(true)]
public ISetExpression<IExecutableNode> Body { get; }

Property Value

ISetExpression<IExecutableNode>

BodyOutput

The OutputPins on Actions within the body section whose values are moved to the result OutputPins of the containing ConditionalNode after execution of the body. <p>From package UML::Actions.</p>

[XmlElementName("bodyOutput")]
[XmlAttribute(true)]
public IOrderedSetExpression<IOutputPin> BodyOutput { get; }

Property Value

IOrderedSetExpression<IOutputPin>

ClassInstance

Gets the Class model for this type

public static IClass ClassInstance { get; }

Property Value

IClass

Decider

An OutputPin on an Action in the test section whose Boolean value determines the result of the test. <p>From package UML::Actions.</p>

[XmlElementName("decider")]
[XmlAttribute(true)]
public IOutputPin Decider { get; set; }

Property Value

IOutputPin

PredecessorClause

A set of Clauses whose tests must all evaluate to false before this Clause can evaluate its test. <p>From package UML::Actions.</p>

[XmlElementName("predecessorClause")]
[XmlAttribute(true)]
[XmlOpposite("successorClause")]
public ISetExpression<IClause> PredecessorClause { get; }

Property Value

ISetExpression<IClause>

ReferencedElements

Gets the referenced model elements of this model element

public override IEnumerableExpression<IModelElement> ReferencedElements { get; }

Property Value

IEnumerableExpression<IModelElement>

SuccessorClause

A set of Clauses that may not evaluate their tests unless the test for this Clause evaluates to false. <p>From package UML::Actions.</p>

[XmlElementName("successorClause")]
[XmlAttribute(true)]
[XmlOpposite("predecessorClause")]
public ISetExpression<IClause> SuccessorClause { get; }

Property Value

ISetExpression<IClause>

Test

The set of ExecutableNodes that are executed in order to provide a test result for the Clause. <p>From package UML::Actions.</p>

[LowerBound(1)]
[XmlElementName("test")]
[XmlAttribute(true)]
public ISetExpression<IExecutableNode> Test { get; }

Property Value

ISetExpression<IExecutableNode>

Methods

Body_output_pins(object, object)

The bodyOutput Pins are OutputPins on Actions in the body of the Clause. _'body'.oclAsType(Action).allActions().output->includesAll(bodyOutput)

public bool Body_output_pins(object diagnostics, object context)

Parameters

diagnostics object

The chain of diagnostics to which problems are to be appended.

context object

The cache of context-specific information.

Returns

bool

Decider_output(object, object)

The decider Pin must be on an Action in the test section of the Clause and must be of type Boolean with multiplicity 1..1. test.oclAsType(Action).allActions().output->includes(decider) and decider.type = Boolean and decider.is(1,1)

public bool Decider_output(object diagnostics, object context)

Parameters

diagnostics object

The chain of diagnostics to which problems are to be appended.

context object

The cache of context-specific information.

Returns

bool

GetClass()

Gets the Class for this model element

public override IClass GetClass()

Returns

IClass

GetCollectionForFeature(string)

Gets the Model element collection for the given feature

protected override IList GetCollectionForFeature(string feature)

Parameters

feature string

The requested feature

Returns

IList

A non-generic list of elements

GetExpressionForReference(string)

Gets the property expression for the given reference

protected override INotifyExpression<IModelElement> GetExpressionForReference(string reference)

Parameters

reference string

The requested reference in upper case

Returns

INotifyExpression<IModelElement>

An incremental property expression

GetModelElementForReference(string, int)

Resolves the given URI to a child model element

protected override IModelElement GetModelElementForReference(string reference, int index)

Parameters

reference string

The requested reference name

index int

The index of this reference

Returns

IModelElement

The model element or null if it could not be found

SetFeature(string, object)

Sets a value to the given feature

protected override void SetFeature(string feature, object value)

Parameters

feature string

The requested feature

value object

The value that should be set to that feature

Test_and_body(object, object)

The test and body parts of a ConditionalNode must be disjoint with each other. test->intersection(_'body')->isEmpty()

public bool Test_and_body(object diagnostics, object context)

Parameters

diagnostics object

The chain of diagnostics to which problems are to be appended.

context object

The cache of context-specific information.

Returns

bool