function getFirstArgument(fn) {
      return (!_.has(fn, 'toString') &&
        (/^[\s(]*function[^(]*\(([^\s,)]+)/.exec(fn) || 0)[1]) || '';
    }
Gets the name of the first argument from a function's source.

@private
@param {Function} fn The function.
@returns {string} The argument name.