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

Side by Side Diff: pkg/analyzer/lib/src/dart/constant/evaluation.dart

Issue 2154083002: Remove ConstantFinder constructor parameters. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 5 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/dart/constant/utilities.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.dart.constant.evaluation; 5 library analyzer.src.dart.constant.evaluation;
6 6
7 import 'dart:collection'; 7 import 'dart:collection';
8 8
9 import 'package:analyzer/context/declared_variables.dart'; 9 import 'package:analyzer/context/declared_variables.dart';
10 import 'package:analyzer/dart/ast/ast.dart'; 10 import 'package:analyzer/dart/ast/ast.dart';
11 import 'package:analyzer/dart/ast/token.dart'; 11 import 'package:analyzer/dart/ast/token.dart';
12 import 'package:analyzer/dart/ast/visitor.dart'; 12 import 'package:analyzer/dart/ast/visitor.dart';
13 import 'package:analyzer/dart/constant/value.dart'; 13 import 'package:analyzer/dart/constant/value.dart';
14 import 'package:analyzer/dart/element/element.dart'; 14 import 'package:analyzer/dart/element/element.dart';
15 import 'package:analyzer/dart/element/type.dart'; 15 import 'package:analyzer/dart/element/type.dart';
16 import 'package:analyzer/src/dart/constant/utilities.dart'; 16 import 'package:analyzer/src/dart/constant/utilities.dart';
17 import 'package:analyzer/src/dart/constant/value.dart'; 17 import 'package:analyzer/src/dart/constant/value.dart';
18 import 'package:analyzer/src/dart/element/element.dart'; 18 import 'package:analyzer/src/dart/element/element.dart';
19 import 'package:analyzer/src/dart/element/member.dart'; 19 import 'package:analyzer/src/dart/element/member.dart';
20 import 'package:analyzer/src/generated/engine.dart'; 20 import 'package:analyzer/src/generated/engine.dart';
21 import 'package:analyzer/src/generated/engine.dart' 21 import 'package:analyzer/src/generated/engine.dart'
22 show AnalysisEngine, RecordingErrorListener; 22 show AnalysisEngine, RecordingErrorListener;
23 import 'package:analyzer/src/generated/error.dart'; 23 import 'package:analyzer/src/generated/error.dart';
24 import 'package:analyzer/src/generated/java_core.dart'; 24 import 'package:analyzer/src/generated/java_core.dart';
25 import 'package:analyzer/src/generated/resolver.dart' show TypeProvider; 25 import 'package:analyzer/src/generated/resolver.dart' show TypeProvider;
26 import 'package:analyzer/src/generated/source.dart' show Source;
27 import 'package:analyzer/src/generated/type_system.dart' 26 import 'package:analyzer/src/generated/type_system.dart'
28 show TypeSystem, TypeSystemImpl; 27 show TypeSystem, TypeSystemImpl;
29 import 'package:analyzer/src/generated/utilities_collection.dart'; 28 import 'package:analyzer/src/generated/utilities_collection.dart';
30 import 'package:analyzer/src/generated/utilities_dart.dart' show ParameterKind; 29 import 'package:analyzer/src/generated/utilities_dart.dart' show ParameterKind;
31 import 'package:analyzer/src/task/dart.dart'; 30 import 'package:analyzer/src/task/dart.dart';
32 31
33 /** 32 /**
34 * Helper class encapsulating the methods for evaluating constants and 33 * Helper class encapsulating the methods for evaluating constants and
35 * constant instance creation expressions. 34 * constant instance creation expressions.
36 */ 35 */
(...skipping 886 matching lines...) Expand 10 before | Expand all | Expand 10 after
923 */ 922 */
924 HashSet<ConstantEvaluationTarget> _constantsToCompute = 923 HashSet<ConstantEvaluationTarget> _constantsToCompute =
925 new HashSet<ConstantEvaluationTarget>(); 924 new HashSet<ConstantEvaluationTarget>();
926 925
927 /** 926 /**
928 * The evaluation engine that does the work of evaluating instance creation 927 * The evaluation engine that does the work of evaluating instance creation
929 * expressions. 928 * expressions.
930 */ 929 */
931 final ConstantEvaluationEngine evaluationEngine; 930 final ConstantEvaluationEngine evaluationEngine;
932 931
933 final AnalysisContext _context;
934
935 /** 932 /**
936 * Initialize a newly created constant value computer. The [typeProvider] is 933 * Initialize a newly created constant value computer. The [typeProvider] is
937 * the type provider used to access known types. The [declaredVariables] is 934 * the type provider used to access known types. The [declaredVariables] is
938 * the set of variables declared on the command line using '-D'. 935 * the set of variables declared on the command line using '-D'.
939 */ 936 */
940 ConstantValueComputer(this._context, TypeProvider typeProvider, 937 ConstantValueComputer(
941 DeclaredVariables declaredVariables, 938 TypeProvider typeProvider, DeclaredVariables declaredVariables,
942 [ConstantEvaluationValidator validator, TypeSystem typeSystem]) 939 [ConstantEvaluationValidator validator, TypeSystem typeSystem])
943 : evaluationEngine = new ConstantEvaluationEngine( 940 : evaluationEngine = new ConstantEvaluationEngine(
944 typeProvider, declaredVariables, 941 typeProvider, declaredVariables,
945 validator: validator, typeSystem: typeSystem); 942 validator: validator, typeSystem: typeSystem);
946 943
947 /** 944 /**
948 * Add the constants in the given compilation [unit] to the list of constants 945 * Add the constants in the given compilation [unit] to the list of constants
949 * whose value needs to be computed. 946 * whose value needs to be computed.
950 */ 947 */
951 void add(CompilationUnit unit, Source source, Source librarySource) { 948 void add(CompilationUnit unit) {
952 ConstantFinder constantFinder = 949 ConstantFinder constantFinder = new ConstantFinder();
953 new ConstantFinder(_context, source, librarySource);
954 unit.accept(constantFinder); 950 unit.accept(constantFinder);
955 _constantsToCompute.addAll(constantFinder.constantsToCompute); 951 _constantsToCompute.addAll(constantFinder.constantsToCompute);
956 } 952 }
957 953
958 /** 954 /**
959 * Compute values for all of the constants in the compilation units that were 955 * Compute values for all of the constants in the compilation units that were
960 * added. 956 * added.
961 */ 957 */
962 void computeValues() { 958 void computeValues() {
963 for (ConstantEvaluationTarget constant in _constantsToCompute) { 959 for (ConstantEvaluationTarget constant in _constantsToCompute) {
(...skipping 1024 matching lines...) Expand 10 before | Expand all | Expand 10 after
1988 } 1984 }
1989 1985
1990 @override 1986 @override
1991 String toString() { 1987 String toString() {
1992 if (value == null) { 1988 if (value == null) {
1993 return "error"; 1989 return "error";
1994 } 1990 }
1995 return value.toString(); 1991 return value.toString();
1996 } 1992 }
1997 } 1993 }
OLDNEW
« no previous file with comments | « no previous file | pkg/analyzer/lib/src/dart/constant/utilities.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698