56 lines
2.9 KiB
Plaintext
56 lines
2.9 KiB
Plaintext
=== tests/cases/compiler/genericReversingTypeParameters.ts ===
|
|
class BiMap<K, V> {
|
|
>BiMap : BiMap<K, V>, Symbol(BiMap, Decl(genericReversingTypeParameters.ts, 0, 0))
|
|
>K : K, Symbol(K, Decl(genericReversingTypeParameters.ts, 0, 12))
|
|
>V : V, Symbol(V, Decl(genericReversingTypeParameters.ts, 0, 14))
|
|
|
|
private inverseBiMap: BiMap<V, K>;
|
|
>inverseBiMap : BiMap<V, K>, Symbol(inverseBiMap, Decl(genericReversingTypeParameters.ts, 0, 19))
|
|
>BiMap : BiMap<K, V>, Symbol(BiMap, Decl(genericReversingTypeParameters.ts, 0, 0))
|
|
>V : V, Symbol(V, Decl(genericReversingTypeParameters.ts, 0, 14))
|
|
>K : K, Symbol(K, Decl(genericReversingTypeParameters.ts, 0, 12))
|
|
|
|
public get(key: K): V { return null; }
|
|
>get : (key: K) => V, Symbol(get, Decl(genericReversingTypeParameters.ts, 1, 38))
|
|
>key : K, Symbol(key, Decl(genericReversingTypeParameters.ts, 2, 15))
|
|
>K : K, Symbol(K, Decl(genericReversingTypeParameters.ts, 0, 12))
|
|
>V : V, Symbol(V, Decl(genericReversingTypeParameters.ts, 0, 14))
|
|
>null : null
|
|
|
|
public inverse(): BiMap<V, K> { return null; }
|
|
>inverse : () => BiMap<V, K>, Symbol(inverse, Decl(genericReversingTypeParameters.ts, 2, 42))
|
|
>BiMap : BiMap<K, V>, Symbol(BiMap, Decl(genericReversingTypeParameters.ts, 0, 0))
|
|
>V : V, Symbol(V, Decl(genericReversingTypeParameters.ts, 0, 14))
|
|
>K : K, Symbol(K, Decl(genericReversingTypeParameters.ts, 0, 12))
|
|
>null : null
|
|
}
|
|
|
|
var b = new BiMap<string, number>();
|
|
>b : BiMap<string, number>, Symbol(b, Decl(genericReversingTypeParameters.ts, 6, 3))
|
|
>new BiMap<string, number>() : BiMap<string, number>
|
|
>BiMap : typeof BiMap, Symbol(BiMap, Decl(genericReversingTypeParameters.ts, 0, 0))
|
|
|
|
var r1 = b.get('');
|
|
>r1 : number, Symbol(r1, Decl(genericReversingTypeParameters.ts, 7, 3))
|
|
>b.get('') : number
|
|
>b.get : (key: string) => number, Symbol(BiMap.get, Decl(genericReversingTypeParameters.ts, 1, 38))
|
|
>b : BiMap<string, number>, Symbol(b, Decl(genericReversingTypeParameters.ts, 6, 3))
|
|
>get : (key: string) => number, Symbol(BiMap.get, Decl(genericReversingTypeParameters.ts, 1, 38))
|
|
>'' : string
|
|
|
|
var i = b.inverse(); // used to get the type wrong here.
|
|
>i : BiMap<number, string>, Symbol(i, Decl(genericReversingTypeParameters.ts, 8, 3))
|
|
>b.inverse() : BiMap<number, string>
|
|
>b.inverse : () => BiMap<number, string>, Symbol(BiMap.inverse, Decl(genericReversingTypeParameters.ts, 2, 42))
|
|
>b : BiMap<string, number>, Symbol(b, Decl(genericReversingTypeParameters.ts, 6, 3))
|
|
>inverse : () => BiMap<number, string>, Symbol(BiMap.inverse, Decl(genericReversingTypeParameters.ts, 2, 42))
|
|
|
|
var r2b = i.get(1);
|
|
>r2b : string, Symbol(r2b, Decl(genericReversingTypeParameters.ts, 9, 3))
|
|
>i.get(1) : string
|
|
>i.get : (key: number) => string, Symbol(BiMap.get, Decl(genericReversingTypeParameters.ts, 1, 38))
|
|
>i : BiMap<number, string>, Symbol(i, Decl(genericReversingTypeParameters.ts, 8, 3))
|
|
>get : (key: number) => string, Symbol(BiMap.get, Decl(genericReversingTypeParameters.ts, 1, 38))
|
|
>1 : number
|
|
|