| library /*isNonNullableByDefault*/; |
| // |
| // Problems in library: |
| // |
| // pkg/front_end/testcases/extension_types/simple_method_resolution.dart:20:5: Error: The method 'baz' isn't defined for the class 'A'. |
| // - 'A' is from 'pkg/front_end/testcases/extension_types/simple_method_resolution.dart'. |
| // Try correcting the name to the name of an existing method, or defining a method named 'baz'. |
| // a.baz(); // Error. |
| // ^^^ |
| // |
| // pkg/front_end/testcases/extension_types/simple_method_resolution.dart:22:5: Error: The method 'foo' isn't defined for the extension 'E'. |
| // Try correcting the name to the name of an existing method, or defining a method name 'foo'. |
| // e.foo(); // Error. |
| // ^^^ |
| // |
| // pkg/front_end/testcases/extension_types/simple_method_resolution.dart:24:5: Error: The method 'baz' isn't defined for the extension 'E'. |
| // Try correcting the name to the name of an existing method, or defining a method name 'baz'. |
| // e.baz(); // Error. |
| // ^^^ |
| // |
| // pkg/front_end/testcases/extension_types/simple_method_resolution.dart:26:6: Error: The method 'foo' isn't defined for the extension 'ET'. |
| // Try correcting the name to the name of an existing method, or defining a method name 'foo'. |
| // et.foo(); // Error. |
| // ^^^ |
| // |
| // pkg/front_end/testcases/extension_types/simple_method_resolution.dart:27:6: Error: The method 'bar' isn't defined for the extension 'ET'. |
| // Try correcting the name to the name of an existing method, or defining a method name 'bar'. |
| // et.bar(); // Error. |
| // ^^^ |
| // |
| import self as self; |
| import "dart:core" as core; |
| |
| class A extends core::Object { |
| synthetic constructor •() → self::A |
| : super core::Object::•() |
| ; |
| method foo() → void {} |
| } |
| extension E on self::A { |
| method bar = self::E|bar; |
| tearoff bar = self::E|get#bar; |
| } |
| extension type ET on self::A { |
| method baz = self::ET|baz; |
| tearoff baz = self::ET|get#baz; |
| } |
| static method E|bar(lowered final self::A #this) → void |
| return #this.{self::A::foo}(){() → void}; |
| static method E|get#bar(lowered final self::A #this) → () → void |
| return () → void => self::E|bar(#this); |
| static method ET|baz(lowered final self::A #this) → void |
| return #this.{self::A::foo}(){() → void}; |
| static method ET|get#baz(lowered final self::A #this) → () → void |
| return () → void => self::ET|baz(#this); |
| static method test(self::A a, self::E e, self::ET et) → dynamic { |
| a.{self::A::foo}(){() → void}; |
| self::E|bar(a); |
| invalid-expression "pkg/front_end/testcases/extension_types/simple_method_resolution.dart:20:5: Error: The method 'baz' isn't defined for the class 'A'. |
| - 'A' is from 'pkg/front_end/testcases/extension_types/simple_method_resolution.dart'. |
| Try correcting the name to the name of an existing method, or defining a method named 'baz'. |
| a.baz(); // Error. |
| ^^^"; |
| invalid-expression "pkg/front_end/testcases/extension_types/simple_method_resolution.dart:22:5: Error: The method 'foo' isn't defined for the extension 'E'. |
| Try correcting the name to the name of an existing method, or defining a method name 'foo'. |
| e.foo(); // Error. |
| ^^^"; |
| self::E|bar(e); |
| invalid-expression "pkg/front_end/testcases/extension_types/simple_method_resolution.dart:24:5: Error: The method 'baz' isn't defined for the extension 'E'. |
| Try correcting the name to the name of an existing method, or defining a method name 'baz'. |
| e.baz(); // Error. |
| ^^^"; |
| invalid-expression "pkg/front_end/testcases/extension_types/simple_method_resolution.dart:26:6: Error: The method 'foo' isn't defined for the extension 'ET'. |
| Try correcting the name to the name of an existing method, or defining a method name 'foo'. |
| et.foo(); // Error. |
| ^^^"; |
| invalid-expression "pkg/front_end/testcases/extension_types/simple_method_resolution.dart:27:6: Error: The method 'bar' isn't defined for the extension 'ET'. |
| Try correcting the name to the name of an existing method, or defining a method name 'bar'. |
| et.bar(); // Error. |
| ^^^"; |
| self::ET|baz(et); |
| } |
| static method main() → dynamic {} |