File: genericInterfaceTypeCall.types

package info (click to toggle)
node-typescript 3.3.3333-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 324,548 kB
  • sloc: makefile: 6; sh: 3
file content (49 lines) | stat: -rw-r--r-- 1,379 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
=== tests/cases/compiler/genericInterfaceTypeCall.ts ===
interface Foo<T> {
    reject(arg: T): void;
>reject : (arg: T) => void
>arg : T
}
var foo: Foo<string>
>foo : Foo<string>
 
interface bar<T> {
    fail(func: (arg: T) => void ): void;
>fail : (func: (arg: T) => void) => void
>func : (arg: T) => void
>arg : T

    fail2(func2: { (arg: T): void; }): void;
>fail2 : (func2: (arg: T) => void) => void
>func2 : (arg: T) => void
>arg : T
}
var test: bar<string>;
>test : bar<string>
 
test.fail(arg => foo.reject(arg));
>test.fail(arg => foo.reject(arg)) : void
>test.fail : (func: (arg: string) => void) => void
>test : bar<string>
>fail : (func: (arg: string) => void) => void
>arg => foo.reject(arg) : (arg: string) => void
>arg : string
>foo.reject(arg) : void
>foo.reject : (arg: string) => void
>foo : Foo<string>
>reject : (arg: string) => void
>arg : string

test.fail2(arg => foo.reject(arg)); // Error: Supplied parameters do not match any signature of call target
>test.fail2(arg => foo.reject(arg)) : void
>test.fail2 : (func2: (arg: string) => void) => void
>test : bar<string>
>fail2 : (func2: (arg: string) => void) => void
>arg => foo.reject(arg) : (arg: string) => void
>arg : string
>foo.reject(arg) : void
>foo.reject : (arg: string) => void
>foo : Foo<string>
>reject : (arg: string) => void
>arg : string