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

Side by Side Diff: pkg/analyzer/lib/src/generated/incremental_resolver.dart

Issue 2329463003: Remove unused instance field (Closed)
Patch Set: Created 4 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 unified diff | Download patch
« no previous file with comments | « no previous file | pkg/analyzer/lib/src/task/dart.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2014, 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 analyzer.src.generated.incremental_resolver; 5 library analyzer.src.generated.incremental_resolver;
6 6
7 import 'dart:collection'; 7 import 'dart:collection';
8 import 'dart:math' as math; 8 import 'dart:math' as math;
9 9
10 import 'package:analyzer/dart/ast/ast.dart'; 10 import 'package:analyzer/dart/ast/ast.dart';
(...skipping 313 matching lines...) Expand 10 before | Expand all | Expand 10 after
324 node is MethodDeclaration) { 324 node is MethodDeclaration) {
325 return node; 325 return node;
326 } 326 }
327 node = node.parent; 327 node = node.parent;
328 } 328 }
329 throw new AnalysisException("Cannot resolve node: no resolvable node"); 329 throw new AnalysisException("Cannot resolve node: no resolvable node");
330 } 330 }
331 331
332 void _prepareResolutionContext(AstNode node) { 332 void _prepareResolutionContext(AstNode node) {
333 if (_resolutionContext == null) { 333 if (_resolutionContext == null) {
334 _resolutionContext = 334 _resolutionContext = ResolutionContextBuilder.contextFor(node);
335 ResolutionContextBuilder.contextFor(node, errorListener);
336 } 335 }
337 } 336 }
338 337
339 _resolveReferences(AstNode node) { 338 _resolveReferences(AstNode node) {
340 LoggingTimer timer = logger.startTimer(); 339 LoggingTimer timer = logger.startTimer();
341 try { 340 try {
342 _prepareResolutionContext(node); 341 _prepareResolutionContext(node);
343 Scope scope = _resolutionContext.scope; 342 Scope scope = _resolutionContext.scope;
344 // resolve types 343 // resolve types
345 { 344 {
(...skipping 701 matching lines...) Expand 10 before | Expand all | Expand 10 after
1047 Scope scope; 1046 Scope scope;
1048 } 1047 }
1049 1048
1050 /** 1049 /**
1051 * Instances of the class [ResolutionContextBuilder] build the context for a 1050 * Instances of the class [ResolutionContextBuilder] build the context for a
1052 * given node in an AST structure. At the moment, this class only handles 1051 * given node in an AST structure. At the moment, this class only handles
1053 * top-level and class-level declarations. 1052 * top-level and class-level declarations.
1054 */ 1053 */
1055 class ResolutionContextBuilder { 1054 class ResolutionContextBuilder {
1056 /** 1055 /**
1057 * The listener to which analysis errors will be reported.
1058 */
1059 final AnalysisErrorListener _errorListener;
1060
1061 /**
1062 * The class containing the enclosing [CompilationUnitElement]. 1056 * The class containing the enclosing [CompilationUnitElement].
1063 */ 1057 */
1064 CompilationUnitElement _enclosingUnit; 1058 CompilationUnitElement _enclosingUnit;
1065 1059
1066 /** 1060 /**
1067 * The class containing the enclosing [ClassDeclaration], or `null` if we are 1061 * The class containing the enclosing [ClassDeclaration], or `null` if we are
1068 * not in the scope of a class. 1062 * not in the scope of a class.
1069 */ 1063 */
1070 ClassDeclaration _enclosingClassDeclaration; 1064 ClassDeclaration _enclosingClassDeclaration;
1071 1065
1072 /** 1066 /**
1073 * The class containing the enclosing [ClassElement], or `null` if we are not 1067 * The class containing the enclosing [ClassElement], or `null` if we are not
1074 * in the scope of a class. 1068 * in the scope of a class.
1075 */ 1069 */
1076 ClassElement _enclosingClass; 1070 ClassElement _enclosingClass;
1077 1071
1078 /** 1072 /**
1079 * Initialize a newly created scope builder to generate a scope that will 1073 * Initialize a newly created scope builder to generate a scope that will
1080 * report errors to the given listener. 1074 * report errors to the given listener.
1081 */ 1075 */
1082 ResolutionContextBuilder(this._errorListener); 1076 ResolutionContextBuilder();
scheglov 2016/09/09 16:06:53 The documentation is not accurate anymore. And pro
Brian Wilkerson 2016/09/09 16:16:56 Done
1083 1077
1084 Scope _scopeFor(AstNode node) { 1078 Scope _scopeFor(AstNode node) {
1085 if (node is CompilationUnit) { 1079 if (node is CompilationUnit) {
1086 return _scopeForAstNode(node); 1080 return _scopeForAstNode(node);
1087 } 1081 }
1088 AstNode parent = node.parent; 1082 AstNode parent = node.parent;
1089 if (parent == null) { 1083 if (parent == null) {
1090 throw new AnalysisException( 1084 throw new AnalysisException(
1091 "Cannot create scope: node is not part of a CompilationUnit"); 1085 "Cannot create scope: node is not part of a CompilationUnit");
1092 } 1086 }
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
1174 throw new AnalysisException( 1168 throw new AnalysisException(
1175 "Cannot create scope: compilation unit is not part of a library"); 1169 "Cannot create scope: compilation unit is not part of a library");
1176 } 1170 }
1177 return new LibraryScope(libraryElement); 1171 return new LibraryScope(libraryElement);
1178 } 1172 }
1179 1173
1180 /** 1174 /**
1181 * Return the context in which the given AST structure should be resolved. 1175 * Return the context in which the given AST structure should be resolved.
1182 * 1176 *
1183 * [node] - the root of the AST structure to be resolved. 1177 * [node] - the root of the AST structure to be resolved.
1184 * [errorListener] - the listener to which analysis errors will be reported. 1178 * [errorListener] - the listener to which analysis errors will be reported.
scheglov 2016/09/09 16:06:53 This line can be removed.
Brian Wilkerson 2016/09/09 16:16:56 Done
1185 * 1179 *
1186 * Throws [AnalysisException] if the AST structure has not been resolved or 1180 * Throws [AnalysisException] if the AST structure has not been resolved or
1187 * is not part of a [CompilationUnit] 1181 * is not part of a [CompilationUnit]
1188 */ 1182 */
1189 static ResolutionContext contextFor( 1183 static ResolutionContext contextFor(AstNode node) {
1190 AstNode node, AnalysisErrorListener errorListener) {
1191 if (node == null) { 1184 if (node == null) {
1192 throw new AnalysisException("Cannot create context: node is null"); 1185 throw new AnalysisException("Cannot create context: node is null");
1193 } 1186 }
1194 // build scope 1187 // build scope
1195 ResolutionContextBuilder builder = 1188 ResolutionContextBuilder builder = new ResolutionContextBuilder();
1196 new ResolutionContextBuilder(errorListener);
1197 Scope scope = builder._scopeFor(node); 1189 Scope scope = builder._scopeFor(node);
1198 // prepare context 1190 // prepare context
1199 ResolutionContext context = new ResolutionContext(); 1191 ResolutionContext context = new ResolutionContext();
1200 context.scope = scope; 1192 context.scope = scope;
1201 context.enclosingUnit = builder._enclosingUnit; 1193 context.enclosingUnit = builder._enclosingUnit;
1202 context.enclosingClassDeclaration = builder._enclosingClassDeclaration; 1194 context.enclosingClassDeclaration = builder._enclosingClassDeclaration;
1203 context.enclosingClass = builder._enclosingClass; 1195 context.enclosingClass = builder._enclosingClass;
1204 return context; 1196 return context;
1205 } 1197 }
1206 } 1198 }
(...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after
1319 @override 1311 @override
1320 String toString() => name; 1312 String toString() => name;
1321 } 1313 }
1322 1314
1323 class _TokenPair { 1315 class _TokenPair {
1324 final _TokenDifferenceKind kind; 1316 final _TokenDifferenceKind kind;
1325 final Token oldToken; 1317 final Token oldToken;
1326 final Token newToken; 1318 final Token newToken;
1327 _TokenPair(this.kind, this.oldToken, this.newToken); 1319 _TokenPair(this.kind, this.oldToken, this.newToken);
1328 } 1320 }
OLDNEW
« no previous file with comments | « no previous file | pkg/analyzer/lib/src/task/dart.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698