All files / src/decoders function.ts

100% Statements 7/7
100% Branches 2/2
100% Functions 1/1
100% Lines 7/7

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      4x 4x 4x 2x     4x 4x 4x    
import { DecodeContext } from '../decode';
 
export function decodeFunction(context: DecodeContext): Function {
	const { reader, links } = context;
	let code = reader.readString();
	if (code.indexOf('function') === -1) {
		code = `function ${code}`;
	}
	// eslint-disable-next-line no-eval
	const func = eval(`(${code})`);
	links.push(func);
	return func;
}