99 lines
2.1 KiB
Plaintext
99 lines
2.1 KiB
Plaintext
exports[`test Arrays.js 1`] = `
|
|
"
|
|
/* @providesModule Arrays */
|
|
|
|
function foo(x:string) { }
|
|
|
|
var a = [];
|
|
a[0] = 1;
|
|
a[1] = \"...\";
|
|
|
|
foo(a[1]);
|
|
var y;
|
|
a.forEach(x => y=x);
|
|
|
|
// for literals, composite element type is union of individuals
|
|
// note: test both tuple and non-tuple inferred literals
|
|
var alittle: Array<?number> = [0, 1, 2, 3, null];
|
|
var abig: Array<?number> = [0, 1, 2, 3, 4, 5, 6, 8, null];
|
|
|
|
var abig2: Array<{x:number; y:number}> = [
|
|
{x:0, y:0},
|
|
{x:0, y:0},
|
|
{x:0, y:0},
|
|
{x:0, y:0},
|
|
{x:0, y:0},
|
|
{x:0, y:0},
|
|
{x:0, y:0},
|
|
{x:0, y:0},
|
|
{x:0, y:0},
|
|
{x:0, y:0},
|
|
{x:0, y:0},
|
|
{x:0, y:0},
|
|
{x:0, y:0},
|
|
{x:0, y:0, a:true},
|
|
{x:0, y:0, b:\"hey\"},
|
|
{x:0, y:0, c:1},
|
|
{x:0, y:0, c:\"hey\"}
|
|
];
|
|
|
|
module.exports = \"arrays\";
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/* @providesModule Arrays */
|
|
|
|
function foo(x: string) {}
|
|
|
|
var a = [];
|
|
a[0] = 1;
|
|
a[1] = \"...\";
|
|
|
|
foo(a[1]);
|
|
var y;
|
|
a.forEach(x => y = x);
|
|
|
|
// for literals, composite element type is union of individuals
|
|
// note: test both tuple and non-tuple inferred literals
|
|
var alittle: Array<?number> = [ 0, 1, 2, 3, null ];
|
|
var abig: Array<?number> = [ 0, 1, 2, 3, 4, 5, 6, 8, null ];
|
|
|
|
var abig2: Array<{ x: number, y: number }> = [
|
|
{ x: 0, y: 0 },
|
|
{ x: 0, y: 0 },
|
|
{ x: 0, y: 0 },
|
|
{ x: 0, y: 0 },
|
|
{ x: 0, y: 0 },
|
|
{ x: 0, y: 0 },
|
|
{ x: 0, y: 0 },
|
|
{ x: 0, y: 0 },
|
|
{ x: 0, y: 0 },
|
|
{ x: 0, y: 0 },
|
|
{ x: 0, y: 0 },
|
|
{ x: 0, y: 0 },
|
|
{ x: 0, y: 0 },
|
|
{ x: 0, y: 0, a: true },
|
|
{ x: 0, y: 0, b: \"hey\" },
|
|
{ x: 0, y: 0, c: 1 },
|
|
{ x: 0, y: 0, c: \"hey\" }
|
|
];
|
|
|
|
module.exports = \"arrays\";"
|
|
`;
|
|
|
|
exports[`test numeric_elem.js 1`] = `
|
|
"var arr = [];
|
|
var day = new Date;
|
|
|
|
// Date instances are numeric (see Flow_js.numeric) and thus can index into
|
|
// arrays.
|
|
arr[day] = 0;
|
|
(arr[day]: string); // error: number ~> string
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
var arr = [];
|
|
var day = new Date();
|
|
|
|
// Date instances are numeric (see Flow_js.numeric) and thus can index into
|
|
// arrays.
|
|
arr[day] = 0;
|
|
(arr[day]: string); // error: number ~> string"
|
|
`;
|