TypeScript/tests/baselines/reference/logicalAndOperatorWithTypeParameters.types

80 lines
3.7 KiB
Plaintext
Raw Normal View History

2014-08-15 23:33:16 +02:00
=== tests/cases/conformance/expressions/binaryOperators/logicalAndOperator/logicalAndOperatorWithTypeParameters.ts ===
// The && operator permits the operands to be of any type and produces a result of the same
// type as the second operand.
function foo<T, U, V/* extends T*/>(t: T, u: U, v: V) {
2015-04-13 23:01:57 +02:00
>foo : <T, U, V>(t: T, u: U, v: V) => void, Symbol(foo, Decl(logicalAndOperatorWithTypeParameters.ts, 0, 0))
>T : T, Symbol(T, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 13))
>U : U, Symbol(U, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 15))
>V : V, Symbol(V, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 18))
>t : T, Symbol(t, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 36))
>T : T, Symbol(T, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 13))
>u : U, Symbol(u, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 41))
>U : U, Symbol(U, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 15))
>v : V, Symbol(v, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 47))
>V : V, Symbol(V, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 18))
2014-08-15 23:33:16 +02:00
var r1 = t && t;
2015-04-13 23:01:57 +02:00
>r1 : T, Symbol(r1, Decl(logicalAndOperatorWithTypeParameters.ts, 4, 7))
2014-08-15 23:33:16 +02:00
>t && t : T
2015-04-13 23:01:57 +02:00
>t : T, Symbol(t, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 36))
>t : T, Symbol(t, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 36))
2014-08-15 23:33:16 +02:00
var r2 = u && t;
2015-04-13 23:01:57 +02:00
>r2 : T, Symbol(r2, Decl(logicalAndOperatorWithTypeParameters.ts, 5, 7))
2014-08-15 23:33:16 +02:00
>u && t : T
2015-04-13 23:01:57 +02:00
>u : U, Symbol(u, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 41))
>t : T, Symbol(t, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 36))
2014-08-15 23:33:16 +02:00
var r3 = v && t;
2015-04-13 23:01:57 +02:00
>r3 : T, Symbol(r3, Decl(logicalAndOperatorWithTypeParameters.ts, 6, 7))
2014-08-15 23:33:16 +02:00
>v && t : T
2015-04-13 23:01:57 +02:00
>v : V, Symbol(v, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 47))
>t : T, Symbol(t, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 36))
2014-08-15 23:33:16 +02:00
var r4 = t && u;
2015-04-13 23:01:57 +02:00
>r4 : U, Symbol(r4, Decl(logicalAndOperatorWithTypeParameters.ts, 8, 7))
2014-08-15 23:33:16 +02:00
>t && u : U
2015-04-13 23:01:57 +02:00
>t : T, Symbol(t, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 36))
>u : U, Symbol(u, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 41))
2014-08-15 23:33:16 +02:00
var r5 = u && u;
2015-04-13 23:01:57 +02:00
>r5 : U, Symbol(r5, Decl(logicalAndOperatorWithTypeParameters.ts, 9, 7))
2014-08-15 23:33:16 +02:00
>u && u : U
2015-04-13 23:01:57 +02:00
>u : U, Symbol(u, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 41))
>u : U, Symbol(u, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 41))
2014-08-15 23:33:16 +02:00
var r6 = v && u;
2015-04-13 23:01:57 +02:00
>r6 : U, Symbol(r6, Decl(logicalAndOperatorWithTypeParameters.ts, 10, 7))
2014-08-15 23:33:16 +02:00
>v && u : U
2015-04-13 23:01:57 +02:00
>v : V, Symbol(v, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 47))
>u : U, Symbol(u, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 41))
2014-08-15 23:33:16 +02:00
var r7 = t && v;
2015-04-13 23:01:57 +02:00
>r7 : V, Symbol(r7, Decl(logicalAndOperatorWithTypeParameters.ts, 12, 7))
2014-08-15 23:33:16 +02:00
>t && v : V
2015-04-13 23:01:57 +02:00
>t : T, Symbol(t, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 36))
>v : V, Symbol(v, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 47))
2014-08-15 23:33:16 +02:00
var r8 = u && v;
2015-04-13 23:01:57 +02:00
>r8 : V, Symbol(r8, Decl(logicalAndOperatorWithTypeParameters.ts, 13, 7))
2014-08-15 23:33:16 +02:00
>u && v : V
2015-04-13 23:01:57 +02:00
>u : U, Symbol(u, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 41))
>v : V, Symbol(v, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 47))
2014-08-15 23:33:16 +02:00
var r9 = v && v;
2015-04-13 23:01:57 +02:00
>r9 : V, Symbol(r9, Decl(logicalAndOperatorWithTypeParameters.ts, 14, 7))
2014-08-15 23:33:16 +02:00
>v && v : V
2015-04-13 23:01:57 +02:00
>v : V, Symbol(v, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 47))
>v : V, Symbol(v, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 47))
2014-08-15 23:33:16 +02:00
var a: number;
2015-04-13 23:01:57 +02:00
>a : number, Symbol(a, Decl(logicalAndOperatorWithTypeParameters.ts, 16, 7))
2014-08-15 23:33:16 +02:00
var r10 = t && a;
2015-04-13 23:01:57 +02:00
>r10 : number, Symbol(r10, Decl(logicalAndOperatorWithTypeParameters.ts, 17, 7))
2014-08-15 23:33:16 +02:00
>t && a : number
2015-04-13 23:01:57 +02:00
>t : T, Symbol(t, Decl(logicalAndOperatorWithTypeParameters.ts, 3, 36))
>a : number, Symbol(a, Decl(logicalAndOperatorWithTypeParameters.ts, 16, 7))
2014-08-15 23:33:16 +02:00
}