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

Side by Side Diff: pkg/compiler/lib/src/resolution/constructors.dart

Issue 2123073003: remove dependency on compiler from resolution (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: fix tests 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
OLDNEW
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, 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 dart2js.resolution.constructors; 5 library dart2js.resolution.constructors;
6 6
7 import '../common.dart'; 7 import '../common.dart';
8 import '../common/resolution.dart' show Feature; 8 import '../common/resolution.dart' show Feature, Resolution;
9 import '../compiler.dart' show Compiler;
10 import '../constants/constructors.dart' 9 import '../constants/constructors.dart'
11 show 10 show
12 GenerativeConstantConstructor, 11 GenerativeConstantConstructor,
13 RedirectingGenerativeConstantConstructor; 12 RedirectingGenerativeConstantConstructor;
14 import '../constants/expressions.dart'; 13 import '../constants/expressions.dart';
15 import '../dart_types.dart'; 14 import '../dart_types.dart';
16 import '../elements/elements.dart'; 15 import '../elements/elements.dart';
17 import '../elements/modelx.dart' 16 import '../elements/modelx.dart'
18 show 17 show
19 ConstructorElementX, 18 ConstructorElementX,
(...skipping 449 matching lines...) Expand 10 before | Expand all | Expand 10 after
469 } 468 }
470 visitor.scope = oldScope; 469 visitor.scope = oldScope;
471 return null; // If there was no redirection always return null. 470 return null; // If there was no redirection always return null.
472 } 471 }
473 } 472 }
474 473
475 class ConstructorResolver extends CommonResolverVisitor<ConstructorResult> { 474 class ConstructorResolver extends CommonResolverVisitor<ConstructorResult> {
476 final ResolverVisitor resolver; 475 final ResolverVisitor resolver;
477 final bool inConstContext; 476 final bool inConstContext;
478 477
479 ConstructorResolver(Compiler compiler, this.resolver, 478 ConstructorResolver(Resolution resolution, this.resolver,
480 {bool this.inConstContext: false}) 479 {bool this.inConstContext: false})
481 : super(compiler); 480 : super(resolution);
482 481
483 ResolutionRegistry get registry => resolver.registry; 482 ResolutionRegistry get registry => resolver.registry;
484 483
485 visitNode(Node node) { 484 visitNode(Node node) {
486 throw 'not supported'; 485 throw 'not supported';
487 } 486 }
488 487
489 ConstructorResult reportAndCreateErroneousConstructorElement( 488 ConstructorResult reportAndCreateErroneousConstructorElement(
490 Spannable diagnosticNode, 489 Spannable diagnosticNode,
491 ConstructorResultKind resultKind, 490 ConstructorResultKind resultKind,
(...skipping 396 matching lines...) Expand 10 before | Expand all | Expand 10 after
888 // constructors. 887 // constructors.
889 return null; 888 return null;
890 } 889 }
891 // TODO(johnniwinther): Use [Name] for lookup. 890 // TODO(johnniwinther): Use [Name] for lookup.
892 ConstructorElement constructor = cls.lookupConstructor(constructorName); 891 ConstructorElement constructor = cls.lookupConstructor(constructorName);
893 if (constructor != null) { 892 if (constructor != null) {
894 constructor = constructor.declaration; 893 constructor = constructor.declaration;
895 } 894 }
896 return constructor; 895 return constructor;
897 } 896 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698