File: arraySigChecking.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 (89 lines) | stat: -rw-r--r-- 1,706 bytes parent folder | download
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
=== tests/cases/compiler/arraySigChecking.ts ===
declare module M {
>M : typeof M

    interface iBar { t: any; }
>t : any

    interface iFoo extends iBar {
        s: any;
>s : any
    }

    class cFoo {
>cFoo : cFoo

        t: any;
>t : any
    }

    var foo: { [index: any]; }; // expect an error here
>foo : {}
>index : any
}

interface myInt {
    voidFn(): void;
>voidFn : () => void
}
var myVar: myInt;
>myVar : myInt

var strArray: string[] = [myVar.voidFn()];
>strArray : string[]
>[myVar.voidFn()] : void[]
>myVar.voidFn() : void
>myVar.voidFn : () => void
>myVar : myInt
>voidFn : () => void


var myArray: number[][][];
>myArray : number[][][]

myArray = [[1, 2]];
>myArray = [[1, 2]] : number[][]
>myArray : number[][][]
>[[1, 2]] : number[][]
>[1, 2] : number[]
>1 : 1
>2 : 2

function isEmpty(l: { length: number }) {
>isEmpty : (l: { length: number; }) => boolean
>l : { length: number; }
>length : number

    return l.length === 0;
>l.length === 0 : boolean
>l.length : number
>l : { length: number; }
>length : number
>0 : 0
}

isEmpty([]);
>isEmpty([]) : boolean
>isEmpty : (l: { length: number; }) => boolean
>[] : undefined[]

isEmpty(new Array(3));
>isEmpty(new Array(3)) : boolean
>isEmpty : (l: { length: number; }) => boolean
>new Array(3) : any[]
>Array : ArrayConstructor
>3 : 3

isEmpty(new Array<string>(3));
>isEmpty(new Array<string>(3)) : boolean
>isEmpty : (l: { length: number; }) => boolean
>new Array<string>(3) : string[]
>Array : ArrayConstructor
>3 : 3

isEmpty(['a']);
>isEmpty(['a']) : boolean
>isEmpty : (l: { length: number; }) => boolean
>['a'] : string[]
>'a' : "a"