blob: eb872b672a6c1a2328b45ad45510be99113fa15e [file] [log] [blame]
library;
import self as self;
import "dart:core" as core;
class Foo extends core::Object {
synthetic constructor •() self::Foo
: super core::Object::•()
;
}
extension type FooBar(self::Foo i) implements self::Foo {
abstract extension-type-member representation-field get i() self::Foo;
constructor = self::FooBar|constructor#;
constructor tearoff = self::FooBar|constructor#_#new#tearOff;
}
extension type FooBaz(self::Foo i) implements self::Foo {
abstract extension-type-member representation-field get i() self::Foo;
constructor = self::FooBaz|constructor#;
constructor tearoff = self::FooBaz|constructor#_#new#tearOff;
}
static extension-type-member method FooBar|constructor#(self::Foo i) → self::FooBar /* erasure=self::Foo */ {
lowered final self::FooBar /* erasure=self::Foo */ #this = i;
return #this;
}
static extension-type-member method FooBar|constructor#_#new#tearOff(self::Foo i) → self::FooBar /* erasure=self::Foo */
return self::FooBar|constructor#(i);
static extension-type-member method FooBaz|constructor#(self::Foo i) → self::FooBaz /* erasure=self::Foo */ {
lowered final self::FooBaz /* erasure=self::Foo */ #this = i;
return #this;
}
static extension-type-member method FooBaz|constructor#_#new#tearOff(self::Foo i) → self::FooBaz /* erasure=self::Foo */
return self::FooBaz|constructor#(i);
static method main() void {
final self::FooBar /* erasure=self::Foo */ a = self::FooBar|constructor#(new self::Foo::•());
#L1:
{
final synthesized self::FooBar /* erasure=self::Foo */ #0#0 = a;
{
final hoisted self::Foo a;
if(let final self::Foo #t1 = a = #0#0 as{Unchecked} self::Foo in true) {
{
core::print("FooBar ${a}");
}
}
}
}
}