X7ROOT File Manager
Current Path:
/lib/node_modules/npm/node_modules/bluebird/js/release
lib
/
node_modules
/
npm
/
node_modules
/
bluebird
/
js
/
release
/
??
..
??
any.js
(421 B)
??
assert.js
(1.61 KB)
??
async.js
(4.05 KB)
??
bind.js
(1.92 KB)
??
bluebird.js
(291 B)
??
call_get.js
(4.25 KB)
??
cancel.js
(3.62 KB)
??
catch_filter.js
(1.39 KB)
??
context.js
(2.33 KB)
??
debuggability.js
(29.63 KB)
??
direct_resolve.js
(1.36 KB)
??
each.js
(789 B)
??
errors.js
(3.63 KB)
??
es5.js
(1.93 KB)
??
filter.js
(314 B)
??
finally.js
(4.5 KB)
??
generators.js
(7.58 KB)
??
join.js
(8.03 KB)
??
map.js
(5.25 KB)
??
method.js
(1.73 KB)
??
nodeback.js
(1.52 KB)
??
nodeify.js
(1.61 KB)
??
promise.js
(25.59 KB)
??
promise_array.js
(5.08 KB)
??
promisify.js
(11.9 KB)
??
props.js
(3.04 KB)
??
queue.js
(1.83 KB)
??
race.js
(1.22 KB)
??
reduce.js
(5.01 KB)
??
schedule.js
(2.1 KB)
??
settle.js
(1.23 KB)
??
some.js
(3.87 KB)
??
synchronous_inspection.js
(2.75 KB)
??
thenables.js
(2.08 KB)
??
timers.js
(2.34 KB)
??
using.js
(7.35 KB)
??
util.js
(10.28 KB)
Editing: props.js
"use strict"; module.exports = function( Promise, PromiseArray, tryConvertToPromise, apiRejection) { var util = require("./util"); var isObject = util.isObject; var es5 = require("./es5"); var Es6Map; if (typeof Map === "function") Es6Map = Map; var mapToEntries = (function() { var index = 0; var size = 0; function extractEntry(value, key) { this[index] = value; this[index + size] = key; index++; } return function mapToEntries(map) { size = map.size; index = 0; var ret = new Array(map.size * 2); map.forEach(extractEntry, ret); return ret; }; })(); var entriesToMap = function(entries) { var ret = new Es6Map(); var length = entries.length / 2 | 0; for (var i = 0; i < length; ++i) { var key = entries[length + i]; var value = entries[i]; ret.set(key, value); } return ret; }; function PropertiesPromiseArray(obj) { var isMap = false; var entries; if (Es6Map !== undefined && obj instanceof Es6Map) { entries = mapToEntries(obj); isMap = true; } else { var keys = es5.keys(obj); var len = keys.length; entries = new Array(len * 2); for (var i = 0; i < len; ++i) { var key = keys[i]; entries[i] = obj[key]; entries[i + len] = key; } } this.constructor$(entries); this._isMap = isMap; this._init$(undefined, isMap ? -6 : -3); } util.inherits(PropertiesPromiseArray, PromiseArray); PropertiesPromiseArray.prototype._init = function () {}; PropertiesPromiseArray.prototype._promiseFulfilled = function (value, index) { this._values[index] = value; var totalResolved = ++this._totalResolved; if (totalResolved >= this._length) { var val; if (this._isMap) { val = entriesToMap(this._values); } else { val = {}; var keyOffset = this.length(); for (var i = 0, len = this.length(); i < len; ++i) { val[this._values[i + keyOffset]] = this._values[i]; } } this._resolve(val); return true; } return false; }; PropertiesPromiseArray.prototype.shouldCopyValues = function () { return false; }; PropertiesPromiseArray.prototype.getActualLength = function (len) { return len >> 1; }; function props(promises) { var ret; var castValue = tryConvertToPromise(promises); if (!isObject(castValue)) { return apiRejection("cannot await properties of a non-object\u000a\u000a See http://goo.gl/MqrFmX\u000a"); } else if (castValue instanceof Promise) { ret = castValue._then( Promise.props, undefined, undefined, undefined, undefined); } else { ret = new PropertiesPromiseArray(castValue).promise(); } if (castValue instanceof Promise) { ret._propagateFrom(castValue, 2); } return ret; } Promise.prototype.props = function () { return props(this); }; Promise.props = function (promises) { return props(promises); }; };
Upload File
Create Folder