OLD | NEW |
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 related_types; | 5 library related_types; |
6 | 6 |
7 import 'package:compiler/src/commandline_options.dart'; | 7 import 'package:compiler/src/commandline_options.dart'; |
8 import 'package:compiler/src/compiler.dart'; | 8 import 'package:compiler/src/compiler.dart'; |
9 import 'package:compiler/src/core_types.dart'; | 9 import 'package:compiler/src/core_types.dart'; |
10 import 'package:compiler/src/dart_types.dart'; | 10 import 'package:compiler/src/dart_types.dart'; |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
48 checkMemberElement(compiler, member); | 48 checkMemberElement(compiler, member); |
49 }); | 49 }); |
50 } else if (!element.isTypedef) { | 50 } else if (!element.isTypedef) { |
51 checkMemberElement(compiler, element); | 51 checkMemberElement(compiler, element); |
52 } | 52 } |
53 }); | 53 }); |
54 } | 54 } |
55 | 55 |
56 /// Check [member] for unrelated types. | 56 /// Check [member] for unrelated types. |
57 void checkMemberElement(Compiler compiler, MemberElement member) { | 57 void checkMemberElement(Compiler compiler, MemberElement member) { |
58 if (!compiler.enqueuer.resolution.hasBeenResolved(member)) return; | 58 if (!compiler.resolution.hasBeenResolved(member)) return; |
59 | 59 |
60 ResolvedAst resolvedAst = member.resolvedAst; | 60 ResolvedAst resolvedAst = member.resolvedAst; |
61 RelatedTypesChecker relatedTypesChecker = | 61 RelatedTypesChecker relatedTypesChecker = |
62 new RelatedTypesChecker(compiler, resolvedAst); | 62 new RelatedTypesChecker(compiler, resolvedAst); |
63 if (resolvedAst.node != null) { | 63 if (resolvedAst.node != null) { |
64 compiler.withCurrentElement(member.implementation, () { | 64 compiler.withCurrentElement(member.implementation, () { |
65 relatedTypesChecker.apply(resolvedAst.node); | 65 relatedTypesChecker.apply(resolvedAst.node); |
66 }); | 66 }); |
67 } | 67 } |
68 } | 68 } |
(...skipping 355 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
424 ClassElement findClass(DartType type) => type.accept(this, null); | 424 ClassElement findClass(DartType type) => type.accept(this, null); |
425 | 425 |
426 @override | 426 @override |
427 ClassElement visitType(DartType type, _) => null; | 427 ClassElement visitType(DartType type, _) => null; |
428 | 428 |
429 @override | 429 @override |
430 ClassElement visitInterfaceType(InterfaceType type, _) { | 430 ClassElement visitInterfaceType(InterfaceType type, _) { |
431 return type.element; | 431 return type.element; |
432 } | 432 } |
433 } | 433 } |
OLD | NEW |