library; import self as self; import "dart:core" as core; import "package:expect/expect.dart" as exp; import "package:expect/expect.dart"; class C extends core::Object { synthetic constructor •() → self::C* : super core::Object::•() ; get one() → core::int* return 1; abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode abstract member-signature method toString() → core::String*; -> core::Object::toString abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } extension E on self::C* { get two = self::E|get#two; } static method E|get#two(lowered final self::C* #this) → core::int* return 2; static method main() → dynamic { self::C* c = new self::C::•(); core::int* result = c.{self::C::one}.{core::num::+}(self::E|get#two(c)); exp::Expect::equals(result, 3); }