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

Side by Side Diff: pkg/compiler/lib/src/typechecker.dart

Issue 1146813009: Introduce WorldImpact (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Rebased Created 5 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) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, 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 part of dart2js; 5 part of dart2js;
6 6
7 class TypeCheckerTask extends CompilerTask { 7 class TypeCheckerTask extends CompilerTask {
8 TypeCheckerTask(Compiler compiler) : super(compiler); 8 TypeCheckerTask(Compiler compiler) : super(compiler);
9 String get name => "Type checker"; 9 String get name => "Type checker";
10 10
11 void check(TreeElements elements) { 11 void check(AstElement element) {
12 AstElement element = elements.analyzedElement; 12 if (element.isClass) return;
13 if (element.isTypedef) return; 13 if (element.isTypedef) return;
14 14 ResolvedAst resolvedAst = element.resolvedAst;
15 compiler.withCurrentElement(element, () { 15 compiler.withCurrentElement(element, () {
16 measure(() { 16 measure(() {
17 Node tree = element.node; 17 TypeCheckerVisitor visitor = new TypeCheckerVisitor(
18 TypeCheckerVisitor visitor = 18 compiler, resolvedAst.elements, compiler.types);
19 new TypeCheckerVisitor(compiler, elements, compiler.types);
20 if (element.isField) { 19 if (element.isField) {
21 visitor.analyzingInitializer = true; 20 visitor.analyzingInitializer = true;
22 } 21 }
23 tree.accept(visitor); 22 resolvedAst.node.accept(visitor);
24 }); 23 });
25 }); 24 });
26 } 25 }
27 } 26 }
28 27
29 /** 28 /**
30 * Class used to report different warnings for differrent kinds of members. 29 * Class used to report different warnings for differrent kinds of members.
31 */ 30 */
32 class MemberKind { 31 class MemberKind {
33 static const MemberKind METHOD = const MemberKind("method"); 32 static const MemberKind METHOD = const MemberKind("method");
(...skipping 1829 matching lines...) Expand 10 before | Expand all | Expand 10 after
1863 1862
1864 visitTypedef(Typedef node) { 1863 visitTypedef(Typedef node) {
1865 // Do not typecheck [Typedef] nodes. 1864 // Do not typecheck [Typedef] nodes.
1866 } 1865 }
1867 1866
1868 visitNode(Node node) { 1867 visitNode(Node node) {
1869 compiler.internalError(node, 1868 compiler.internalError(node,
1870 'Unexpected node ${node.getObjectDescription()} in the type checker.'); 1869 'Unexpected node ${node.getObjectDescription()} in the type checker.');
1871 } 1870 }
1872 } 1871 }
OLDNEW
« no previous file with comments | « pkg/compiler/lib/src/resolution/resolution_common.dart ('k') | pkg/compiler/lib/src/types/type_mask.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698