TypeScript/tests/baselines/reference/logicalNotOperatorWithEnumType.js

50 lines
1 KiB
TypeScript
Raw Normal View History

2014-07-13 01:04:16 +02:00
//// [logicalNotOperatorWithEnumType.ts]
// ! operator on enum type
enum ENUM { A, B, C };
2014-07-13 01:04:16 +02:00
enum ENUM1 { };
// enum type var
var ResultIsBoolean1 = !ENUM;
// enum type expressions
2014-10-08 20:11:36 +02:00
var ResultIsBoolean2 = !ENUM["B"];
var ResultIsBoolean3 = !(ENUM.B + ENUM["C"]);
2014-07-13 01:04:16 +02:00
// multiple ! operators
var ResultIsBoolean4 = !!ENUM;
2014-10-08 20:11:36 +02:00
var ResultIsBoolean5 = !!!(ENUM["B"] + ENUM.C);
2014-07-13 01:04:16 +02:00
// miss assignment operators
!ENUM;
!ENUM1;
2014-10-08 20:11:36 +02:00
!ENUM.B;
2014-07-13 01:04:16 +02:00
!ENUM, ENUM1;
//// [logicalNotOperatorWithEnumType.js]
2014-08-14 15:48:40 +02:00
// ! operator on enum type
2014-07-13 01:04:16 +02:00
var ENUM;
(function (ENUM) {
ENUM[ENUM["A"] = 0] = "A";
ENUM[ENUM["B"] = 1] = "B";
ENUM[ENUM["C"] = 2] = "C";
2014-07-13 01:04:16 +02:00
})(ENUM || (ENUM = {}));
;
var ENUM1;
(function (ENUM1) {
})(ENUM1 || (ENUM1 = {}));
;
// enum type var
2014-07-13 01:04:16 +02:00
var ResultIsBoolean1 = !ENUM;
// enum type expressions
var ResultIsBoolean2 = !ENUM["B"];
var ResultIsBoolean3 = !(ENUM.B + ENUM["C"]);
// multiple ! operators
2014-07-13 01:04:16 +02:00
var ResultIsBoolean4 = !!ENUM;
var ResultIsBoolean5 = !!!(ENUM["B"] + ENUM.C);
// miss assignment operators
2014-07-13 01:04:16 +02:00
!ENUM;
!ENUM1;
!ENUM.B;
2014-07-13 01:04:16 +02:00
!ENUM, ENUM1;