Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | 19x 2x 1x 1x 1x 2x 1x | import { AsyncOptionalMaker } from "../types"; export const asyncOptional: AsyncOptionalMaker = (typer) => ({ async encode(ctx, data) { if (data == undefined) { ctx.view.setUint8(ctx.i++, 0); } else { ctx.view.setUint8(ctx.i++, 1); await typer.encode(ctx, data); } }, async decode(ctx) { if (ctx.view.getUint8(ctx.i++)) { return await typer.decode(ctx); } } }); |