TypeScript/tests/baselines/reference/logicalNotOperatorWithEnumType.js

49 lines
1 KiB
JavaScript
Raw Normal View History

2014-07-13 01:04:16 +02:00
//// [logicalNotOperatorWithEnumType.ts]
// ! operator on enum type
enum ENUM { 1, 2, 3 };
enum ENUM1 { };
// enum type var
var ResultIsBoolean1 = !ENUM;
// enum type expressions
var ResultIsBoolean2 = !ENUM[1];
var ResultIsBoolean3 = !(ENUM[1] + ENUM[2]);
// multiple ! operators
var ResultIsBoolean4 = !!ENUM;
var ResultIsBoolean5 = !!!(ENUM[1] + ENUM[2]);
// miss assignment operators
!ENUM;
!ENUM1;
!ENUM[1];
!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["1"] = 0] = "1";
ENUM[ENUM["2"] = 1] = "2";
ENUM[ENUM["3"] = 2] = "3";
})(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
2014-07-13 01:04:16 +02:00
var ResultIsBoolean2 = !ENUM[1];
var ResultIsBoolean3 = !(ENUM[1] + ENUM[2]);
// multiple ! operators
2014-07-13 01:04:16 +02:00
var ResultIsBoolean4 = !!ENUM;
var ResultIsBoolean5 = !!!(ENUM[1] + ENUM[2]);
!ENUM;
!ENUM1;
!ENUM[1];
!ENUM, ENUM1;