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 19 20 21 22 23 | 19x 19x 1x 1x 1x 1x 2x 2x 1x 1x 1x 2x 1x | import { define } from "../define"; import { MapFactory, GetType } from "../types"; export const map: MapFactory = (keySd, valueSd, headSd) => define( (ctx, data) => { const { length } = Object.keys(data); headSd.ser(ctx, length); for (const key in data) { keySd.ser(ctx, key); valueSd.ser(ctx, data[key]); } }, (ctx) => { const length = headSd.des(ctx); const data: Record<string, GetType<typeof valueSd>> = {}; for (let i = 0; i < length; i++) { data[keySd.des(ctx)] = valueSd.des(ctx); } return data; } ); |