|
1 | 1 | === tests/cases/conformance/expressions/unaryOperators/bitwiseNotOperator/bitwiseNotOperatorWithBooleanType.ts ===
|
| 2 | + |
2 | 3 | // ~ operator on boolean type
|
3 | 4 | var BOOLEAN: boolean;
|
4 |
| ->BOOLEAN : Symbol(BOOLEAN, Decl(bitwiseNotOperatorWithBooleanType.ts, 1, 3)) |
| 5 | +>BOOLEAN : Symbol(BOOLEAN, Decl(bitwiseNotOperatorWithBooleanType.ts, 2, 3)) |
5 | 6 |
|
6 | 7 | function foo(): boolean { return true; }
|
7 |
| ->foo : Symbol(foo, Decl(bitwiseNotOperatorWithBooleanType.ts, 1, 21)) |
| 8 | +>foo : Symbol(foo, Decl(bitwiseNotOperatorWithBooleanType.ts, 2, 21)) |
8 | 9 |
|
9 | 10 | class A {
|
10 |
| ->A : Symbol(A, Decl(bitwiseNotOperatorWithBooleanType.ts, 3, 40)) |
| 11 | +>A : Symbol(A, Decl(bitwiseNotOperatorWithBooleanType.ts, 4, 40)) |
11 | 12 |
|
12 | 13 | public a: boolean;
|
13 |
| ->a : Symbol(A.a, Decl(bitwiseNotOperatorWithBooleanType.ts, 5, 9)) |
| 14 | +>a : Symbol(A.a, Decl(bitwiseNotOperatorWithBooleanType.ts, 6, 9)) |
14 | 15 |
|
15 | 16 | static foo() { return false; }
|
16 |
| ->foo : Symbol(A.foo, Decl(bitwiseNotOperatorWithBooleanType.ts, 6, 22)) |
| 17 | +>foo : Symbol(A.foo, Decl(bitwiseNotOperatorWithBooleanType.ts, 7, 22)) |
17 | 18 | }
|
18 | 19 | module M {
|
19 |
| ->M : Symbol(M, Decl(bitwiseNotOperatorWithBooleanType.ts, 8, 1)) |
| 20 | +>M : Symbol(M, Decl(bitwiseNotOperatorWithBooleanType.ts, 9, 1)) |
20 | 21 |
|
21 | 22 | export var n: boolean;
|
22 |
| ->n : Symbol(n, Decl(bitwiseNotOperatorWithBooleanType.ts, 10, 14)) |
| 23 | +>n : Symbol(n, Decl(bitwiseNotOperatorWithBooleanType.ts, 11, 14)) |
23 | 24 | }
|
24 | 25 |
|
25 | 26 | var objA = new A();
|
26 |
| ->objA : Symbol(objA, Decl(bitwiseNotOperatorWithBooleanType.ts, 13, 3)) |
27 |
| ->A : Symbol(A, Decl(bitwiseNotOperatorWithBooleanType.ts, 3, 40)) |
| 27 | +>objA : Symbol(objA, Decl(bitwiseNotOperatorWithBooleanType.ts, 14, 3)) |
| 28 | +>A : Symbol(A, Decl(bitwiseNotOperatorWithBooleanType.ts, 4, 40)) |
28 | 29 |
|
29 | 30 | // boolean type var
|
30 | 31 | var ResultIsNumber1 = ~BOOLEAN;
|
31 |
| ->ResultIsNumber1 : Symbol(ResultIsNumber1, Decl(bitwiseNotOperatorWithBooleanType.ts, 16, 3)) |
32 |
| ->BOOLEAN : Symbol(BOOLEAN, Decl(bitwiseNotOperatorWithBooleanType.ts, 1, 3)) |
| 32 | +>ResultIsNumber1 : Symbol(ResultIsNumber1, Decl(bitwiseNotOperatorWithBooleanType.ts, 17, 3)) |
| 33 | +>BOOLEAN : Symbol(BOOLEAN, Decl(bitwiseNotOperatorWithBooleanType.ts, 2, 3)) |
33 | 34 |
|
34 | 35 | // boolean type literal
|
35 | 36 | var ResultIsNumber2 = ~true;
|
36 |
| ->ResultIsNumber2 : Symbol(ResultIsNumber2, Decl(bitwiseNotOperatorWithBooleanType.ts, 19, 3)) |
| 37 | +>ResultIsNumber2 : Symbol(ResultIsNumber2, Decl(bitwiseNotOperatorWithBooleanType.ts, 20, 3)) |
37 | 38 |
|
38 | 39 | var ResultIsNumber3 = ~{ x: true, y: false };
|
39 |
| ->ResultIsNumber3 : Symbol(ResultIsNumber3, Decl(bitwiseNotOperatorWithBooleanType.ts, 20, 3)) |
40 |
| ->x : Symbol(x, Decl(bitwiseNotOperatorWithBooleanType.ts, 20, 24)) |
41 |
| ->y : Symbol(y, Decl(bitwiseNotOperatorWithBooleanType.ts, 20, 33)) |
| 40 | +>ResultIsNumber3 : Symbol(ResultIsNumber3, Decl(bitwiseNotOperatorWithBooleanType.ts, 21, 3)) |
| 41 | +>x : Symbol(x, Decl(bitwiseNotOperatorWithBooleanType.ts, 21, 24)) |
| 42 | +>y : Symbol(y, Decl(bitwiseNotOperatorWithBooleanType.ts, 21, 33)) |
42 | 43 |
|
43 | 44 | // boolean type expressions
|
44 | 45 | var ResultIsNumber4 = ~objA.a;
|
45 |
| ->ResultIsNumber4 : Symbol(ResultIsNumber4, Decl(bitwiseNotOperatorWithBooleanType.ts, 23, 3)) |
46 |
| ->objA.a : Symbol(A.a, Decl(bitwiseNotOperatorWithBooleanType.ts, 5, 9)) |
47 |
| ->objA : Symbol(objA, Decl(bitwiseNotOperatorWithBooleanType.ts, 13, 3)) |
48 |
| ->a : Symbol(A.a, Decl(bitwiseNotOperatorWithBooleanType.ts, 5, 9)) |
| 46 | +>ResultIsNumber4 : Symbol(ResultIsNumber4, Decl(bitwiseNotOperatorWithBooleanType.ts, 24, 3)) |
| 47 | +>objA.a : Symbol(A.a, Decl(bitwiseNotOperatorWithBooleanType.ts, 6, 9)) |
| 48 | +>objA : Symbol(objA, Decl(bitwiseNotOperatorWithBooleanType.ts, 14, 3)) |
| 49 | +>a : Symbol(A.a, Decl(bitwiseNotOperatorWithBooleanType.ts, 6, 9)) |
49 | 50 |
|
50 | 51 | var ResultIsNumber5 = ~M.n;
|
51 |
| ->ResultIsNumber5 : Symbol(ResultIsNumber5, Decl(bitwiseNotOperatorWithBooleanType.ts, 24, 3)) |
52 |
| ->M.n : Symbol(M.n, Decl(bitwiseNotOperatorWithBooleanType.ts, 10, 14)) |
53 |
| ->M : Symbol(M, Decl(bitwiseNotOperatorWithBooleanType.ts, 8, 1)) |
54 |
| ->n : Symbol(M.n, Decl(bitwiseNotOperatorWithBooleanType.ts, 10, 14)) |
| 52 | +>ResultIsNumber5 : Symbol(ResultIsNumber5, Decl(bitwiseNotOperatorWithBooleanType.ts, 25, 3)) |
| 53 | +>M.n : Symbol(M.n, Decl(bitwiseNotOperatorWithBooleanType.ts, 11, 14)) |
| 54 | +>M : Symbol(M, Decl(bitwiseNotOperatorWithBooleanType.ts, 9, 1)) |
| 55 | +>n : Symbol(M.n, Decl(bitwiseNotOperatorWithBooleanType.ts, 11, 14)) |
55 | 56 |
|
56 | 57 | var ResultIsNumber6 = ~foo();
|
57 |
| ->ResultIsNumber6 : Symbol(ResultIsNumber6, Decl(bitwiseNotOperatorWithBooleanType.ts, 25, 3)) |
58 |
| ->foo : Symbol(foo, Decl(bitwiseNotOperatorWithBooleanType.ts, 1, 21)) |
| 58 | +>ResultIsNumber6 : Symbol(ResultIsNumber6, Decl(bitwiseNotOperatorWithBooleanType.ts, 26, 3)) |
| 59 | +>foo : Symbol(foo, Decl(bitwiseNotOperatorWithBooleanType.ts, 2, 21)) |
59 | 60 |
|
60 | 61 | var ResultIsNumber7 = ~A.foo();
|
61 |
| ->ResultIsNumber7 : Symbol(ResultIsNumber7, Decl(bitwiseNotOperatorWithBooleanType.ts, 26, 3)) |
62 |
| ->A.foo : Symbol(A.foo, Decl(bitwiseNotOperatorWithBooleanType.ts, 6, 22)) |
63 |
| ->A : Symbol(A, Decl(bitwiseNotOperatorWithBooleanType.ts, 3, 40)) |
64 |
| ->foo : Symbol(A.foo, Decl(bitwiseNotOperatorWithBooleanType.ts, 6, 22)) |
| 62 | +>ResultIsNumber7 : Symbol(ResultIsNumber7, Decl(bitwiseNotOperatorWithBooleanType.ts, 27, 3)) |
| 63 | +>A.foo : Symbol(A.foo, Decl(bitwiseNotOperatorWithBooleanType.ts, 7, 22)) |
| 64 | +>A : Symbol(A, Decl(bitwiseNotOperatorWithBooleanType.ts, 4, 40)) |
| 65 | +>foo : Symbol(A.foo, Decl(bitwiseNotOperatorWithBooleanType.ts, 7, 22)) |
65 | 66 |
|
66 | 67 | // multiple ~ operators
|
67 | 68 | var ResultIsNumber8 = ~~BOOLEAN;
|
68 |
| ->ResultIsNumber8 : Symbol(ResultIsNumber8, Decl(bitwiseNotOperatorWithBooleanType.ts, 29, 3)) |
69 |
| ->BOOLEAN : Symbol(BOOLEAN, Decl(bitwiseNotOperatorWithBooleanType.ts, 1, 3)) |
| 69 | +>ResultIsNumber8 : Symbol(ResultIsNumber8, Decl(bitwiseNotOperatorWithBooleanType.ts, 30, 3)) |
| 70 | +>BOOLEAN : Symbol(BOOLEAN, Decl(bitwiseNotOperatorWithBooleanType.ts, 2, 3)) |
70 | 71 |
|
71 | 72 | // miss assignment operators
|
72 | 73 | ~true;
|
73 | 74 | ~BOOLEAN;
|
74 |
| ->BOOLEAN : Symbol(BOOLEAN, Decl(bitwiseNotOperatorWithBooleanType.ts, 1, 3)) |
| 75 | +>BOOLEAN : Symbol(BOOLEAN, Decl(bitwiseNotOperatorWithBooleanType.ts, 2, 3)) |
75 | 76 |
|
76 | 77 | ~foo();
|
77 |
| ->foo : Symbol(foo, Decl(bitwiseNotOperatorWithBooleanType.ts, 1, 21)) |
| 78 | +>foo : Symbol(foo, Decl(bitwiseNotOperatorWithBooleanType.ts, 2, 21)) |
78 | 79 |
|
79 | 80 | ~true, false;
|
80 | 81 | ~objA.a;
|
81 |
| ->objA.a : Symbol(A.a, Decl(bitwiseNotOperatorWithBooleanType.ts, 5, 9)) |
82 |
| ->objA : Symbol(objA, Decl(bitwiseNotOperatorWithBooleanType.ts, 13, 3)) |
83 |
| ->a : Symbol(A.a, Decl(bitwiseNotOperatorWithBooleanType.ts, 5, 9)) |
| 82 | +>objA.a : Symbol(A.a, Decl(bitwiseNotOperatorWithBooleanType.ts, 6, 9)) |
| 83 | +>objA : Symbol(objA, Decl(bitwiseNotOperatorWithBooleanType.ts, 14, 3)) |
| 84 | +>a : Symbol(A.a, Decl(bitwiseNotOperatorWithBooleanType.ts, 6, 9)) |
84 | 85 |
|
85 | 86 | ~M.n;
|
86 |
| ->M.n : Symbol(M.n, Decl(bitwiseNotOperatorWithBooleanType.ts, 10, 14)) |
87 |
| ->M : Symbol(M, Decl(bitwiseNotOperatorWithBooleanType.ts, 8, 1)) |
88 |
| ->n : Symbol(M.n, Decl(bitwiseNotOperatorWithBooleanType.ts, 10, 14)) |
| 87 | +>M.n : Symbol(M.n, Decl(bitwiseNotOperatorWithBooleanType.ts, 11, 14)) |
| 88 | +>M : Symbol(M, Decl(bitwiseNotOperatorWithBooleanType.ts, 9, 1)) |
| 89 | +>n : Symbol(M.n, Decl(bitwiseNotOperatorWithBooleanType.ts, 11, 14)) |
89 | 90 |
|
0 commit comments