org.openarchitectureware.expression.ast
Class CollectionExpression
java.lang.Object
org.openarchitectureware.expression.ast.SyntaxElement
org.openarchitectureware.expression.ast.Expression
org.openarchitectureware.expression.ast.FeatureCall
org.openarchitectureware.expression.ast.CollectionExpression
- All Implemented Interfaces:
- Analyzable, ISyntaxElement, Evaluatable
public class CollectionExpression
- extends FeatureCall
- Author:
- Sven Efftinge (http://www.efftinge.de), Arno Haase, Bernd Kolb
Method Summary |
Type |
analyzeInternal(ExecutionContext ctx,
java.util.Set<AnalysationIssue> issues)
analyzes in the following order if (target==null) 1) enumeration literal
2) variable 3) implicite var (e.g. this) 4) type literal
otherwise it's a property |
java.lang.Object |
evaluateInternal(ExecutionContext ctx)
evaluates in the following order if (target==null) 1) enumeration literal
2) variable 3) implicit var (e.g. this) being everything but an empty
list 4) type literal otherwise it's a property
if the above doesn't match throw an error as long as target is no empty
Collection |
Expression |
getClosure()
|
java.lang.String |
getElementName()
|
protected java.lang.String |
toStringInternal()
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
CollectionExpression
public CollectionExpression(Identifier name,
Identifier eleName,
Expression closure)
toStringInternal
protected java.lang.String toStringInternal()
- Overrides:
toStringInternal
in class FeatureCall
getClosure
public Expression getClosure()
evaluateInternal
public java.lang.Object evaluateInternal(ExecutionContext ctx)
- Description copied from class:
FeatureCall
- evaluates in the following order if (target==null) 1) enumeration literal
2) variable 3) implicit var (e.g. this) being everything but an empty
list 4) type literal otherwise it's a property
if the above doesn't match throw an error as long as target is no empty
Collection
- Overrides:
evaluateInternal
in class FeatureCall
analyzeInternal
public Type analyzeInternal(ExecutionContext ctx,
java.util.Set<AnalysationIssue> issues)
- Description copied from class:
FeatureCall
- analyzes in the following order if (target==null) 1) enumeration literal
2) variable 3) implicite var (e.g. this) 4) type literal
otherwise it's a property
- Overrides:
analyzeInternal
in class FeatureCall
getElementName
public java.lang.String getElementName()