library;
import self as self;
import "dart:core" as core;

class Class extends core::Object {
  synthetic constructor •() → self::Class
    ;
  get property() → core::int
    ;
  set property(core::int value) → void
    ;
}
extension /* unnamed */ _extension#0 on self::Class? {
  get property = self::_extension#0|get#property;
}
static extension-member method _extension#0|get#property(lowered final self::Class? #this) → core::int
  ;
static method test(self::Class? c) → void
  ;
