function generate(node, ctx) {
	codegenContext = ctx;
	// TODO: infer `indent` option from ctx.source
	return astring.generate(node, {
		generator: codeGenerator
	});
}
@param {Node} node
@param {ReturnType<typeof createContext>} [ctx]