Chromium Code Reviews| Index: sdk/lib/_internal/compiler/implementation/tree/nodes.dart |
| diff --git a/sdk/lib/_internal/compiler/implementation/tree/nodes.dart b/sdk/lib/_internal/compiler/implementation/tree/nodes.dart |
| index 210ebe52563b6e17541b614e1c3b0ff8372c1f57..dc5f21662b9d6df6227b9b8b49983f24b75d93f1 100644 |
| --- a/sdk/lib/_internal/compiler/implementation/tree/nodes.dart |
| +++ b/sdk/lib/_internal/compiler/implementation/tree/nodes.dart |
| @@ -76,6 +76,7 @@ abstract class Visitor<R> { |
| } |
| R visitSwitchCase(SwitchCase node) => visitNode(node); |
| R visitSwitchStatement(SwitchStatement node) => visitStatement(node); |
| + R visitLiteralSymbol(LiteralSymbol node) => visitExpression(node); |
| R visitThrow(Throw node) => visitExpression(node); |
| R visitTryStatement(TryStatement node) => visitStatement(node); |
| R visitTypeAnnotation(TypeAnnotation node) => visitNode(node); |
| @@ -947,6 +948,28 @@ class LiteralList extends Expression { |
| Token getEndToken() => elements.getEndToken(); |
| } |
| +class LiteralSymbol extends Expression { |
| + final Token hashToken; |
| + final NodeList identifiers; |
| + |
| + LiteralSymbol(this.hashToken, this.identifiers); |
| + |
| + LiteralSymbol asLiteralSymbol() => this; |
| + |
| + void visitChildren(Visitor visitor) { |
| + if (identifiers != null) identifiers.accept(visitor); |
| + } |
| + |
| + accept(Visitor visitor) => visitor.visitLiteralSymbol(this); |
| + |
| + Token getBeginToken() => hashToken; |
| + |
| + Token getEndToken() => identifiers.getEndToken(); |
| + |
| + String get nameString => '${identifiers}'; |
|
ahe
2013/09/03 17:53:34
What is this for? Looks like a method that should
Johnni Winther
2013/09/10 09:09:07
Renamed to slowNameString. It doesn't include # so
|
| +} |
| + |
| + |
|
ahe
2013/09/03 17:53:34
Extra line.
Johnni Winther
2013/09/10 09:09:07
Done.
|
| class Identifier extends Expression { |
| final Token token; |