| Index: pkg/compiler/lib/src/serialization/modelz.dart
|
| diff --git a/pkg/compiler/lib/src/serialization/modelz.dart b/pkg/compiler/lib/src/serialization/modelz.dart
|
| index 23153bf5cf2050ef1146d2c907cc4a7b25dd1eed..91492e2e7f22b50ffa624337f151e403234d3092 100644
|
| --- a/pkg/compiler/lib/src/serialization/modelz.dart
|
| +++ b/pkg/compiler/lib/src/serialization/modelz.dart
|
| @@ -80,9 +80,6 @@ abstract class ElementZ extends Element with ElementCommon {
|
| }
|
|
|
| @override
|
| - ClassElement get contextClass => _unsupported('contextClass');
|
| -
|
| - @override
|
| ClassElement get enclosingClass => null;
|
|
|
| @override
|
| @@ -91,9 +88,6 @@ abstract class ElementZ extends Element with ElementCommon {
|
| }
|
|
|
| @override
|
| - String get fixedBackendName => _unsupported('fixedBackendName');
|
| -
|
| - @override
|
| LibraryElement get implementationLibrary => library;
|
|
|
| @override
|
| @@ -533,6 +527,9 @@ class CompilationUnitElementZ extends DeserializedElementZ
|
| CompilationUnitElement get compilationUnit => this;
|
|
|
| @override
|
| + Element get enclosingElement => library;
|
| +
|
| + @override
|
| accept(ElementVisitor visitor, arg) {
|
| return visitor.visitCompilationUnitElement(this, arg);
|
| }
|
| @@ -726,13 +723,16 @@ abstract class ParametersMixin
|
| abstract class FunctionTypedElementMixin
|
| implements FunctionElement, DeserializedElementZ {
|
| @override
|
| - AsyncMarker get asyncMarker => _unsupported('');
|
| + AsyncMarker get asyncMarker => _unsupported('asyncMarker');
|
|
|
| @override
|
| - bool get isExternal => _unsupported('');
|
| + FunctionElement asFunctionElement() => this;
|
|
|
| @override
|
| - FunctionElement asFunctionElement() => this;
|
| + bool get isExternal {
|
| + return _decoder.getBool(
|
| + Key.IS_EXTERNAL, isOptional: true, defaultValue: false);
|
| + }
|
| }
|
|
|
| class ClassElementZ extends DeserializedElementZ
|
| @@ -886,6 +886,25 @@ class ClassElementZ extends DeserializedElementZ
|
| }
|
| }
|
|
|
| +
|
| +class EnumClassElementZ extends ClassElementZ implements EnumClassElement {
|
| + List<FieldElement> _enumValues;
|
| +
|
| + EnumClassElementZ(ObjectDecoder decoder)
|
| + : super(decoder);
|
| +
|
| + @override
|
| + bool get isEnumClass => true;
|
| +
|
| + @override
|
| + List<FieldElement> get enumValues {
|
| + if (_enumValues == null) {
|
| + _enumValues = _decoder.getElements(Key.FIELDS);
|
| + }
|
| + return _enumValues;
|
| + }
|
| +}
|
| +
|
| abstract class ConstructorElementZ extends DeserializedElementZ
|
| with AnalyzableElementMixin,
|
| AstElementMixin,
|
| @@ -955,6 +974,11 @@ abstract class ConstructorElementZ extends DeserializedElementZ
|
| }
|
|
|
| @override
|
| + bool get isEffectiveTargetMalformed {
|
| + return _unsupported('isEffectiveTargetMalformed');
|
| + }
|
| +
|
| + @override
|
| bool get isRedirectingFactory => _unsupported('isRedirectingFactory');
|
|
|
| @override
|
|
|