| // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| class Class {} |
| |
| extension Extension on Class { |
| T id<T>(T t) => t; |
| |
| T Function<T>(T) get getter => id; |
| |
| method() { |
| String Function(String) stringId = id; |
| } |
| |
| errors() { |
| int Function(int) intId = getter; |
| } |
| } |
| |
| main() { |
| Class c = new Class(); |
| int Function(int) intId = c.id; |
| double Function(double) doubleId = Extension(c).id; |
| } |
| |
| errors() { |
| Class c = new Class(); |
| num Function(num) numId = c.getter; |
| bool Function(bool) boolId = Extension(c).getter; |
| } |