diff options
Diffstat (limited to 'node_modules/when/lib/state.js')
-rw-r--r-- | node_modules/when/lib/state.js | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/node_modules/when/lib/state.js b/node_modules/when/lib/state.js new file mode 100644 index 000000000..6dbd47ded --- /dev/null +++ b/node_modules/when/lib/state.js @@ -0,0 +1,35 @@ +/** @license MIT License (c) copyright 2010-2014 original author or authors */ +/** @author Brian Cavalier */ +/** @author John Hann */ + +(function(define) { 'use strict'; +define(function() { + + return { + pending: toPendingState, + fulfilled: toFulfilledState, + rejected: toRejectedState, + inspect: inspect + }; + + function toPendingState() { + return { state: 'pending' }; + } + + function toRejectedState(e) { + return { state: 'rejected', reason: e }; + } + + function toFulfilledState(x) { + return { state: 'fulfilled', value: x }; + } + + function inspect(handler) { + var state = handler.state(); + return state === 0 ? toPendingState() + : state > 0 ? toFulfilledState(handler.value) + : toRejectedState(handler.value); + } + +}); +}(typeof define === 'function' && define.amd ? define : function(factory) { module.exports = factory(); })); |