import { bs } from "../../../modules/as-bs"; import { COMMA, BRACKET_RIGHT, BRACKET_LEFT } from "../../custom/chars"; import { JSON } from "../.."; export function serializeArray(src: T): void { const end = src.length - 1; let i = 0; if (end == -1) { bs.ensureSize(4); store(bs.offset, 6094939); bs.offset += 4; return; } bs.ensureSize(end << 3); store(bs.offset, BRACKET_LEFT); bs.offset += 2; while (i < end) { const block = unchecked(src[i++]); JSON.__serialize>(block); bs.ensureSize(2); store(bs.offset, COMMA); bs.offset += 2; } const lastBlock = unchecked(src[end]); JSON.__serialize>(lastBlock); bs.ensureSize(2); store(bs.offset, BRACKET_RIGHT); bs.offset += 2; }