| OLD | NEW |
| 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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 analyzer2dart.element_converter; | 5 part of analyzer2dart.element_converter; |
| 6 | 6 |
| 7 | 7 |
| 8 /// Base [dart2js.Element] implementation for converted analyzer elements. | 8 /// Base [dart2js.Element] implementation for converted analyzer elements. |
| 9 class ElementY extends dart2js.Element { | 9 class ElementY extends dart2js.Element { |
| 10 final ElementConverter converter; | 10 final ElementConverter converter; |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 43 bool get isImplementation => false; | 43 bool get isImplementation => false; |
| 44 | 44 |
| 45 @override | 45 @override |
| 46 dart2js.LibraryElement get library { | 46 dart2js.LibraryElement get library { |
| 47 return converter.convertElement(element.library); | 47 return converter.convertElement(element.library); |
| 48 } | 48 } |
| 49 | 49 |
| 50 @override | 50 @override |
| 51 bool get isLocal => false; | 51 bool get isLocal => false; |
| 52 | 52 |
| 53 @override |
| 54 bool get isSynthesized => false; |
| 55 |
| 53 unsupported(String method) { | 56 unsupported(String method) { |
| 54 throw new UnsupportedError( | 57 throw new UnsupportedError( |
| 55 "'$method' is unsupported on $this ($runtimeType)"); | 58 "'$method' is unsupported on $this ($runtimeType)"); |
| 56 } | 59 } |
| 57 | 60 |
| 58 | 61 |
| 59 @override | 62 @override |
| 60 bool get isFinal => unsupported('isFinal'); | 63 bool get isFinal => unsupported('isFinal'); |
| 61 | 64 |
| 62 @override | 65 @override |
| (...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 145 @override | 148 @override |
| 146 bool get isInstanceMember => unsupported('isInstanceMember'); | 149 bool get isInstanceMember => unsupported('isInstanceMember'); |
| 147 | 150 |
| 148 @override | 151 @override |
| 149 bool get isMixinApplication => unsupported('isMixinApplication'); | 152 bool get isMixinApplication => unsupported('isMixinApplication'); |
| 150 | 153 |
| 151 @override | 154 @override |
| 152 bool get isNative => unsupported('isNative'); | 155 bool get isNative => unsupported('isNative'); |
| 153 | 156 |
| 154 @override | 157 @override |
| 155 bool get isSynthesized => unsupported('isSynthesized'); | |
| 156 | |
| 157 @override | |
| 158 bool get isTopLevel => unsupported('isTopLevel'); | 158 bool get isTopLevel => unsupported('isTopLevel'); |
| 159 | 159 |
| 160 @override | 160 @override |
| 161 get kind => unsupported('kind'); | 161 get kind => unsupported('kind'); |
| 162 | 162 |
| 163 @override | 163 @override |
| 164 get metadata => unsupported('metadata'); | 164 get metadata => unsupported('metadata'); |
| 165 | 165 |
| 166 @override | 166 @override |
| 167 get outermostEnclosingMemberOrTopLevel { | 167 get outermostEnclosingMemberOrTopLevel { |
| (...skipping 623 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 791 @override | 791 @override |
| 792 dart2js.ClassElement get contextClass => enclosingClass; | 792 dart2js.ClassElement get contextClass => enclosingClass; |
| 793 | 793 |
| 794 @override | 794 @override |
| 795 dart2js.ClassElement get enclosingClass { | 795 dart2js.ClassElement get enclosingClass { |
| 796 return converter.convertElement(element.enclosingElement); | 796 return converter.convertElement(element.enclosingElement); |
| 797 } | 797 } |
| 798 | 798 |
| 799 @override | 799 @override |
| 800 bool get isClassMember => true; | 800 bool get isClassMember => true; |
| 801 |
| 802 @override |
| 803 bool get isTopLevel => false; |
| 801 } | 804 } |
| 802 | 805 |
| 803 class ConstructorElementY extends ElementY | 806 class ConstructorElementY extends ElementY |
| 804 with AnalyzableElementY, | 807 with AnalyzableElementY, |
| 805 AstElementY, | 808 AstElementY, |
| 806 FunctionElementMixin, | 809 FunctionElementMixin, |
| 807 ClassMemberMixin | 810 ClassMemberMixin |
| 808 implements dart2js.ConstructorElement { | 811 implements dart2js.ConstructorElement { |
| 809 | 812 |
| 810 analyzer.ConstructorElement get element => super.element; | 813 analyzer.ConstructorElement get element => super.element; |
| 811 | 814 |
| 812 // TODO(johnniwinther): Support redirecting/factory constructors. | 815 // TODO(johnniwinther): Support redirecting/factory constructors. |
| 813 @override | 816 @override |
| 814 dart2js.ElementKind get kind => dart2js.ElementKind.GENERATIVE_CONSTRUCTOR; | 817 dart2js.ElementKind get kind => dart2js.ElementKind.GENERATIVE_CONSTRUCTOR; |
| 815 | 818 |
| 816 // TODO(johnniwinther): Support factory constructors. | 819 // TODO(johnniwinther): Support factory constructors. |
| 817 @override | 820 @override |
| 818 bool get isFactoryConstructor => false; | 821 bool get isFactoryConstructor => false; |
| 819 | 822 |
| 820 // TODO(johnniwinther): Support redirecting factory constructors. | 823 // TODO(johnniwinther): Support redirecting factory constructors. |
| 821 @override | 824 @override |
| 822 bool get isRedirectingFactory => false; | 825 bool get isRedirectingFactory => false; |
| 823 | 826 |
| 824 @override | 827 @override |
| 825 bool get isStatic => false; | 828 bool get isStatic => false; |
| 826 | 829 |
| 830 @override |
| 831 bool get isSynthesized => element.isSynthetic; |
| 832 |
| 827 ConstructorElementY(ElementConverter converter, | 833 ConstructorElementY(ElementConverter converter, |
| 828 analyzer.ConstructorElement element) | 834 analyzer.ConstructorElement element) |
| 829 : super(converter, element); | 835 : super(converter, element); |
| 830 | 836 |
| 831 @override | 837 @override |
| 832 computeEffectiveTargetType(_) => unsupported('computeEffectiveTargetType'); | 838 computeEffectiveTargetType(_) => unsupported('computeEffectiveTargetType'); |
| 833 | 839 |
| 834 @override | 840 @override |
| 835 get definingConstructor => unsupported('definingConstructor'); | 841 get definingConstructor => unsupported('definingConstructor'); |
| 836 | 842 |
| 837 @override | 843 @override |
| 838 get effectiveTarget => unsupported('effectiveTarget'); | 844 get effectiveTarget => unsupported('effectiveTarget'); |
| 839 | 845 |
| 840 @override | 846 @override |
| 841 get immediateRedirectionTarget => unsupported('immediateRedirectionTarget'); | 847 get immediateRedirectionTarget => unsupported('immediateRedirectionTarget'); |
| 842 | 848 |
| 843 @override | 849 @override |
| 844 get nestedClosures => unsupported('nestedClosures'); | 850 get nestedClosures => unsupported('nestedClosures'); |
| 845 } | 851 } |
| 852 |
| 853 class InstanceMethodElementY extends ElementY |
| 854 with AnalyzableElementY, |
| 855 AstElementY, |
| 856 FunctionElementMixin, |
| 857 ClassMemberMixin |
| 858 implements dart2js.MethodElement { |
| 859 |
| 860 analyzer.MethodElement get element => super.element; |
| 861 |
| 862 @override |
| 863 dart2js.ElementKind get kind => dart2js.ElementKind.FUNCTION; |
| 864 |
| 865 @override |
| 866 bool get isStatic => element.isStatic; |
| 867 |
| 868 @override |
| 869 bool get isAbstract => element.isAbstract; |
| 870 |
| 871 @override |
| 872 bool get isFactoryConstructor => false; |
| 873 |
| 874 @override |
| 875 bool get isInstanceMember => true; |
| 876 |
| 877 InstanceMethodElementY(ElementConverter converter, |
| 878 analyzer.MethodElement element) |
| 879 : super(converter, element); |
| 880 |
| 881 @override |
| 882 get nestedClosures => unsupported('nestedClosures'); |
| 883 } |
| OLD | NEW |