TypeScript/tests/baselines/reference/additionOperatorWithNullValueAndValidOperator.types

130 lines
5 KiB
Plaintext
Raw Normal View History

2014-08-15 23:33:16 +02:00
=== tests/cases/conformance/expressions/binaryOperators/additionOperator/additionOperatorWithNullValueAndValidOperator.ts ===
// If one operand is the null or undefined value, it is treated as having the type of the other operand.
enum E { a, b, c }
2015-04-13 23:01:57 +02:00
>E : E, Symbol(E, Decl(additionOperatorWithNullValueAndValidOperator.ts, 0, 0))
>a : E, Symbol(E.a, Decl(additionOperatorWithNullValueAndValidOperator.ts, 2, 8))
>b : E, Symbol(E.b, Decl(additionOperatorWithNullValueAndValidOperator.ts, 2, 11))
>c : E, Symbol(E.c, Decl(additionOperatorWithNullValueAndValidOperator.ts, 2, 14))
2014-08-15 23:33:16 +02:00
var a: any;
2015-04-13 23:01:57 +02:00
>a : any, Symbol(a, Decl(additionOperatorWithNullValueAndValidOperator.ts, 4, 3))
2014-08-15 23:33:16 +02:00
var b: number;
2015-04-13 23:01:57 +02:00
>b : number, Symbol(b, Decl(additionOperatorWithNullValueAndValidOperator.ts, 5, 3))
2014-08-15 23:33:16 +02:00
var c: E;
2015-04-13 23:01:57 +02:00
>c : E, Symbol(c, Decl(additionOperatorWithNullValueAndValidOperator.ts, 6, 3))
>E : E, Symbol(E, Decl(additionOperatorWithNullValueAndValidOperator.ts, 0, 0))
2014-08-15 23:33:16 +02:00
var d: string;
2015-04-13 23:01:57 +02:00
>d : string, Symbol(d, Decl(additionOperatorWithNullValueAndValidOperator.ts, 7, 3))
2014-08-15 23:33:16 +02:00
// null + any
var r1: any = null + a;
2015-04-13 23:01:57 +02:00
>r1 : any, Symbol(r1, Decl(additionOperatorWithNullValueAndValidOperator.ts, 10, 3))
2014-08-15 23:33:16 +02:00
>null + a : any
2015-04-13 21:36:11 +02:00
>null : null
2015-04-13 23:01:57 +02:00
>a : any, Symbol(a, Decl(additionOperatorWithNullValueAndValidOperator.ts, 4, 3))
2014-08-15 23:33:16 +02:00
var r2: any = a + null;
2015-04-13 23:01:57 +02:00
>r2 : any, Symbol(r2, Decl(additionOperatorWithNullValueAndValidOperator.ts, 11, 3))
2014-08-15 23:33:16 +02:00
>a + null : any
2015-04-13 23:01:57 +02:00
>a : any, Symbol(a, Decl(additionOperatorWithNullValueAndValidOperator.ts, 4, 3))
2015-04-13 21:36:11 +02:00
>null : null
2014-08-15 23:33:16 +02:00
// null + number/enum
var r3 = null + b;
2015-04-13 23:01:57 +02:00
>r3 : number, Symbol(r3, Decl(additionOperatorWithNullValueAndValidOperator.ts, 14, 3))
2014-08-15 23:33:16 +02:00
>null + b : number
2015-04-13 21:36:11 +02:00
>null : null
2015-04-13 23:01:57 +02:00
>b : number, Symbol(b, Decl(additionOperatorWithNullValueAndValidOperator.ts, 5, 3))
2014-08-15 23:33:16 +02:00
var r4 = null + 1;
2015-04-13 23:01:57 +02:00
>r4 : number, Symbol(r4, Decl(additionOperatorWithNullValueAndValidOperator.ts, 15, 3))
2014-08-15 23:33:16 +02:00
>null + 1 : number
2015-04-13 21:36:11 +02:00
>null : null
>1 : number
2014-08-15 23:33:16 +02:00
var r5 = null + c;
2015-04-13 23:01:57 +02:00
>r5 : number, Symbol(r5, Decl(additionOperatorWithNullValueAndValidOperator.ts, 16, 3))
2014-08-15 23:33:16 +02:00
>null + c : number
2015-04-13 21:36:11 +02:00
>null : null
2015-04-13 23:01:57 +02:00
>c : E, Symbol(c, Decl(additionOperatorWithNullValueAndValidOperator.ts, 6, 3))
2014-08-15 23:33:16 +02:00
var r6 = null + E.a;
2015-04-13 23:01:57 +02:00
>r6 : number, Symbol(r6, Decl(additionOperatorWithNullValueAndValidOperator.ts, 17, 3))
2014-08-15 23:33:16 +02:00
>null + E.a : number
2015-04-13 21:36:11 +02:00
>null : null
2015-04-13 23:01:57 +02:00
>E.a : E, Symbol(E.a, Decl(additionOperatorWithNullValueAndValidOperator.ts, 2, 8))
>E : typeof E, Symbol(E, Decl(additionOperatorWithNullValueAndValidOperator.ts, 0, 0))
>a : E, Symbol(E.a, Decl(additionOperatorWithNullValueAndValidOperator.ts, 2, 8))
2014-08-15 23:33:16 +02:00
var r7 = null + E['a'];
2015-04-13 23:01:57 +02:00
>r7 : number, Symbol(r7, Decl(additionOperatorWithNullValueAndValidOperator.ts, 18, 3))
2014-08-15 23:33:16 +02:00
>null + E['a'] : number
2015-04-13 21:36:11 +02:00
>null : null
2014-08-15 23:33:16 +02:00
>E['a'] : E
2015-04-13 23:01:57 +02:00
>E : typeof E, Symbol(E, Decl(additionOperatorWithNullValueAndValidOperator.ts, 0, 0))
>'a' : string, Symbol(E.a, Decl(additionOperatorWithNullValueAndValidOperator.ts, 2, 8))
2014-08-15 23:33:16 +02:00
var r8 = b + null;
2015-04-13 23:01:57 +02:00
>r8 : number, Symbol(r8, Decl(additionOperatorWithNullValueAndValidOperator.ts, 19, 3))
2014-08-15 23:33:16 +02:00
>b + null : number
2015-04-13 23:01:57 +02:00
>b : number, Symbol(b, Decl(additionOperatorWithNullValueAndValidOperator.ts, 5, 3))
2015-04-13 21:36:11 +02:00
>null : null
2014-08-15 23:33:16 +02:00
var r9 = 1 + null;
2015-04-13 23:01:57 +02:00
>r9 : number, Symbol(r9, Decl(additionOperatorWithNullValueAndValidOperator.ts, 20, 3))
2014-08-15 23:33:16 +02:00
>1 + null : number
2015-04-13 21:36:11 +02:00
>1 : number
>null : null
2014-08-15 23:33:16 +02:00
var r10 = c + null
2015-04-13 23:01:57 +02:00
>r10 : number, Symbol(r10, Decl(additionOperatorWithNullValueAndValidOperator.ts, 21, 3))
2014-08-15 23:33:16 +02:00
>c + null : number
2015-04-13 23:01:57 +02:00
>c : E, Symbol(c, Decl(additionOperatorWithNullValueAndValidOperator.ts, 6, 3))
2015-04-13 21:36:11 +02:00
>null : null
2014-08-15 23:33:16 +02:00
var r11 = E.a + null;
2015-04-13 23:01:57 +02:00
>r11 : number, Symbol(r11, Decl(additionOperatorWithNullValueAndValidOperator.ts, 22, 3))
2014-08-15 23:33:16 +02:00
>E.a + null : number
2015-04-13 23:01:57 +02:00
>E.a : E, Symbol(E.a, Decl(additionOperatorWithNullValueAndValidOperator.ts, 2, 8))
>E : typeof E, Symbol(E, Decl(additionOperatorWithNullValueAndValidOperator.ts, 0, 0))
>a : E, Symbol(E.a, Decl(additionOperatorWithNullValueAndValidOperator.ts, 2, 8))
2015-04-13 21:36:11 +02:00
>null : null
2014-08-15 23:33:16 +02:00
var r12 = E['a'] + null;
2015-04-13 23:01:57 +02:00
>r12 : number, Symbol(r12, Decl(additionOperatorWithNullValueAndValidOperator.ts, 23, 3))
2014-08-15 23:33:16 +02:00
>E['a'] + null : number
>E['a'] : E
2015-04-13 23:01:57 +02:00
>E : typeof E, Symbol(E, Decl(additionOperatorWithNullValueAndValidOperator.ts, 0, 0))
>'a' : string, Symbol(E.a, Decl(additionOperatorWithNullValueAndValidOperator.ts, 2, 8))
2015-04-13 21:36:11 +02:00
>null : null
2014-08-15 23:33:16 +02:00
// null + string
var r13 = null + d;
2015-04-13 23:01:57 +02:00
>r13 : string, Symbol(r13, Decl(additionOperatorWithNullValueAndValidOperator.ts, 26, 3))
2014-08-15 23:33:16 +02:00
>null + d : string
2015-04-13 21:36:11 +02:00
>null : null
2015-04-13 23:01:57 +02:00
>d : string, Symbol(d, Decl(additionOperatorWithNullValueAndValidOperator.ts, 7, 3))
2014-08-15 23:33:16 +02:00
var r14 = null + '';
2015-04-13 23:01:57 +02:00
>r14 : string, Symbol(r14, Decl(additionOperatorWithNullValueAndValidOperator.ts, 27, 3))
2014-08-15 23:33:16 +02:00
>null + '' : string
2015-04-13 21:36:11 +02:00
>null : null
>'' : string
2014-08-15 23:33:16 +02:00
var r15 = d + null;
2015-04-13 23:01:57 +02:00
>r15 : string, Symbol(r15, Decl(additionOperatorWithNullValueAndValidOperator.ts, 28, 3))
2014-08-15 23:33:16 +02:00
>d + null : string
2015-04-13 23:01:57 +02:00
>d : string, Symbol(d, Decl(additionOperatorWithNullValueAndValidOperator.ts, 7, 3))
2015-04-13 21:36:11 +02:00
>null : null
2014-08-15 23:33:16 +02:00
var r16 = '' + null;
2015-04-13 23:01:57 +02:00
>r16 : string, Symbol(r16, Decl(additionOperatorWithNullValueAndValidOperator.ts, 29, 3))
2014-08-15 23:33:16 +02:00
>'' + null : string
2015-04-13 21:36:11 +02:00
>'' : string
>null : null
2014-08-15 23:33:16 +02:00