lib/utils/source-code-utils.js
function(node, beforeCount, afterCount) {
        let sourceCodeText = this.text;

        if (node) {
            if (astUtils.isASTNode(node)) {

                return this.text.slice(
                    Math.max(0, node.start - (Math.abs(beforeCount) || 0)),
                    node.end + (Math.abs(afterCount) || 0)
                );

            }
			
            throw new Error("Invalid Node object");
        }

        return sourceCodeText;
    }
function(node, beforeCount, afterCount) {
        let sourceCodeText = this.text;

        if (node) {
            if (astUtils.isASTNode(node)) {

                return this.text.slice(
                    Math.max(0, node.start - (Math.abs(beforeCount) || 0)),
                    node.end + (Math.abs(afterCount) || 0)
                );

            }
			
            throw new Error("Invalid Node object");
        }

        return sourceCodeText;
    }
Function to retrieve the source code text being linted. Returns the complete source code if no node specified
@param {Object} node The AST node whose source code (specifically) is needed
@param {int} beforeCount Include beforeCount number of characters prior to the node's code
@param {int} afterCount Include afterCount number of characters following the node's code
@returns {String} sourceCodeText source code of the specified node plus extra characters specified by beforeCount & afterCount