2014-08-15 23:33:16 +02:00
|
|
|
=== tests/cases/compiler/icomparable.ts ===
|
|
|
|
interface IComparable<T> {
|
|
|
|
>IComparable : IComparable<T>
|
|
|
|
>T : T
|
|
|
|
|
|
|
|
compareTo(other: T);
|
|
|
|
>compareTo : (other: T) => any
|
|
|
|
>other : T
|
|
|
|
>T : T
|
|
|
|
}
|
|
|
|
|
|
|
|
declare function sort<U extends IComparable<any>>(items: U[]): U[];
|
|
|
|
>sort : <U extends IComparable<any>>(items: U[]) => U[]
|
|
|
|
>U : U
|
2014-08-19 04:56:03 +02:00
|
|
|
>IComparable : IComparable<T>
|
2014-08-15 23:33:16 +02:00
|
|
|
>items : U[]
|
|
|
|
>U : U
|
|
|
|
>U : U
|
|
|
|
|
|
|
|
interface StringComparable extends IComparable<string> {
|
|
|
|
>StringComparable : StringComparable
|
2014-08-19 04:56:03 +02:00
|
|
|
>IComparable : IComparable<T>
|
2014-08-15 23:33:16 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
var sc: StringComparable[];
|
|
|
|
>sc : StringComparable[]
|
|
|
|
>StringComparable : StringComparable
|
|
|
|
|
|
|
|
var x = sort(sc);
|
|
|
|
>x : StringComparable[]
|
|
|
|
>sort(sc) : StringComparable[]
|
|
|
|
>sort : <U extends IComparable<any>>(items: U[]) => U[]
|
|
|
|
>sc : StringComparable[]
|
|
|
|
|