File: typesWithProtectedConstructor.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 (40 lines) | stat: -rw-r--r-- 698 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
=== tests/cases/conformance/types/members/typesWithProtectedConstructor.ts ===
class C {
>C : C

    protected constructor() { }
}

var c = new C(); // error C is protected
>c : any
>new C() : any
>C : typeof C

var r: () => void = c.constructor;
>r : () => void
>c.constructor : any
>c : any
>constructor : any

class C2 {
>C2 : C2

    protected constructor(x: number);
>x : number

    protected constructor(x: any) { }
>x : any
}

var c2 = new C2(); // error C2 is protected
>c2 : any
>new C2() : any
>C2 : typeof C2

var r2: (x: number) => void = c2.constructor;
>r2 : (x: number) => void
>x : number
>c2.constructor : any
>c2 : any
>constructor : any