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

Side by Side Diff: pkg/compiler/lib/src/parser/member_listener.dart

Issue 2828253003: Add top level type inference logic for integer literals. (Closed)
Patch Set: Clean up, bug fix, and remove unintentional expectations changes Created 3 years, 8 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library dart2js.parser.member_listener; 5 library dart2js.parser.member_listener;
6 6
7 import '../common.dart'; 7 import '../common.dart';
8 import '../elements/elements.dart' show Element, ElementKind, Elements; 8 import '../elements/elements.dart' show Element, ElementKind, Elements;
9 import '../elements/modelx.dart' 9 import '../elements/modelx.dart'
10 show ClassElementX, ElementX, FieldElementX, VariableList; 10 show ClassElementX, ElementX, FieldElementX, VariableList;
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
126 void buildFieldElement(Identifier name, VariableList fields) { 126 void buildFieldElement(Identifier name, VariableList fields) {
127 Element element = new FieldElementX(name, enclosingClass, fields); 127 Element element = new FieldElementX(name, enclosingClass, fields);
128 addMember(element); 128 addMember(element);
129 } 129 }
130 130
131 buildFieldElements(modifiers, variableDefinitions.definitions, 131 buildFieldElements(modifiers, variableDefinitions.definitions,
132 enclosingClass, buildFieldElement, beginToken, endToken, hasParseError); 132 enclosingClass, buildFieldElement, beginToken, endToken, hasParseError);
133 } 133 }
134 134
135 @override 135 @override
136 void endFieldInitializer(Token assignmentOperator) { 136 void endFieldInitializer(Token assignmentOperator, Token token) {
137 pushNode(null); // Super expects an expression, but 137 pushNode(null); // Super expects an expression, but
138 // ClassElementParser just skips expressions. 138 // ClassElementParser just skips expressions.
139 super.endFieldInitializer(assignmentOperator); 139 super.endFieldInitializer(assignmentOperator, token);
140 } 140 }
141 141
142 @override 142 @override
143 void endInitializers(int count, Token beginToken, Token endToken) { 143 void endInitializers(int count, Token beginToken, Token endToken) {
144 pushNode(null); 144 pushNode(null);
145 } 145 }
146 146
147 void addMetadata(ElementX memberElement) { 147 void addMetadata(ElementX memberElement) {
148 memberElement.metadata = metadata.toList(); 148 memberElement.metadata = metadata.toList();
149 } 149 }
150 150
151 void addMember(ElementX memberElement) { 151 void addMember(ElementX memberElement) {
152 addMetadata(memberElement); 152 addMetadata(memberElement);
153 enclosingClass.addMember(memberElement, reporter); 153 enclosingClass.addMember(memberElement, reporter);
154 } 154 }
155 155
156 @override 156 @override
157 void endMetadata(Token beginToken, Token periodBeforeName, Token endToken) { 157 void endMetadata(Token beginToken, Token periodBeforeName, Token endToken) {
158 super.endMetadata(beginToken, periodBeforeName, endToken); 158 super.endMetadata(beginToken, periodBeforeName, endToken);
159 // TODO(paulberry,ahe): type variable metadata should not be ignored. See 159 // TODO(paulberry,ahe): type variable metadata should not be ignored. See
160 // dartbug.com/5841. 160 // dartbug.com/5841.
161 if (!inTypeVariable) { 161 if (!inTypeVariable) {
162 pushMetadata(new PartialMetadataAnnotation(beginToken, endToken)); 162 pushMetadata(new PartialMetadataAnnotation(beginToken, endToken));
163 } 163 }
164 } 164 }
165 } 165 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698