TypeScript/tests/baselines/reference/icomparable.types
2015-04-13 14:29:37 -07:00

35 lines
1.6 KiB
Plaintext

=== tests/cases/compiler/icomparable.ts ===
interface IComparable<T> {
>IComparable : IComparable<T>, Symbol(IComparable, Decl(icomparable.ts, 0, 0))
>T : T, Symbol(T, Decl(icomparable.ts, 0, 26))
compareTo(other: T);
>compareTo : (other: T) => any, Symbol(compareTo, Decl(icomparable.ts, 0, 30))
>other : T, Symbol(other, Decl(icomparable.ts, 1, 17))
>T : T, Symbol(T, Decl(icomparable.ts, 0, 26))
}
declare function sort<U extends IComparable<any>>(items: U[]): U[];
>sort : <U extends IComparable<any>>(items: U[]) => U[], Symbol(sort, Decl(icomparable.ts, 2, 5))
>U : U, Symbol(U, Decl(icomparable.ts, 4, 26))
>IComparable : IComparable<T>, Symbol(IComparable, Decl(icomparable.ts, 0, 0))
>items : U[], Symbol(items, Decl(icomparable.ts, 4, 54))
>U : U, Symbol(U, Decl(icomparable.ts, 4, 26))
>U : U, Symbol(U, Decl(icomparable.ts, 4, 26))
interface StringComparable extends IComparable<string> {
>StringComparable : StringComparable, Symbol(StringComparable, Decl(icomparable.ts, 4, 71))
>IComparable : IComparable<T>, Symbol(IComparable, Decl(icomparable.ts, 0, 0))
}
var sc: StringComparable[];
>sc : StringComparable[], Symbol(sc, Decl(icomparable.ts, 9, 7))
>StringComparable : StringComparable, Symbol(StringComparable, Decl(icomparable.ts, 4, 71))
var x = sort(sc);
>x : StringComparable[], Symbol(x, Decl(icomparable.ts, 11, 7))
>sort(sc) : StringComparable[]
>sort : <U extends IComparable<any>>(items: U[]) => U[], Symbol(sort, Decl(icomparable.ts, 2, 5))
>sc : StringComparable[], Symbol(sc, Decl(icomparable.ts, 9, 7))