All files / src/decoders map.ts

100% Statements 11/11
100% Branches 0/0
100% Functions 1/1
100% Lines 10/10

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        1x 1x 1x   1x 1x   1x 1x   1x 9x   1x    
import { DecodeContext } from '../decode';
import { decodeArrayGroups } from './array';
 
export function decodeMap(context: DecodeContext): Map<any, any> {
	const { links } = context;
	const map = new Map();
	links.push(map);
 
	const mapKeys: any[] = [];
	decodeArrayGroups(mapKeys, context);
 
	const mapValues: any[] = [];
	decodeArrayGroups(mapValues, context);
 
	for (let i = 0; i < mapKeys.length; i++) {
		map.set(mapKeys[i], mapValues[i]);
	}
	return map;
}