| OLD | NEW |
| 1 // Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2017, 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 import '../common.dart'; | 5 import '../common.dart'; |
| 6 import '../common/names.dart'; | 6 import '../common/names.dart'; |
| 7 import '../compiler.dart'; | 7 import '../compiler.dart'; |
| 8 import '../constants/expressions.dart'; | 8 import '../constants/expressions.dart'; |
| 9 import '../constants/values.dart'; | 9 import '../constants/values.dart'; |
| 10 import '../elements/elements.dart'; | 10 import '../elements/elements.dart'; |
| 11 import '../elements/entities.dart'; | 11 import '../elements/entities.dart'; |
| 12 import '../resolution/tree_elements.dart'; | 12 import '../resolution/tree_elements.dart'; |
| 13 import '../tree/nodes.dart' as ast; | 13 import '../tree/nodes.dart' as ast; |
| 14 import '../types/types.dart'; | 14 import '../types/types.dart'; |
| 15 import '../world.dart'; | 15 import '../world.dart'; |
| 16 import 'builder.dart'; | 16 import 'builder.dart'; |
| 17 import 'inferrer_engine.dart'; | 17 import 'inferrer_engine.dart'; |
| 18 import 'type_graph_nodes.dart'; | 18 import 'type_graph_nodes.dart'; |
| 19 import 'type_system.dart'; | 19 import 'type_system.dart'; |
| 20 | 20 |
| 21 class AstInferrerEngine extends InferrerEngineImpl<ast.Node> { | 21 class AstInferrerEngine extends InferrerEngineImpl<ast.Node> { |
| 22 AstInferrerEngine(Compiler compiler, ClosedWorld closedWorld, | 22 final Compiler compiler; |
| 23 |
| 24 AstInferrerEngine(this.compiler, ClosedWorld closedWorld, |
| 23 ClosedWorldRefiner closedWorldRefiner, FunctionEntity mainElement) | 25 ClosedWorldRefiner closedWorldRefiner, FunctionEntity mainElement) |
| 24 : super(compiler, closedWorld, closedWorldRefiner, mainElement, | 26 : super( |
| 27 compiler.options, |
| 28 compiler.progress, |
| 29 compiler.reporter, |
| 30 compiler.outputProvider, |
| 31 compiler.backend.optimizerHints, |
| 32 closedWorld, |
| 33 closedWorldRefiner, |
| 34 compiler.backend.mirrorsData, |
| 35 compiler.backend.noSuchMethodRegistry, |
| 36 mainElement, |
| 25 const TypeSystemStrategyImpl()); | 37 const TypeSystemStrategyImpl()); |
| 26 | 38 |
| 27 GlobalTypeInferenceElementData<ast.Node> createElementData() => | 39 GlobalTypeInferenceElementData<ast.Node> createElementData() => |
| 28 new AstGlobalTypeInferenceElementData(); | 40 new AstGlobalTypeInferenceElementData(); |
| 29 | 41 |
| 30 int computeMemberSize(MemberEntity member) => resolveAstApproxSize(member); | 42 int computeMemberSize(MemberEntity member) => resolveAstApproxSize(member); |
| 31 | 43 |
| 32 ast.Node computeMemberBody(covariant MemberElement member) { | 44 ast.Node computeMemberBody(covariant MemberElement member) { |
| 33 ResolvedAst resolvedAst = member.resolvedAst; | 45 ResolvedAst resolvedAst = member.resolvedAst; |
| 34 ast.Node body; | 46 ast.Node body; |
| (...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 192 @override | 204 @override |
| 193 bool checkPhiNode(ast.Node node) { | 205 bool checkPhiNode(ast.Node node) { |
| 194 return true; | 206 return true; |
| 195 } | 207 } |
| 196 | 208 |
| 197 @override | 209 @override |
| 198 bool checkClassEntity(covariant ClassElement cls) { | 210 bool checkClassEntity(covariant ClassElement cls) { |
| 199 return cls.isDeclaration; | 211 return cls.isDeclaration; |
| 200 } | 212 } |
| 201 } | 213 } |
| OLD | NEW |