library test.mixin_library;
import self as self;
import "dart:core" as core;

class Mixin<T extends core::Object = dynamic> extends core::Object {
  field dynamic x;
  field dynamic y;
  field dynamic z;
  field self::Mixin::T t;
  synthetic constructor •() → void
    ;
  method foo() → dynamic
    ;
  method g(self::Mixin::T a) → self::Mixin::T
    ;
  method h() → dynamic
    ;
  method l() → dynamic
    ;
  method _privateMethod() → dynamic
    ;
  method publicMethod() → dynamic
    ;
}
static method f() → dynamic
  ;
static method V() → dynamic
  ;
static method _private() → dynamic
  ;
static method foo(dynamic m) → dynamic
  ;
