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
|
=== tests/cases/compiler/superPropertyAccess_ES5.ts ===
class MyBase {
>MyBase : MyBase
getValue(): number { return 1; }
>getValue : () => number
>1 : 1
get value(): number { return 1; }
>value : number
>1 : 1
}
class MyDerived extends MyBase {
>MyDerived : MyDerived
>MyBase : MyBase
constructor() {
super();
>super() : void
>super : typeof MyBase
const f1 = super.getValue();
>f1 : number
>super.getValue() : number
>super.getValue : () => number
>super : MyBase
>getValue : () => number
const f2 = super.value;
>f2 : number
>super.value : number
>super : MyBase
>value : number
}
}
var d = new MyDerived();
>d : MyDerived
>new MyDerived() : MyDerived
>MyDerived : typeof MyDerived
var f3 = d.value;
>f3 : number
>d.value : number
>d : MyDerived
>value : number
class A {
>A : A
private _property: string;
>_property : string
get property() { return this._property; }
>property : string
>this._property : string
>this : this
>_property : string
set property(value: string) { this._property = value }
>property : string
>value : string
>this._property = value : string
>this._property : string
>this : this
>_property : string
>value : string
}
class B extends A {
>B : B
>A : A
set property(value: string) {
>property : string
>value : string
super.property = value + " addition";
>super.property = value + " addition" : string
>super.property : string
>super : A
>property : string
>value + " addition" : string
>value : string
>" addition" : " addition"
}
}
|