| Index: pkg/analyzer/lib/src/generated/element.dart
|
| diff --git a/pkg/analyzer/lib/src/generated/element.dart b/pkg/analyzer/lib/src/generated/element.dart
|
| index f583c376fa1bed7e71fc11f6bad29d6362e732ab..eaf6cef6f2d8986369329fd74570d106eb37de35 100644
|
| --- a/pkg/analyzer/lib/src/generated/element.dart
|
| +++ b/pkg/analyzer/lib/src/generated/element.dart
|
| @@ -178,6 +178,12 @@ abstract class ClassElement implements Element {
|
| bool get isEnum;
|
|
|
| /**
|
| + * Return `true` if this class is a mixin application. A class is a mixin
|
| + * application if it was declared using the syntax "class A = B with C;".
|
| + */
|
| + bool get isMixinApplication;
|
| +
|
| + /**
|
| * Return `true` if this class [isProxy], or if it inherits the proxy
|
| * annotation from a supertype.
|
| */
|
| @@ -660,6 +666,9 @@ class ClassElementImpl extends ElementImpl implements ClassElement {
|
| bool get isEnum => hasModifier(Modifier.ENUM);
|
|
|
| @override
|
| + bool get isMixinApplication => hasModifier(Modifier.MIXIN_APPLICATION);
|
| +
|
| + @override
|
| bool get isOrInheritsProxy =>
|
| _safeIsOrInheritsProxy(this, new HashSet<ClassElement>());
|
|
|
| @@ -695,6 +704,13 @@ class ClassElementImpl extends ElementImpl implements ClassElement {
|
| this._methods = methods;
|
| }
|
|
|
| + /**
|
| + * Set whether this class is a mixin application.
|
| + */
|
| + void set mixinApplication(bool isMixinApplication) {
|
| + setModifier(Modifier.MIXIN_APPLICATION, isMixinApplication);
|
| + }
|
| +
|
| bool get mixinErrorsReported => hasModifier(Modifier.MIXIN_ERRORS_REPORTED);
|
|
|
| /**
|
| @@ -7915,41 +7931,47 @@ class Modifier extends Enum<Modifier> {
|
| static const Modifier MIXIN = const Modifier('MIXIN', 10);
|
|
|
| /**
|
| + * Indicates that a class is a mixin application.
|
| + */
|
| + static const Modifier MIXIN_APPLICATION =
|
| + const Modifier('MIXIN_APPLICATION', 11);
|
| +
|
| + /**
|
| * Indicates that an error has reported explaining why this class is an
|
| * invalid mixin application.
|
| */
|
| static const Modifier MIXIN_ERRORS_REPORTED =
|
| - const Modifier('MIXIN_ERRORS_REPORTED', 11);
|
| + const Modifier('MIXIN_ERRORS_REPORTED', 12);
|
|
|
| /**
|
| * Indicates that the value of a parameter or local variable might be mutated
|
| * within the context.
|
| */
|
| static const Modifier POTENTIALLY_MUTATED_IN_CONTEXT =
|
| - const Modifier('POTENTIALLY_MUTATED_IN_CONTEXT', 12);
|
| + const Modifier('POTENTIALLY_MUTATED_IN_CONTEXT', 13);
|
|
|
| /**
|
| * Indicates that the value of a parameter or local variable might be mutated
|
| * within the scope.
|
| */
|
| static const Modifier POTENTIALLY_MUTATED_IN_SCOPE =
|
| - const Modifier('POTENTIALLY_MUTATED_IN_SCOPE', 13);
|
| + const Modifier('POTENTIALLY_MUTATED_IN_SCOPE', 14);
|
|
|
| /**
|
| * Indicates that a class contains an explicit reference to 'super'.
|
| */
|
| static const Modifier REFERENCES_SUPER =
|
| - const Modifier('REFERENCES_SUPER', 14);
|
| + const Modifier('REFERENCES_SUPER', 15);
|
|
|
| /**
|
| * Indicates that the pseudo-modifier 'set' was applied to the element.
|
| */
|
| - static const Modifier SETTER = const Modifier('SETTER', 15);
|
| + static const Modifier SETTER = const Modifier('SETTER', 16);
|
|
|
| /**
|
| * Indicates that the modifier 'static' was applied to the element.
|
| */
|
| - static const Modifier STATIC = const Modifier('STATIC', 16);
|
| + static const Modifier STATIC = const Modifier('STATIC', 17);
|
|
|
| /**
|
| * Indicates that the element does not appear in the source code but was
|
| @@ -7957,13 +7979,13 @@ class Modifier extends Enum<Modifier> {
|
| * constructors, an implicit zero-argument constructor will be created and it
|
| * will be marked as being synthetic.
|
| */
|
| - static const Modifier SYNTHETIC = const Modifier('SYNTHETIC', 17);
|
| + static const Modifier SYNTHETIC = const Modifier('SYNTHETIC', 18);
|
|
|
| /**
|
| * Indicates that a class was defined using an alias.
|
| * TODO(brianwilkerson) This should be renamed to 'ALIAS'.
|
| */
|
| - static const Modifier TYPEDEF = const Modifier('TYPEDEF', 18);
|
| + static const Modifier TYPEDEF = const Modifier('TYPEDEF', 19);
|
|
|
| static const List<Modifier> values = const [
|
| ABSTRACT,
|
| @@ -7977,6 +7999,7 @@ class Modifier extends Enum<Modifier> {
|
| GETTER,
|
| HAS_EXT_URI,
|
| MIXIN,
|
| + MIXIN_APPLICATION,
|
| MIXIN_ERRORS_REPORTED,
|
| POTENTIALLY_MUTATED_IN_CONTEXT,
|
| POTENTIALLY_MUTATED_IN_SCOPE,
|
|
|