Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3206)

Unified Diff: dart/lib/compiler/implementation/scanner/listener.dart

Issue 10913153: Parse methods named 'get' or 'set' (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge
Patch Set: Rebased Created 8 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: dart/lib/compiler/implementation/scanner/listener.dart
diff --git a/dart/lib/compiler/implementation/scanner/listener.dart b/dart/lib/compiler/implementation/scanner/listener.dart
index dc727e71d32dc91cd098edd0de15b1916e569545..e8eca74491af35364fdc8c86670f68470f094ccf 100644
--- a/dart/lib/compiler/implementation/scanner/listener.dart
+++ b/dart/lib/compiler/implementation/scanner/listener.dart
@@ -659,6 +659,7 @@ class ElementListener extends Listener {
void endTopLevelMethod(Token beginToken, Token getOrSet, Token endToken) {
Identifier name = popNode();
+ TypeAnnotation type = popNode();
Modifiers modifiers = popNode();
ElementKind kind;
if (getOrSet === null) {
@@ -679,6 +680,7 @@ class ElementListener extends Listener {
name, fields, ElementKind.FIELD, compilationUnitElement));
}
NodeList variables = makeNodeList(count, null, null, ",");
+ TypeAnnotation type = popNode();
Modifiers modifiers = popNode();
buildFieldElements(modifiers, variables, compilationUnitElement,
buildFieldElement,
@@ -1300,8 +1302,9 @@ class NodeListener extends ElementListener {
void endFields(int count, Token beginToken, Token endToken) {
NodeList variables = makeNodeList(count, null, null, ",");
+ TypeAnnotation type = popNode();
Modifiers modifiers = popNode();
- pushNode(new VariableDefinitions(null, modifiers, variables, endToken));
+ pushNode(new VariableDefinitions(type, modifiers, variables, endToken));
}
void endMethod(Token getOrSet, Token beginToken, Token endToken) {
@@ -1309,8 +1312,9 @@ class NodeListener extends ElementListener {
NodeList initializers = popNode();
NodeList formalParameters = popNode();
Expression name = popNode();
+ TypeAnnotation returnType = popNode();
Modifiers modifiers = popNode();
- pushNode(new FunctionExpression(name, formalParameters, body, null,
+ pushNode(new FunctionExpression(name, formalParameters, body, returnType,
modifiers, initializers, getOrSet));
}
« no previous file with comments | « dart/lib/compiler/implementation/resolver.dart ('k') | dart/lib/compiler/implementation/scanner/parser.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698