Sha256: 7c35051b5f44912fcfac1e1400296a06da1c76f61843f27a2e09d34fcfc4d649
Contents?: true
Size: 1.16 KB
Versions: 14
Compression:
Stored size: 1.16 KB
Contents
'use strict'; var normalizeOpts = require('es5-ext/object/normalize-options') , resolveLength = require('./lib/resolve-length') , plain = require('./plain'); module.exports = function (fn/*, options*/) { var options = normalizeOpts(arguments[1]), length; if (!options.normalizer) { length = options.length = resolveLength(options.length, fn.length, options.async); if (length !== 0) { if (options.primitive) { if (length === false) { options.normalizer = require('./normalizers/primitive'); } else if (length > 1) { options.normalizer = require('./normalizers/get-primitive-fixed')(length); } } else { if (length === false) options.normalizer = require('./normalizers/get')(); else if (length === 1) options.normalizer = require('./normalizers/get-1')(); else options.normalizer = require('./normalizers/get-fixed')(length); } } } // Assure extensions if (options.async) require('./ext/async'); if (options.dispose) require('./ext/dispose'); if (options.maxAge) require('./ext/max-age'); if (options.max) require('./ext/max'); if (options.refCounter) require('./ext/ref-counter'); return plain(fn, options); };
Version data entries
14 entries across 7 versions & 1 rubygems