Js.Array2
Provide bindings to Js array
JavaScript Array API
let from: array_like('a) => array('a);
let fromMap: array_like('a) => ('a => 'b) => array('b);
let pop: t('a) => option('a);
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/push
let push: t('a) => 'a => int;
let pushMany: t('a) => array('a) => int;
let shift: t('a) => option('a);
let unshift: t('a) => 'a => int;
let unshiftMany: t('a) => array('a) => int;
let includes: t('a) => 'a => bool;
ES2016
let indexOf: t('a) => 'a => int;
let indexOfFrom: t('a) => 'a => from:int => int;
let joinWith: t('a) => string => string;
let lastIndexOf: t('a) => 'a => int;
let lastIndexOfFrom: t('a) => 'a => from:int => int;
let toString: t('a) => string;
let toLocaleString: t('a) => string;
let every: t('a) => ('a => bool) => bool;
let everyi: t('a) => ('a => int => bool) => bool;
should we use bool
or boolean
seems they are intechangeable here
let find: t('a) => ('a => bool) => option('a);
let findi: t('a) => ('a => int => bool) => option('a);
let findIndex: t('a) => ('a => bool) => int;
let findIndexi: t('a) => ('a => int => bool) => int;
let forEach: t('a) => ('a => unit) => unit;
let forEachi: t('a) => ('a => int => unit) => unit;
let reduce: t('a) => ('b => 'a => 'b) => 'b => 'b;
let reducei: t('a) => ('b => 'a => int => 'b) => 'b => 'b;
let reduceRight: t('a) => ('b => 'a => 'b) => 'b => 'b;
let reduceRighti: t('a) => ('b => 'a => int => 'b) => 'b => 'b;
let some: t('a) => ('a => bool) => bool;
let somei: t('a) => ('a => int => bool) => bool;