mirror of
https://github.com/musix-org/musix-oss
synced 2024-12-23 22:33:17 +00:00
36 lines
853 B
JavaScript
36 lines
853 B
JavaScript
|
/** @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(); }));
|