File: circularResolvedSignature.types

package info (click to toggle)
node-typescript 4.9.5%2Bds1-2
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 533,908 kB
  • sloc: javascript: 2,018,330; makefile: 7; sh: 1
file content (57 lines) | stat: -rw-r--r-- 2,506 bytes parent folder | download | duplicates (3)
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
50
51
52
53
54
55
56
57
=== tests/cases/compiler/circularResolvedSignature.ts ===
declare function useState<S>(initialState: (() => S)): [S, (s: S) => void];
>useState : <S>(initialState: (() => S)) => [S, (s: S) => void]
>initialState : () => S
>s : S

type Data = Readonly<{
>Data : Readonly<{ value: number; foo: (arg: any) => void; bar: (arg: any) => void; }>

    value: number;
>value : number

    foo: (arg: any) => void;
>foo : (arg: any) => void
>arg : any

    bar: (arg: any) => void;
>bar : (arg: any) => void
>arg : any

}>;

export function Component() {
>Component : () => void

    const [state, setState] = useState<Data>(() => ({
>state : Readonly<{ value: number; foo: (arg: any) => void; bar: (arg: any) => void; }>
>setState : (s: Readonly<{ value: number; foo: (arg: any) => void; bar: (arg: any) => void; }>) => void
>useState<Data>(() => ({        value: "string", // this should be a number        foo: (arg) => setState(arg),        bar: (arg) => setState(arg),    })) : [Readonly<{ value: number; foo: (arg: any) => void; bar: (arg: any) => void; }>, (s: Readonly<{ value: number; foo: (arg: any) => void; bar: (arg: any) => void; }>) => void]
>useState : <S>(initialState: () => S) => [S, (s: S) => void]
>() => ({        value: "string", // this should be a number        foo: (arg) => setState(arg),        bar: (arg) => setState(arg),    }) : () => { value: string; foo: (arg: any) => void; bar: (arg: any) => void; }
>({        value: "string", // this should be a number        foo: (arg) => setState(arg),        bar: (arg) => setState(arg),    }) : { value: string; foo: (arg: any) => void; bar: (arg: any) => void; }
>{        value: "string", // this should be a number        foo: (arg) => setState(arg),        bar: (arg) => setState(arg),    } : { value: string; foo: (arg: any) => void; bar: (arg: any) => void; }

        value: "string", // this should be a number
>value : string
>"string" : "string"

        foo: (arg) => setState(arg),
>foo : (arg: any) => void
>(arg) => setState(arg) : (arg: any) => void
>arg : any
>setState(arg) : void
>setState : (s: Readonly<{ value: number; foo: (arg: any) => void; bar: (arg: any) => void; }>) => void
>arg : any

        bar: (arg) => setState(arg),
>bar : (arg: any) => void
>(arg) => setState(arg) : (arg: any) => void
>arg : any
>setState(arg) : void
>setState : (s: Readonly<{ value: number; foo: (arg: any) => void; bar: (arg: any) => void; }>) => void
>arg : any

    }));
}