Sha256: 0931ef61bd9f9ddae6a46067732ee747fe694c5f690c5dc5189588cdef251197

Contents?: true

Size: 931 Bytes

Versions: 277

Compression:

Stored size: 931 Bytes

Contents

var apply = require('./_apply'),
    baseRest = require('./_baseRest'),
    isError = require('./isError');

/**
 * Attempts to invoke `func`, returning either the result or the caught error
 * object. Any additional arguments are provided to `func` when it's invoked.
 *
 * @static
 * @memberOf _
 * @since 3.0.0
 * @category Util
 * @param {Function} func The function to attempt.
 * @param {...*} [args] The arguments to invoke `func` with.
 * @returns {*} Returns the `func` result or error object.
 * @example
 *
 * // Avoid throwing errors for invalid selectors.
 * var elements = _.attempt(function(selector) {
 *   return document.querySelectorAll(selector);
 * }, '>_>');
 *
 * if (_.isError(elements)) {
 *   elements = [];
 * }
 */
var attempt = baseRest(function(func, args) {
  try {
    return apply(func, undefined, args);
  } catch (e) {
    return isError(e) ? e : new Error(e);
  }
});

module.exports = attempt;

Version data entries

277 entries across 275 versions & 31 rubygems

Version Path
rapid_stack-0.2.0 templates/frontend/node_modules/lodash/attempt.js
rapid_stack-0.1.1 templates/FrontEnd/node_modules/lodash/attempt.js
rapid_stack-0.1.0 templates/FrontEnd/node_modules/lodash/attempt.js
immosquare-cleaner-0.1.60 node_modules/lodash/attempt.js
immosquare-cleaner-0.1.59 node_modules/lodash/attempt.js
immosquare-cleaner-0.1.58 node_modules/lodash/attempt.js
immosquare-cleaner-0.1.57 node_modules/lodash/attempt.js
immosquare-cleaner-0.1.56 node_modules/lodash/attempt.js
immosquare-cleaner-0.1.55 node_modules/lodash/attempt.js
immosquare-cleaner-0.1.54 node_modules/lodash/attempt.js
immosquare-cleaner-0.1.53 node_modules/lodash/attempt.js
immosquare-cleaner-0.1.52 node_modules/lodash/attempt.js
trusty-cms-6.3.1 node_modules/lodash/attempt.js
immosquare-cleaner-0.1.51 node_modules/lodash/attempt.js
boring_generators-0.15.0 tmp/templates/app_template/node_modules/lodash/attempt.js
clapton-0.0.26 lib/clapton/javascripts/node_modules/lodash/attempt.js
clapton-0.0.25 lib/clapton/javascripts/node_modules/lodash/attempt.js
immosquare-cleaner-0.1.50 node_modules/lodash/attempt.js
clapton-0.0.24 lib/clapton/javascripts/node_modules/lodash/attempt.js
clapton-0.0.23 lib/clapton/javascripts/node_modules/lodash/attempt.js