//// [incrementOperatorWithUnsupportedBooleanType.ts] // ++ operator on boolean type var BOOLEAN: boolean; function foo(): boolean { return true; } class A { public a: boolean; static foo() { return true; } } module M { export var n: boolean; } var objA = new A(); // boolean type var var ResultIsNumber1 = ++BOOLEAN; var ResultIsNumber2 = BOOLEAN++; // boolean type literal var ResultIsNumber3 = ++true; var ResultIsNumber4 = ++{ x: true, y: false }; var ResultIsNumber5 = ++{ x: true, y: (n: boolean) => { return n; } }; var ResultIsNumber6 = true++; var ResultIsNumber7 = { x: true, y: false }++; var ResultIsNumber8 = { x: true, y: (n: boolean) => { return n; } }++; // boolean type expressions var ResultIsNumber9 = ++objA.a; var ResultIsNumber10 = ++M.n; var ResultIsNumber11 = ++foo(); var ResultIsNumber12 = ++A.foo(); var ResultIsNumber13 = foo()++; var ResultIsNumber14 = A.foo()++; var ResultIsNumber15 = objA.a++; var ResultIsNumber16 = M.n++; // miss assignment operators ++true; ++BOOLEAN; ++foo(); ++objA.a; ++M.n; ++objA.a, M.n; true++; BOOLEAN++; foo()++; objA.a++; M.n++; objA.a++, M.n++; //// [incrementOperatorWithUnsupportedBooleanType.js] // ++ operator on boolean type var BOOLEAN; function foo() { return true; } var A = (function () { function A() { } A.foo = function () { return true; }; return A; })(); var M; (function (M) { M.n; })(M || (M = {})); var objA = new A(); // boolean type var var ResultIsNumber1 = ++BOOLEAN; var ResultIsNumber2 = BOOLEAN++; // boolean type literal var ResultIsNumber3 = ++true; var ResultIsNumber4 = ++{ x: true, y: false }; var ResultIsNumber5 = ++{ x: true, y: function (n) { return n; } }; var ResultIsNumber6 = true++; var ResultIsNumber7 = { x: true, y: false }++; var ResultIsNumber8 = { x: true, y: function (n) { return n; } }++; // boolean type expressions var ResultIsNumber9 = ++objA.a; var ResultIsNumber10 = ++M.n; var ResultIsNumber11 = ++foo(); var ResultIsNumber12 = ++A.foo(); var ResultIsNumber13 = foo()++; var ResultIsNumber14 = A.foo()++; var ResultIsNumber15 = objA.a++; var ResultIsNumber16 = M.n++; // miss assignment operators ++true; ++BOOLEAN; ++foo(); ++objA.a; ++M.n; ++objA.a, M.n; true++; BOOLEAN++; foo()++; objA.a++; M.n++; objA.a++, M.n++;