@@ -30,12 +30,37 @@ final class Expr extends AstNode instanceof ExprImpl { }
3030/**
3131 * A AssignmentExpression expression in the AST.
3232 */
33- final class AssignmentExpression extends Expr instanceof AssignmentExpressionImpl { }
33+ class AssignmentExpression extends Expr instanceof AssignmentExpressionImpl {
34+ /**
35+ * Gets the left operand of the assignment expression.
36+ */
37+ Expr getLeft ( ) { result = AssignmentExpressionImpl .super .getLeft ( ) }
38+
39+ /**
40+ * Gets the right operand of the assignment expression.
41+ */
42+ Expr getRight ( ) { result = AssignmentExpressionImpl .super .getRight ( ) }
43+ }
3444
3545/**
3646 * A BinaryExpression expression in the AST.
3747 */
38- final class BinaryExpression extends Expr instanceof BinaryExpressionImpl { }
48+ class BinaryExpression extends Expr instanceof BinaryExpressionImpl {
49+ /**
50+ * Gets the left operand of the binary expression.
51+ */
52+ Expr getLeft ( ) { result = BinaryExpressionImpl .super .getLeft ( ) }
53+
54+ /**
55+ * Gets the right operand of the binary expression.
56+ */
57+ Expr getRight ( ) { result = BinaryExpressionImpl .super .getRight ( ) }
58+
59+ /**
60+ * Gets the operator of the binary expression.
61+ */
62+ string getOperator ( ) { result = BinaryExpressionImpl .super .getOperator ( ) }
63+ }
3964
4065/**
4166 * A Expression expression in the AST.
@@ -45,7 +70,18 @@ final class Expression extends Expr instanceof ExpressionImpl { }
4570/**
4671 * A Interpolation literal in the AST.
4772 */
48- final class Interpolation extends Expr instanceof InterpolationImpl { }
73+ final class Interpolation extends Expr instanceof InterpolationImpl {
74+ /**
75+ * Gets the expression contained within the interpolation.
76+ */
77+ Expr getExpression ( ) {
78+ result = InterpolationImpl .super .getExpression ( )
79+ }
80+
81+ string getValue ( ) {
82+ result = "${" + this .getExpression ( ) .toString ( ) + "}"
83+ }
84+ }
4985
5086/**
5187 * A LambdaExpression expression in the AST.
@@ -69,9 +105,7 @@ class MemberExpression extends Expr instanceof MemberExpressionImpl {
69105 /**
70106 * Gets the full name of the member expression, which includes the namespace and the member name.
71107 */
72- string getFullName ( ) {
73- result = this .getNamespace ( ) .getName ( ) + "." + this .getName ( ) .getName ( )
74- }
108+ string getFullName ( ) { result = this .getNamespace ( ) .getName ( ) + "." + this .getName ( ) .getName ( ) }
75109}
76110
77111/**
0 commit comments