1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
|
=== tests/cases/conformance/expressions/unaryOperators/incrementOperator/incrementOperatorWithEnumTypeInvalidOperations.ts ===
// ++ operator on enum type
enum ENUM { };
>ENUM : ENUM
enum ENUM1 { A, B, "" };
>ENUM1 : ENUM1
>A : ENUM1.A
>B : ENUM1.B
>"" : ENUM1.
// enum type var
var ResultIsNumber1 = ++ENUM;
>ResultIsNumber1 : number
>++ENUM : number
>ENUM : any
var ResultIsNumber2 = ++ENUM1;
>ResultIsNumber2 : number
>++ENUM1 : number
>ENUM1 : any
var ResultIsNumber3 = ENUM++;
>ResultIsNumber3 : number
>ENUM++ : number
>ENUM : any
var ResultIsNumber4 = ENUM1++;
>ResultIsNumber4 : number
>ENUM1++ : number
>ENUM1 : any
// enum type expressions
var ResultIsNumber5 = ++(ENUM[1] + ENUM[2]);
>ResultIsNumber5 : number
>++(ENUM[1] + ENUM[2]) : number
>(ENUM[1] + ENUM[2]) : string
>ENUM[1] + ENUM[2] : string
>ENUM[1] : string
>ENUM : typeof ENUM
>1 : 1
>ENUM[2] : string
>ENUM : typeof ENUM
>2 : 2
var ResultIsNumber6 = (ENUM[1] + ENUM[2])++;
>ResultIsNumber6 : number
>(ENUM[1] + ENUM[2])++ : number
>(ENUM[1] + ENUM[2]) : string
>ENUM[1] + ENUM[2] : string
>ENUM[1] : string
>ENUM : typeof ENUM
>1 : 1
>ENUM[2] : string
>ENUM : typeof ENUM
>2 : 2
// miss assignment operator
++ENUM;
>++ENUM : number
>ENUM : any
++ENUM1;
>++ENUM1 : number
>ENUM1 : any
ENUM++;
>ENUM++ : number
>ENUM : any
ENUM1++;
>ENUM1++ : number
>ENUM1 : any
|