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
|
=== tests/cases/compiler/privateVisibility.ts ===
class Foo {
>Foo : Symbol(Foo, Decl(privateVisibility.ts, 0, 0))
public pubMeth() {this.privMeth();}
>pubMeth : Symbol(Foo.pubMeth, Decl(privateVisibility.ts, 0, 11))
>this.privMeth : Symbol(Foo.privMeth, Decl(privateVisibility.ts, 1, 36))
>this : Symbol(Foo, Decl(privateVisibility.ts, 0, 0))
>privMeth : Symbol(Foo.privMeth, Decl(privateVisibility.ts, 1, 36))
private privMeth() {}
>privMeth : Symbol(Foo.privMeth, Decl(privateVisibility.ts, 1, 36))
public pubProp = 0;
>pubProp : Symbol(Foo.pubProp, Decl(privateVisibility.ts, 2, 22))
private privProp = 0;
>privProp : Symbol(Foo.privProp, Decl(privateVisibility.ts, 3, 20))
}
var f = new Foo();
>f : Symbol(f, Decl(privateVisibility.ts, 7, 3))
>Foo : Symbol(Foo, Decl(privateVisibility.ts, 0, 0))
f.privMeth(); // should not work
>f.privMeth : Symbol(Foo.privMeth, Decl(privateVisibility.ts, 1, 36))
>f : Symbol(f, Decl(privateVisibility.ts, 7, 3))
>privMeth : Symbol(Foo.privMeth, Decl(privateVisibility.ts, 1, 36))
f.privProp; // should not work
>f.privProp : Symbol(Foo.privProp, Decl(privateVisibility.ts, 3, 20))
>f : Symbol(f, Decl(privateVisibility.ts, 7, 3))
>privProp : Symbol(Foo.privProp, Decl(privateVisibility.ts, 3, 20))
f.pubMeth(); // should work
>f.pubMeth : Symbol(Foo.pubMeth, Decl(privateVisibility.ts, 0, 11))
>f : Symbol(f, Decl(privateVisibility.ts, 7, 3))
>pubMeth : Symbol(Foo.pubMeth, Decl(privateVisibility.ts, 0, 11))
f.pubProp; // should work
>f.pubProp : Symbol(Foo.pubProp, Decl(privateVisibility.ts, 2, 22))
>f : Symbol(f, Decl(privateVisibility.ts, 7, 3))
>pubProp : Symbol(Foo.pubProp, Decl(privateVisibility.ts, 2, 22))
module M {
>M : Symbol(M, Decl(privateVisibility.ts, 12, 10))
export class C { public pub = 0; private priv = 1; }
>C : Symbol(C, Decl(privateVisibility.ts, 14, 10))
>pub : Symbol(C.pub, Decl(privateVisibility.ts, 15, 20))
>priv : Symbol(C.priv, Decl(privateVisibility.ts, 15, 36))
export var V = 0;
>V : Symbol(V, Decl(privateVisibility.ts, 16, 14))
}
var c = new M.C();
>c : Symbol(c, Decl(privateVisibility.ts, 20, 3))
>M.C : Symbol(M.C, Decl(privateVisibility.ts, 14, 10))
>M : Symbol(M, Decl(privateVisibility.ts, 12, 10))
>C : Symbol(M.C, Decl(privateVisibility.ts, 14, 10))
c.pub; // should work
>c.pub : Symbol(M.C.pub, Decl(privateVisibility.ts, 15, 20))
>c : Symbol(c, Decl(privateVisibility.ts, 20, 3))
>pub : Symbol(M.C.pub, Decl(privateVisibility.ts, 15, 20))
c.priv; // should not work
>c.priv : Symbol(M.C.priv, Decl(privateVisibility.ts, 15, 36))
>c : Symbol(c, Decl(privateVisibility.ts, 20, 3))
>priv : Symbol(M.C.priv, Decl(privateVisibility.ts, 15, 36))
|