| library /*isNonNullableByDefault*/; |
| import self as self; |
| import "dart:core" as core; |
| |
| class Class extends core::Object { |
| synthetic constructor •() → self::Class |
| : super core::Object::•() |
| ; |
| } |
| extension Extension on self::Class { |
| method method1 = self::Extension|method1; |
| tearoff method1 = self::Extension|get#method1; |
| method method2 = self::Extension|method2; |
| tearoff method2 = self::Extension|get#method2; |
| method method3 = self::Extension|method3; |
| tearoff method3 = self::Extension|get#method3; |
| method method4 = self::Extension|method4; |
| tearoff method4 = self::Extension|get#method4; |
| } |
| static method Extension|method1(lowered final self::Class #this, {core::bool b = #C1, core::String s = #C2}) → void |
| return null; |
| static method Extension|get#method1(lowered final self::Class #this) → ({b: core::bool, s: core::String}) → void |
| return ({core::bool b = #C1, core::String s = #C2}) → void => self::Extension|method1(#this, b: b, s: s); |
| static method Extension|method2(lowered final self::Class #this, [core::bool b = #C1, core::String s = #C2]) → void |
| return null; |
| static method Extension|get#method2(lowered final self::Class #this) → ([core::bool, core::String]) → void |
| return ([core::bool b = #C1, core::String s = #C2]) → void => self::Extension|method2(#this, b, s); |
| static method Extension|method3(lowered final self::Class #this, core::int i, {core::bool b = #C1, core::String s = #C2}) → void {} |
| static method Extension|get#method3(lowered final self::Class #this) → (core::int, {b: core::bool, s: core::String}) → void |
| return (core::int i, {core::bool b = #C1, core::String s = #C2}) → void => self::Extension|method3(#this, i, b: b, s: s); |
| static method Extension|method4(lowered final self::Class #this, core::int i, [core::bool b = #C1, core::String s = #C2]) → void {} |
| static method Extension|get#method4(lowered final self::Class #this) → (core::int, [core::bool, core::String]) → void |
| return (core::int i, [core::bool b = #C1, core::String s = #C2]) → void => self::Extension|method4(#this, i, b, s); |
| static method main() → dynamic { |
| self::Class c = new self::Class::•(); |
| self::Extension|method1(c); |
| self::Extension|method1(c, s: "foo"); |
| self::Extension|method1(c, b: true); |
| self::Extension|method1(c, b: true, s: "foo"); |
| self::Extension|method1(c, s: "foo", b: true); |
| self::Extension|method2(c); |
| self::Extension|method2(c, true); |
| self::Extension|method2(c, true, "foo"); |
| self::Extension|method3(c, 42); |
| self::Extension|method3(c, 42, s: "foo"); |
| self::Extension|method3(c, 42, b: true); |
| self::Extension|method3(c, 42, b: true, s: "foo"); |
| self::Extension|method3(c, 42, s: "foo", b: true); |
| self::Extension|method4(c, 42); |
| self::Extension|method4(c, 42, true); |
| self::Extension|method4(c, 42, true, "foo"); |
| } |
| |
| constants { |
| #C1 = false |
| #C2 = ", " |
| } |