| Index: pkg/analyzer/lib/src/dart/ast/ast.dart
|
| diff --git a/pkg/analyzer/lib/src/dart/ast/ast.dart b/pkg/analyzer/lib/src/dart/ast/ast.dart
|
| index 2825ef56b73733f1ccd3369cfdee168878951e51..08f5056a1b0188b5ae27a270251748c533bc9a49 100644
|
| --- a/pkg/analyzer/lib/src/dart/ast/ast.dart
|
| +++ b/pkg/analyzer/lib/src/dart/ast/ast.dart
|
| @@ -4063,6 +4063,9 @@ abstract class ExpressionImpl extends AstNodeImpl implements Expression {
|
| }
|
| return null;
|
| }
|
| +
|
| + @override
|
| + Expression get unParenthesized => this;
|
| }
|
|
|
| /**
|
| @@ -7915,6 +7918,17 @@ class ParenthesizedExpressionImpl extends ExpressionImpl
|
| int get precedence => 15;
|
|
|
| @override
|
| + Expression get unParenthesized {
|
| + // This is somewhat inefficient, but it avoids a stack overflow in the
|
| + // degenerate case.
|
| + Expression expression = _expression;
|
| + while (expression is ParenthesizedExpressionImpl) {
|
| + expression = (expression as ParenthesizedExpressionImpl)._expression;
|
| + }
|
| + return expression;
|
| + }
|
| +
|
| + @override
|
| dynamic/*=E*/ accept/*<E>*/(AstVisitor/*<E>*/ visitor) =>
|
| visitor.visitParenthesizedExpression(this);
|
|
|
|
|