TypeScript/tests/baselines/reference/negateOperatorWithAnyOtherType.types
2015-04-15 16:44:20 -07:00

196 lines
3.1 KiB
Plaintext

=== tests/cases/conformance/expressions/unaryOperators/negateOperator/negateOperatorWithAnyOtherType.ts ===
// - operator on any type
var ANY: any;
>ANY : any
var ANY1;
>ANY1 : any
var ANY2: any[] = ["", ""];
>ANY2 : any[]
>["", ""] : string[]
>"" : string
>"" : string
var obj: () => {}
>obj : () => {}
var obj1 = { x: "", y: () => { }};
>obj1 : { x: string; y: () => void; }
>{ x: "", y: () => { }} : { x: string; y: () => void; }
>x : string
>"" : string
>y : () => void
>() => { } : () => void
function foo(): any {
>foo : () => any
var a;
>a : any
return a;
>a : any
}
class A {
>A : A
public a: any;
>a : any
static foo() {
>foo : () => any
var a;
>a : any
return a;
>a : any
}
}
module M {
>M : typeof M
export var n: any;
>n : any
}
var objA = new A();
>objA : A
>new A() : A
>A : typeof A
// any type var
var ResultIsNumber1 = -ANY1;
>ResultIsNumber1 : number
>-ANY1 : number
>ANY1 : any
var ResultIsNumber2 = -ANY2;
>ResultIsNumber2 : number
>-ANY2 : number
>ANY2 : any[]
var ResultIsNumber3 = -A;
>ResultIsNumber3 : number
>-A : number
>A : typeof A
var ResultIsNumber4 = -M;
>ResultIsNumber4 : number
>-M : number
>M : typeof M
var ResultIsNumber5 = -obj;
>ResultIsNumber5 : number
>-obj : number
>obj : () => {}
var ResultIsNumber6 = -obj1;
>ResultIsNumber6 : number
>-obj1 : number
>obj1 : { x: string; y: () => void; }
// any type literal
var ResultIsNumber7 = -undefined;
>ResultIsNumber7 : number
>-undefined : number
>undefined : undefined
var ResultIsNumber = -null;
>ResultIsNumber : number
>-null : number
>null : null
// any type expressions
var ResultIsNumber8 = -ANY2[0];
>ResultIsNumber8 : number
>-ANY2[0] : number
>ANY2[0] : any
>ANY2 : any[]
>0 : number
var ResultIsNumber9 = -obj1.x;
>ResultIsNumber9 : number
>-obj1.x : number
>obj1.x : string
>obj1 : { x: string; y: () => void; }
>x : string
var ResultIsNumber10 = -obj1.y;
>ResultIsNumber10 : number
>-obj1.y : number
>obj1.y : () => void
>obj1 : { x: string; y: () => void; }
>y : () => void
var ResultIsNumber11 = -objA.a;
>ResultIsNumber11 : number
>-objA.a : number
>objA.a : any
>objA : A
>a : any
var ResultIsNumber12 = -M.n;
>ResultIsNumber12 : number
>-M.n : number
>M.n : any
>M : typeof M
>n : any
var ResultIsNumber13 = -foo();
>ResultIsNumber13 : number
>-foo() : number
>foo() : any
>foo : () => any
var ResultIsNumber14 = -A.foo();
>ResultIsNumber14 : number
>-A.foo() : number
>A.foo() : any
>A.foo : () => any
>A : typeof A
>foo : () => any
var ResultIsNumber15 = -(ANY - ANY1);
>ResultIsNumber15 : number
>-(ANY - ANY1) : number
>(ANY - ANY1) : number
>ANY - ANY1 : number
>ANY : any
>ANY1 : any
// miss assignment operators
-ANY;
>-ANY : number
>ANY : any
-ANY1;
>-ANY1 : number
>ANY1 : any
-ANY2[0];
>-ANY2[0] : number
>ANY2[0] : any
>ANY2 : any[]
>0 : number
-ANY, ANY1;
>-ANY, ANY1 : any
>-ANY : number
>ANY : any
>ANY1 : any
-objA.a;
>-objA.a : number
>objA.a : any
>objA : A
>a : any
-M.n;
>-M.n : number
>M.n : any
>M : typeof M
>n : any