anchor.diff:  /// An element that defines an [InterfaceType].
   ///
   /// Clients may not extend, implement or mix-in this class.
  -abstract class InterfaceDefiningElement
  -    implements InterfaceDefiningOrAugmentationElement, TypeDefiningElement {
  +abstract class InterfaceElement
  +    implements InterfaceOrAugmentationElement, TypeDefiningElement {
     /// Return a list containing all the supertypes defined for this element and
     /// its supertypes. This includes superclasses, mixins, interfaces, and
     /// superclass constraints.
  
positive.code: /// Clients may not extend, implement or mix-in this class.
  @experimental
  abstract class MixinOrAugmentationElement
      implements InterfaceDefiningOrAugmentationElement {
    /// The immediate augmentation of this element, or `null` if there are no
    /// augmentations. [MixinAugmentationElement.augmentationTarget] is the back
    /// pointer that will point at this element.
  
negative.code:   List<InterfaceType> get mixins;
  }
  
  /// The result of applying augmentations to a [InterfaceElement].
  ///
  /// Clients may not extend, implement or mix-in this class.
  abstract class AugmentedInterfaceElement {
    /// Returns accessors (getters and setters) declared in this element.
    ///
    /// [PropertyAccessorAugmentationElement]s replace corresponding elements,
  