Package net.ssehub.easy.varModel.cst
Class BlockExpression
java.lang.Object
net.ssehub.easy.varModel.cst.ConstraintSyntaxTree
net.ssehub.easy.varModel.cst.BlockExpression
- All Implemented Interfaces:
IAttributeAccess
Represents a block of expressions. The type of the block as well as its value are determined by the last
(non-comment) expression in the block.
- Author:
- Holger Eichelberger
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaccept(IConstraintTreeVisitor visitor) Visiting method for the visitor.getExpression(int index) Returns the specified expression.intReturns the number of expressions.Infers the datatype of the subtree represented by this object.Methods inherited from class net.ssehub.easy.varModel.cst.ConstraintSyntaxTree
getAttribute, getAttribute, getAttributesCount, getContainedType, getName, getParent, isSemanticallyEqual
-
Field Details
-
exprs
-
type
-
-
Constructor Details
-
BlockExpression
Creates a block expression.- Parameters:
exprs- the expressions in the block- Throws:
CSTSemanticException- in case that no expressions are given
-
-
Method Details
-
getExpressionCount
public int getExpressionCount()Returns the number of expressions.- Returns:
- the number of expressions
-
getExpression
Returns the specified expression.- Parameters:
index- the index of the expression- Returns:
- the specified index
- Throws:
IndexOutOfBoundsException- ifindex<0 || index>=getExpressionCount()
-
accept
Description copied from class:ConstraintSyntaxTreeVisiting method for the visitor.
This method is used for saving this model element.- Specified by:
acceptin classConstraintSyntaxTree- Parameters:
visitor- The visitor, which should save this model element.
-
inferDatatype
Description copied from class:ConstraintSyntaxTreeInfers the datatype of the subtree represented by this object.- Specified by:
inferDatatypein classConstraintSyntaxTree- Returns:
- the data type
- Throws:
CSTSemanticException- Will be thrown if parameters of (sub-) trees do not fit together.
-