73 lines
3.1 KiB
Text
73 lines
3.1 KiB
Text
=== tests/cases/compiler/infinitelyExpandingTypes4.ts ===
|
|
interface Query<T> {
|
|
>Query : Symbol(Query, Decl(infinitelyExpandingTypes4.ts, 0, 0))
|
|
>T : Symbol(T, Decl(infinitelyExpandingTypes4.ts, 0, 16))
|
|
|
|
// ...
|
|
groupBy<K>(keySelector: (item: T) => K): Query<Grouping<K, T>>;
|
|
>groupBy : Symbol(groupBy, Decl(infinitelyExpandingTypes4.ts, 0, 20))
|
|
>K : Symbol(K, Decl(infinitelyExpandingTypes4.ts, 2, 12))
|
|
>keySelector : Symbol(keySelector, Decl(infinitelyExpandingTypes4.ts, 2, 15))
|
|
>item : Symbol(item, Decl(infinitelyExpandingTypes4.ts, 2, 29))
|
|
>T : Symbol(T, Decl(infinitelyExpandingTypes4.ts, 0, 16))
|
|
>K : Symbol(K, Decl(infinitelyExpandingTypes4.ts, 2, 12))
|
|
>Query : Symbol(Query, Decl(infinitelyExpandingTypes4.ts, 0, 0))
|
|
>Grouping : Symbol(Grouping, Decl(infinitelyExpandingTypes4.ts, 10, 1))
|
|
>K : Symbol(K, Decl(infinitelyExpandingTypes4.ts, 2, 12))
|
|
>T : Symbol(T, Decl(infinitelyExpandingTypes4.ts, 0, 16))
|
|
|
|
// ...
|
|
}
|
|
|
|
interface QueryEnumerator<T> {
|
|
>QueryEnumerator : Symbol(QueryEnumerator, Decl(infinitelyExpandingTypes4.ts, 4, 1))
|
|
>T : Symbol(T, Decl(infinitelyExpandingTypes4.ts, 6, 26))
|
|
|
|
// ...
|
|
groupBy<K>(keySelector: (item: T) => K): QueryEnumerator<Grouping<K, T>>;
|
|
>groupBy : Symbol(groupBy, Decl(infinitelyExpandingTypes4.ts, 6, 30))
|
|
>K : Symbol(K, Decl(infinitelyExpandingTypes4.ts, 8, 12))
|
|
>keySelector : Symbol(keySelector, Decl(infinitelyExpandingTypes4.ts, 8, 15))
|
|
>item : Symbol(item, Decl(infinitelyExpandingTypes4.ts, 8, 29))
|
|
>T : Symbol(T, Decl(infinitelyExpandingTypes4.ts, 6, 26))
|
|
>K : Symbol(K, Decl(infinitelyExpandingTypes4.ts, 8, 12))
|
|
>QueryEnumerator : Symbol(QueryEnumerator, Decl(infinitelyExpandingTypes4.ts, 4, 1))
|
|
>Grouping : Symbol(Grouping, Decl(infinitelyExpandingTypes4.ts, 10, 1))
|
|
>K : Symbol(K, Decl(infinitelyExpandingTypes4.ts, 8, 12))
|
|
>T : Symbol(T, Decl(infinitelyExpandingTypes4.ts, 6, 26))
|
|
|
|
// ...
|
|
}
|
|
|
|
interface Grouping<K, T> extends Query<T> {
|
|
>Grouping : Symbol(Grouping, Decl(infinitelyExpandingTypes4.ts, 10, 1))
|
|
>K : Symbol(K, Decl(infinitelyExpandingTypes4.ts, 12, 19))
|
|
>T : Symbol(T, Decl(infinitelyExpandingTypes4.ts, 12, 21))
|
|
>Query : Symbol(Query, Decl(infinitelyExpandingTypes4.ts, 0, 0))
|
|
>T : Symbol(T, Decl(infinitelyExpandingTypes4.ts, 12, 21))
|
|
|
|
key(): K;
|
|
>key : Symbol(key, Decl(infinitelyExpandingTypes4.ts, 12, 43))
|
|
>K : Symbol(K, Decl(infinitelyExpandingTypes4.ts, 12, 19))
|
|
}
|
|
|
|
var q1: Query<number>;
|
|
>q1 : Symbol(q1, Decl(infinitelyExpandingTypes4.ts, 16, 3))
|
|
>Query : Symbol(Query, Decl(infinitelyExpandingTypes4.ts, 0, 0))
|
|
|
|
var q2: QueryEnumerator<number>;
|
|
>q2 : Symbol(q2, Decl(infinitelyExpandingTypes4.ts, 17, 3))
|
|
>QueryEnumerator : Symbol(QueryEnumerator, Decl(infinitelyExpandingTypes4.ts, 4, 1))
|
|
|
|
var q3: Query<number>;
|
|
>q3 : Symbol(q3, Decl(infinitelyExpandingTypes4.ts, 18, 3))
|
|
>Query : Symbol(Query, Decl(infinitelyExpandingTypes4.ts, 0, 0))
|
|
|
|
q1 = q2; // should error
|
|
>q1 : Symbol(q1, Decl(infinitelyExpandingTypes4.ts, 16, 3))
|
|
>q2 : Symbol(q2, Decl(infinitelyExpandingTypes4.ts, 17, 3))
|
|
|
|
q1 = q3; // should not error
|
|
>q1 : Symbol(q1, Decl(infinitelyExpandingTypes4.ts, 16, 3))
|
|
>q3 : Symbol(q3, Decl(infinitelyExpandingTypes4.ts, 18, 3))
|
|
|