import { nat } from "./primitives.js"; export function insertBetween(array : T[], element : T) : T[] { return array.flatMap((item, index) => index === 0 ? [item] : [element, item] ); } export function insert(arr : E[], at : nat, elems : E[]) : E[] { return [ ...arr.slice(0, at), ...elems, ...arr.slice(at) ]; } export function splice(arr : E[], at : nat, deleteCount : nat, elems : E[]) : E[] { return [ ...arr.slice(0, at), ...elems, ...arr.slice(at + deleteCount) ]; } export function last(arr : E[]) : E { return arr[arr.length - 1]; }