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

Side by Side Diff: pkg/compiler/lib/src/ssa/kernel_ast_adapter.dart

Issue 2920253004: Revert "Revert "Make ClosureTask only accept Element-level APIs instead of resolvedAst."" (Closed)
Patch Set: fix teh tests Created 3 years, 6 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) 2016, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2016, 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 'package:js_runtime/shared/embedded_names.dart'; 5 import 'package:js_runtime/shared/embedded_names.dart';
6 import 'package:kernel/ast.dart' as ir; 6 import 'package:kernel/ast.dart' as ir;
7 7
8 import '../closure.dart'; 8 import '../closure.dart';
9 import '../common.dart'; 9 import '../common.dart';
10 import '../compiler.dart'; 10 import '../compiler.dart';
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
109 if (originTarget is MethodElement) { 109 if (originTarget is MethodElement) {
110 if (originTarget is ConstructorBodyElement) { 110 if (originTarget is ConstructorBodyElement) {
111 ConstructorBodyElement body = originTarget; 111 ConstructorBodyElement body = originTarget;
112 originTarget = body.constructor; 112 originTarget = body.constructor;
113 } 113 }
114 target = kernel.functions[originTarget]; 114 target = kernel.functions[originTarget];
115 // Closures require a lookup one level deeper in the closure class mapper. 115 // Closures require a lookup one level deeper in the closure class mapper.
116 if (target == null) { 116 if (target == null) {
117 MethodElement originTargetFunction = originTarget; 117 MethodElement originTargetFunction = originTarget;
118 ClosureClassMap classMap = _compiler.closureToClassMapper 118 ClosureClassMap classMap = _compiler.closureToClassMapper
119 .getClosureToClassMapping(originTargetFunction.resolvedAst); 119 .getClosureToClassMapping(originTargetFunction);
120 if (classMap.closureElement != null) { 120 if (classMap.closureElement != null) {
121 target = kernel.localFunctions[classMap.closureElement]; 121 target = kernel.localFunctions[classMap.closureElement];
122 } 122 }
123 } 123 }
124 } else if (originTarget is FieldElement) { 124 } else if (originTarget is FieldElement) {
125 target = kernel.fields[originTarget]; 125 target = kernel.fields[originTarget];
126 } 126 }
127 assert(target != null); 127 assert(target != null);
128 return target; 128 return target;
129 } 129 }
(...skipping 502 matching lines...) Expand 10 before | Expand all | Expand 10 after
632 TypeMask selectorTypeOf(Selector selector, TypeMask mask) { 632 TypeMask selectorTypeOf(Selector selector, TypeMask mask) {
633 return TypeMaskFactory.inferredTypeForSelector( 633 return TypeMaskFactory.inferredTypeForSelector(
634 selector, mask, _globalInferenceResults); 634 selector, mask, _globalInferenceResults);
635 } 635 }
636 636
637 TypeMask typeFromNativeBehavior( 637 TypeMask typeFromNativeBehavior(
638 native.NativeBehavior nativeBehavior, ClosedWorld closedWorld) { 638 native.NativeBehavior nativeBehavior, ClosedWorld closedWorld) {
639 return TypeMaskFactory.fromNativeBehavior(nativeBehavior, closedWorld); 639 return TypeMaskFactory.fromNativeBehavior(nativeBehavior, closedWorld);
640 } 640 }
641 } 641 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698