TypeScript/tests/baselines/reference/genericPrototypeProperty2.types
2015-04-15 16:44:20 -07:00

40 lines
846 B
Plaintext

=== tests/cases/compiler/genericPrototypeProperty2.ts ===
interface EventTarget { x }
>EventTarget : EventTarget
>x : any
class BaseEvent {
>BaseEvent : BaseEvent
target: EventTarget;
>target : EventTarget
>EventTarget : EventTarget
}
class MyEvent<T extends EventTarget> extends BaseEvent {
>MyEvent : MyEvent<T>
>T : T
>EventTarget : EventTarget
>BaseEvent : BaseEvent
target: T;
>target : T
>T : T
}
class BaseEventWrapper {
>BaseEventWrapper : BaseEventWrapper
t: BaseEvent;
>t : BaseEvent
>BaseEvent : BaseEvent
}
class MyEventWrapper extends BaseEventWrapper {
>MyEventWrapper : MyEventWrapper
>BaseEventWrapper : BaseEventWrapper
t: MyEvent<any>; // any satisfies constraint and passes assignability check between 'target' properties
>t : MyEvent<any>
>MyEvent : MyEvent<T>
}