2014-08-15 23:33:16 +02:00
|
|
|
=== tests/cases/compiler/genericConstraintOnExtendedBuiltinTypes2.ts ===
|
|
|
|
module EndGate {
|
2014-08-28 21:40:58 +02:00
|
|
|
>EndGate : typeof EndGate
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
export interface ICloneable {
|
|
|
|
>ICloneable : ICloneable
|
|
|
|
|
|
|
|
Clone(): any;
|
|
|
|
>Clone : () => any
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
interface Number extends EndGate.ICloneable { }
|
|
|
|
>Number : Number
|
2014-08-28 21:40:58 +02:00
|
|
|
>EndGate : unknown
|
2014-08-25 19:36:12 +02:00
|
|
|
>ICloneable : EndGate.ICloneable
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
module EndGate.Tweening {
|
2014-08-28 21:40:58 +02:00
|
|
|
>EndGate : typeof EndGate
|
|
|
|
>Tweening : typeof Tweening
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
export class Tween<T extends ICloneable>{
|
|
|
|
>Tween : Tween<T>
|
|
|
|
>T : T
|
|
|
|
>ICloneable : ICloneable
|
|
|
|
|
|
|
|
private _from: T;
|
|
|
|
>_from : T
|
|
|
|
>T : T
|
|
|
|
|
|
|
|
constructor(from: T) {
|
|
|
|
>from : T
|
|
|
|
>T : T
|
|
|
|
|
|
|
|
this._from = from.Clone();
|
|
|
|
>this._from = from.Clone() : any
|
|
|
|
>this._from : T
|
|
|
|
>this : Tween<T>
|
|
|
|
>_from : T
|
|
|
|
>from.Clone() : any
|
|
|
|
>from.Clone : () => any
|
|
|
|
>from : T
|
|
|
|
>Clone : () => any
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
module EndGate.Tweening {
|
2014-08-28 21:40:58 +02:00
|
|
|
>EndGate : typeof EndGate
|
|
|
|
>Tweening : typeof Tweening
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
export class NumberTween extends Tween<Number>{
|
|
|
|
>NumberTween : NumberTween
|
2014-08-19 04:56:03 +02:00
|
|
|
>Tween : Tween<T>
|
2014-08-15 23:33:16 +02:00
|
|
|
>Number : Number
|
|
|
|
|
|
|
|
constructor(from: number) {
|
|
|
|
>from : number
|
|
|
|
|
|
|
|
super(from);
|
|
|
|
>super(from) : void
|
2014-08-28 21:31:37 +02:00
|
|
|
>super : typeof Tween
|
2014-08-15 23:33:16 +02:00
|
|
|
>from : number
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|