| 40 columns | |
| >>> function declaration |
| int f/*<S, T>*/(int x) => 3; |
| <<< |
| int f/*<S, T>*/(int x) => 3; |
| >>> type bounds |
| int f/*<S extends Set<S>>*/(int x) => 3; |
| <<< |
| int f/*<S extends Set<S>>*/(int x) => 3; |
| >>> method |
| class C { |
| static int f/*<S, T>*/(int x) => 3; |
| int m/*<S, T>*/(int x) => 3; |
| } |
| <<< |
| class C { |
| static int f/*<S, T>*/(int x) => 3; |
| int m/*<S, T>*/(int x) => 3; |
| } |
| >>> function type parameter |
| void foo(int f/*<S>*/(int x)) {} |
| <<< |
| void foo(int f/*<S>*/(int x)) {} |
| >>> variable |
| var x = /*<S>*/(int x) => x; |
| <<< |
| var x = /*<S>*/(int x) => x; |
| >>> parameter type |
| foo/*<S>*/(dynamic/*=S*/ x) => x; |
| <<< |
| foo/*<S>*/(dynamic/*=S*/ x) => x; |
| >>> return type |
| dynamic/*=S*/ foo/*<S>*/() => x; |
| <<< |
| dynamic/*=S*/ foo/*<S>*/() => x; |
| >>> without dynamic |
| main() { |
| /*=S*/ foo/*<S>*/(/*=S*/ x) {return x;} |
| } |
| <<< |
| main() { |
| /*=S*/ foo/*<S>*/(/*=S*/ x) { |
| return x; |
| } |
| } |
| >>> var |
| void foo/*<S>*/(var /*=S*/ x) { |
| var /*=S*/ y = x; |
| } |
| <<< |
| void foo/*<S>*/(var/*=S*/ x) { |
| var/*=S*/ y = x; |
| } |