| 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 /// Implementation of the element model used for deserialiation. | 5 /// Implementation of the element model used for deserialiation. |
| 6 /// | 6 /// |
| 7 /// These classes are created by [ElementDeserializer] triggered by the | 7 /// These classes are created by [ElementDeserializer] triggered by the |
| 8 /// [Deserializer]. | 8 /// [Deserializer]. |
| 9 | 9 |
| 10 library dart2js.serialization.modelz; | 10 library dart2js.serialization.modelz; |
| (...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 73 | 73 |
| 74 @override | 74 @override |
| 75 Scope buildScope() => _unsupported('analyzableElement'); | 75 Scope buildScope() => _unsupported('analyzableElement'); |
| 76 | 76 |
| 77 @override | 77 @override |
| 78 CompilationUnitElement get compilationUnit { | 78 CompilationUnitElement get compilationUnit { |
| 79 return _unsupported('compilationUnit'); | 79 return _unsupported('compilationUnit'); |
| 80 } | 80 } |
| 81 | 81 |
| 82 @override | 82 @override |
| 83 ClassElement get contextClass => _unsupported('contextClass'); | |
| 84 | |
| 85 @override | |
| 86 ClassElement get enclosingClass => null; | 83 ClassElement get enclosingClass => null; |
| 87 | 84 |
| 88 @override | 85 @override |
| 89 Element get enclosingClassOrCompilationUnit { | 86 Element get enclosingClassOrCompilationUnit { |
| 90 return _unsupported('enclosingClassOrCompilationUnit'); | 87 return _unsupported('enclosingClassOrCompilationUnit'); |
| 91 } | 88 } |
| 92 | 89 |
| 93 @override | 90 @override |
| 94 LibraryElement get implementationLibrary => library; | 91 LibraryElement get implementationLibrary => library; |
| 95 | 92 |
| (...skipping 427 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 523 CompilationUnitElementZ(ObjectDecoder decoder) | 520 CompilationUnitElementZ(ObjectDecoder decoder) |
| 524 : super(decoder); | 521 : super(decoder); |
| 525 | 522 |
| 526 @override | 523 @override |
| 527 ElementKind get kind => ElementKind.COMPILATION_UNIT; | 524 ElementKind get kind => ElementKind.COMPILATION_UNIT; |
| 528 | 525 |
| 529 @override | 526 @override |
| 530 CompilationUnitElement get compilationUnit => this; | 527 CompilationUnitElement get compilationUnit => this; |
| 531 | 528 |
| 532 @override | 529 @override |
| 530 Element get enclosingElement => library; |
| 531 |
| 532 @override |
| 533 accept(ElementVisitor visitor, arg) { | 533 accept(ElementVisitor visitor, arg) { |
| 534 return visitor.visitCompilationUnitElement(this, arg); | 534 return visitor.visitCompilationUnitElement(this, arg); |
| 535 } | 535 } |
| 536 | 536 |
| 537 @override | 537 @override |
| 538 void forEachLocalMember(f(Element element)) { | 538 void forEachLocalMember(f(Element element)) { |
| 539 if (_members == null) { | 539 if (_members == null) { |
| 540 _members = | 540 _members = |
| 541 _decoder.getElements(Key.ELEMENTS, isOptional: true); | 541 _decoder.getElements(Key.ELEMENTS, isOptional: true); |
| 542 } | 542 } |
| (...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 716 if (_parameters == null) { | 716 if (_parameters == null) { |
| 717 _parameters = _decoder.getElements(Key.PARAMETERS, isOptional: true); | 717 _parameters = _decoder.getElements(Key.PARAMETERS, isOptional: true); |
| 718 } | 718 } |
| 719 return _parameters; | 719 return _parameters; |
| 720 } | 720 } |
| 721 } | 721 } |
| 722 | 722 |
| 723 abstract class FunctionTypedElementMixin | 723 abstract class FunctionTypedElementMixin |
| 724 implements FunctionElement, DeserializedElementZ { | 724 implements FunctionElement, DeserializedElementZ { |
| 725 @override | 725 @override |
| 726 AsyncMarker get asyncMarker => _unsupported(''); | 726 AsyncMarker get asyncMarker => _unsupported('asyncMarker'); |
| 727 | |
| 728 @override | |
| 729 bool get isExternal => _unsupported(''); | |
| 730 | 727 |
| 731 @override | 728 @override |
| 732 FunctionElement asFunctionElement() => this; | 729 FunctionElement asFunctionElement() => this; |
| 730 |
| 731 @override |
| 732 bool get isExternal { |
| 733 return _decoder.getBool( |
| 734 Key.IS_EXTERNAL, isOptional: true, defaultValue: false); |
| 735 } |
| 733 } | 736 } |
| 734 | 737 |
| 735 class ClassElementZ extends DeserializedElementZ | 738 class ClassElementZ extends DeserializedElementZ |
| 736 with AnalyzableElementMixin, | 739 with AnalyzableElementMixin, |
| 737 AstElementMixin, | 740 AstElementMixin, |
| 738 ClassElementCommon, | 741 ClassElementCommon, |
| 739 class_members.ClassMemberMixin, | 742 class_members.ClassMemberMixin, |
| 740 ContainerMixin, | 743 ContainerMixin, |
| 741 LibraryMemberMixin, | 744 LibraryMemberMixin, |
| 742 TypeDeclarationMixin<InterfaceType> | 745 TypeDeclarationMixin<InterfaceType> |
| (...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 847 } | 850 } |
| 848 | 851 |
| 849 @override | 852 @override |
| 850 bool get isEnumClass => false; | 853 bool get isEnumClass => false; |
| 851 | 854 |
| 852 @override | 855 @override |
| 853 bool get isProxy => _unsupported('isProxy'); | 856 bool get isProxy => _unsupported('isProxy'); |
| 854 | 857 |
| 855 @override | 858 @override |
| 856 bool get isUnnamedMixinApplication { | 859 bool get isUnnamedMixinApplication { |
| 857 return _unsupported('isUnnamedMixinApplication'); | 860 return _decoder.getBool(Key.IS_UNNAMED_MIXIN_APPLICATION, |
| 861 isOptional: true, defaultValue: false); |
| 858 } | 862 } |
| 859 | 863 |
| 860 @override | 864 @override |
| 861 Element lookupBackendMember(String memberName) { | 865 Element lookupBackendMember(String memberName) { |
| 862 return _unsupported('lookupBackendMember'); | 866 return _unsupported('lookupBackendMember'); |
| 863 } | 867 } |
| 864 | 868 |
| 865 @override | 869 @override |
| 866 ConstructorElement lookupDefaultConstructor() { | 870 ConstructorElement lookupDefaultConstructor() { |
| 867 ConstructorElement constructor = lookupConstructor(""); | 871 ConstructorElement constructor = lookupConstructor(""); |
| 868 if (constructor != null && constructor.parameters.isEmpty) { | 872 if (constructor != null && constructor.parameters.isEmpty) { |
| 869 return constructor; | 873 return constructor; |
| 870 } | 874 } |
| 871 return null; | 875 return null; |
| 872 } | 876 } |
| 873 | 877 |
| 874 @override | 878 @override |
| 875 void reverseBackendMembers() => _unsupported('reverseBackendMembers'); | 879 void reverseBackendMembers() => _unsupported('reverseBackendMembers'); |
| 876 | 880 |
| 877 @override | 881 @override |
| 878 ClassElement get superclass => supertype != null ? supertype.element : null; | 882 ClassElement get superclass => supertype != null ? supertype.element : null; |
| 879 | 883 |
| 880 @override | 884 @override |
| 881 void ensureResolved(Resolution resolution) { | 885 void ensureResolved(Resolution resolution) { |
| 882 resolution.registerClass(this); | 886 resolution.registerClass(this); |
| 883 } | 887 } |
| 884 } | 888 } |
| 885 | 889 |
| 890 |
| 891 class EnumClassElementZ extends ClassElementZ implements EnumClassElement { |
| 892 List<FieldElement> _enumValues; |
| 893 |
| 894 EnumClassElementZ(ObjectDecoder decoder) |
| 895 : super(decoder); |
| 896 |
| 897 @override |
| 898 bool get isEnumClass => true; |
| 899 |
| 900 @override |
| 901 List<FieldElement> get enumValues { |
| 902 if (_enumValues == null) { |
| 903 _enumValues = _decoder.getElements(Key.FIELDS); |
| 904 } |
| 905 return _enumValues; |
| 906 } |
| 907 } |
| 908 |
| 886 abstract class ConstructorElementZ extends DeserializedElementZ | 909 abstract class ConstructorElementZ extends DeserializedElementZ |
| 887 with AnalyzableElementMixin, | 910 with AnalyzableElementMixin, |
| 888 AstElementMixin, | 911 AstElementMixin, |
| 889 ClassMemberMixin, | 912 ClassMemberMixin, |
| 890 FunctionTypedElementMixin, | 913 FunctionTypedElementMixin, |
| 891 ParametersMixin, | 914 ParametersMixin, |
| 892 TypedElementMixin, | 915 TypedElementMixin, |
| 893 MemberElementMixin | 916 MemberElementMixin |
| 894 implements ConstructorElement { | 917 implements ConstructorElement { |
| 895 ConstantConstructor _constantConstructor; | 918 ConstantConstructor _constantConstructor; |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 945 ConstructorElement get effectiveTarget { | 968 ConstructorElement get effectiveTarget { |
| 946 return _unsupported('effectiveTarget'); | 969 return _unsupported('effectiveTarget'); |
| 947 } | 970 } |
| 948 | 971 |
| 949 @override | 972 @override |
| 950 ConstructorElement get immediateRedirectionTarget { | 973 ConstructorElement get immediateRedirectionTarget { |
| 951 return _unsupported('immediateRedirectionTarget'); | 974 return _unsupported('immediateRedirectionTarget'); |
| 952 } | 975 } |
| 953 | 976 |
| 954 @override | 977 @override |
| 978 bool get isEffectiveTargetMalformed { |
| 979 return _unsupported('isEffectiveTargetMalformed'); |
| 980 } |
| 981 |
| 982 @override |
| 955 bool get isRedirectingFactory => _unsupported('isRedirectingFactory'); | 983 bool get isRedirectingFactory => _unsupported('isRedirectingFactory'); |
| 956 | 984 |
| 957 @override | 985 @override |
| 958 bool get isRedirectingGenerative => _unsupported('isRedirectingGenerative'); | 986 bool get isRedirectingGenerative => _unsupported('isRedirectingGenerative'); |
| 959 | 987 |
| 960 @override | 988 @override |
| 961 bool get isCyclicRedirection => _unsupported('isCyclicRedirection'); | 989 bool get isCyclicRedirection => _unsupported('isCyclicRedirection'); |
| 962 | 990 |
| 963 @override | 991 @override |
| 964 PrefixElement get redirectionDeferredPrefix { | 992 PrefixElement get redirectionDeferredPrefix { |
| (...skipping 586 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1551 } | 1579 } |
| 1552 | 1580 |
| 1553 @override | 1581 @override |
| 1554 ElementKind get kind => ElementKind.PREFIX; | 1582 ElementKind get kind => ElementKind.PREFIX; |
| 1555 | 1583 |
| 1556 @override | 1584 @override |
| 1557 Element lookupLocalMember(String memberName) { | 1585 Element lookupLocalMember(String memberName) { |
| 1558 return _unsupported('lookupLocalMember'); | 1586 return _unsupported('lookupLocalMember'); |
| 1559 } | 1587 } |
| 1560 } | 1588 } |
| OLD | NEW |