lib/tumblr.js
function createFunction(name, args, fn) {
    if (isFunction(args)) {
        fn = args;
        args = [];
    }

    return new Function('body',
        'return function ' + name + '(' + args.join(', ') + ') { return body.apply(this, arguments); };'
    )(fn);
}
function createFunction(name, args, fn) {
    if (isFunction(args)) {
        fn = args;
        args = [];
    }

    return new Function('body',
        'return function ' + name + '(' + args.join(', ') + ') { return body.apply(this, arguments); };'
    )(fn);
}
function createFunction ( name , args , fn ) { if ( isFunction ( args ) ) { fn = args ; args = [ ] ; } return new Function ( 'body' , 'return function ' + name + '(' + args . join ( ', ' ) + ') { return body.apply(this, arguments); };' ) ( fn ) ; }
Creates a named function with the desired signature

@param  {string} name - function name
@param  {Array} [args] - array of argument names
@param  {Function} fn - function that contains the logic that should run

@return {Function} a named function that takes the desired arguments

@private
Creates a named function with the desired signature