retainEnclosingFunction(node) {
		const functionNode = astUtils.getUpperFunction(node);

		return this.retainRange(
			functionNode ? functionNode.range : this.sourceCode.ast.range,
		);
	}
Given a node, find the function containing it (or the entire program) and
mark it as retained, meaning that other fixes may not modify it in this
pass. This is useful for avoiding conflicts in fixes that modify control
flow.
@param {ASTNode} node The node to use as a starting point.
@returns {FixTracker} The same RuleFixer, for chained calls.