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

Side by Side Diff: sdk/lib/_internal/compiler/implementation/elements/elements.dart

Issue 98533005: Handle @proxy classes in type checker. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Rebased Created 7 years 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 | Annotate | Revision Log
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 library elements; 5 library elements;
6 6
7 7
8 import '../tree/tree.dart'; 8 import '../tree/tree.dart';
9 import '../util/util.dart'; 9 import '../util/util.dart';
10 import '../resolution/resolution.dart'; 10 import '../resolution/resolution.dart';
(...skipping 869 matching lines...) Expand 10 before | Expand all | Expand 10 after
880 void set origin(ClassElement value); 880 void set origin(ClassElement value);
881 void set supertypeLoadState(int value); 881 void set supertypeLoadState(int value);
882 void set resolutionState(int value); 882 void set resolutionState(int value);
883 void set nativeTagInfo(String value); 883 void set nativeTagInfo(String value);
884 884
885 bool isObject(Compiler compiler); 885 bool isObject(Compiler compiler);
886 bool isSubclassOf(ClassElement cls); 886 bool isSubclassOf(ClassElement cls);
887 bool implementsInterface(ClassElement intrface); 887 bool implementsInterface(ClassElement intrface);
888 bool hasFieldShadowedBy(Element fieldMember); 888 bool hasFieldShadowedBy(Element fieldMember);
889 889
890 /// Returns `true` if this class has a @proxy annotation.
891 bool get isProxy;
892
890 ClassElement ensureResolved(Compiler compiler); 893 ClassElement ensureResolved(Compiler compiler);
891 894
892 void addMember(Element element, DiagnosticListener listener); 895 void addMember(Element element, DiagnosticListener listener);
893 void addToScope(Element element, DiagnosticListener listener); 896 void addToScope(Element element, DiagnosticListener listener);
894 897
895 void setDefaultConstructor(FunctionElement constructor, Compiler compiler); 898 void setDefaultConstructor(FunctionElement constructor, Compiler compiler);
896 899
897 void addBackendMember(Element element); 900 void addBackendMember(Element element);
898 void reverseBackendMembers(); 901 void reverseBackendMembers();
899 902
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
983 Token get endToken; 986 Token get endToken;
984 987
985 // TODO(kasperl): Try to get rid of these. 988 // TODO(kasperl): Try to get rid of these.
986 void set annotatedElement(Element value); 989 void set annotatedElement(Element value);
987 void set resolutionState(int value); 990 void set resolutionState(int value);
988 991
989 MetadataAnnotation ensureResolved(Compiler compiler); 992 MetadataAnnotation ensureResolved(Compiler compiler);
990 } 993 }
991 994
992 abstract class VoidElement extends Element {} 995 abstract class VoidElement extends Element {}
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698