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

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

Issue 2841213002: dart2js-kernel: Bind type variables in generative constructor. (Closed)
Patch Set: Created 3 years, 7 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 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
126 _resolvedAstStack.add(_resolvedAst); 126 _resolvedAstStack.add(_resolvedAst);
127 _resolvedAst = (getElement(node) as AstElement).resolvedAst; 127 _resolvedAst = (getElement(node) as AstElement).resolvedAst;
128 } 128 }
129 129
130 /// Pop the resolved AST stack to reset it to the previous resolved AST node. 130 /// Pop the resolved AST stack to reset it to the previous resolved AST node.
131 void popResolvedAstStack() { 131 void popResolvedAstStack() {
132 assert(_resolvedAstStack.isNotEmpty); 132 assert(_resolvedAstStack.isNotEmpty);
133 _resolvedAst = _resolvedAstStack.removeLast(); 133 _resolvedAst = _resolvedAstStack.removeLast();
134 } 134 }
135 135
136 void assertAtResolvedAstFor(ir.Node node) {
137 assert(invariant(getElement(node),
138 _resolvedAst.element == getElement(node).declaration));
139 }
140
136 Compiler get _compiler => _backend.compiler; 141 Compiler get _compiler => _backend.compiler;
137 TreeElements get elements => _resolvedAst.elements; 142 TreeElements get elements => _resolvedAst.elements;
138 DiagnosticReporter get reporter => _compiler.reporter; 143 DiagnosticReporter get reporter => _compiler.reporter;
139 MemberElement get _target => _resolvedAst.element; 144 MemberElement get _target => _resolvedAst.element;
140 145
141 GlobalTypeInferenceResults get _globalInferenceResults => 146 GlobalTypeInferenceResults get _globalInferenceResults =>
142 _compiler.globalInference.results; 147 _compiler.globalInference.results;
143 148
144 GlobalTypeInferenceElementResult _resultOf(MemberElement e) => 149 GlobalTypeInferenceElementResult _resultOf(MemberElement e) =>
145 _globalInferenceResults 150 _globalInferenceResults
(...skipping 676 matching lines...) Expand 10 before | Expand all | Expand 10 after
822 JumpTarget continueTarget = 827 JumpTarget continueTarget =
823 astAdapter.getJumpTarget(switchCase, isContinueTarget: true); 828 astAdapter.getJumpTarget(switchCase, isContinueTarget: true);
824 assert(continueTarget is KernelJumpTarget); 829 assert(continueTarget is KernelJumpTarget);
825 targetIndexMap[continueTarget] = switchIndex; 830 targetIndexMap[continueTarget] = switchIndex;
826 assert(builder.jumpTargets[continueTarget] == null); 831 assert(builder.jumpTargets[continueTarget] == null);
827 builder.jumpTargets[continueTarget] = this; 832 builder.jumpTargets[continueTarget] = this;
828 switchIndex++; 833 switchIndex++;
829 } 834 }
830 } 835 }
831 } 836 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698