| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 | 
							- "use strict";
 
- module.exports = function(Promise) {
 
- function PromiseInspection(promise) {
 
-     if (promise !== undefined) {
 
-         promise = promise._target();
 
-         this._bitField = promise._bitField;
 
-         this._settledValueField = promise._isFateSealed()
 
-             ? promise._settledValue() : undefined;
 
-     }
 
-     else {
 
-         this._bitField = 0;
 
-         this._settledValueField = undefined;
 
-     }
 
- }
 
- PromiseInspection.prototype._settledValue = function() {
 
-     return this._settledValueField;
 
- };
 
- var value = PromiseInspection.prototype.value = function () {
 
-     if (!this.isFulfilled()) {
 
-         throw new TypeError("cannot get fulfillment value of a non-fulfilled promise\u000a\u000a    See http://goo.gl/MqrFmX\u000a");
 
-     }
 
-     return this._settledValue();
 
- };
 
- var reason = PromiseInspection.prototype.error =
 
- PromiseInspection.prototype.reason = function () {
 
-     if (!this.isRejected()) {
 
-         throw new TypeError("cannot get rejection reason of a non-rejected promise\u000a\u000a    See http://goo.gl/MqrFmX\u000a");
 
-     }
 
-     return this._settledValue();
 
- };
 
- var isFulfilled = PromiseInspection.prototype.isFulfilled = function() {
 
-     return (this._bitField & 33554432) !== 0;
 
- };
 
- var isRejected = PromiseInspection.prototype.isRejected = function () {
 
-     return (this._bitField & 16777216) !== 0;
 
- };
 
- var isPending = PromiseInspection.prototype.isPending = function () {
 
-     return (this._bitField & 50397184) === 0;
 
- };
 
- var isResolved = PromiseInspection.prototype.isResolved = function () {
 
-     return (this._bitField & 50331648) !== 0;
 
- };
 
- PromiseInspection.prototype.isCancelled = function() {
 
-     return (this._bitField & 8454144) !== 0;
 
- };
 
- Promise.prototype.__isCancelled = function() {
 
-     return (this._bitField & 65536) === 65536;
 
- };
 
- Promise.prototype._isCancelled = function() {
 
-     return this._target().__isCancelled();
 
- };
 
- Promise.prototype.isCancelled = function() {
 
-     return (this._target()._bitField & 8454144) !== 0;
 
- };
 
- Promise.prototype.isPending = function() {
 
-     return isPending.call(this._target());
 
- };
 
- Promise.prototype.isRejected = function() {
 
-     return isRejected.call(this._target());
 
- };
 
- Promise.prototype.isFulfilled = function() {
 
-     return isFulfilled.call(this._target());
 
- };
 
- Promise.prototype.isResolved = function() {
 
-     return isResolved.call(this._target());
 
- };
 
- Promise.prototype.value = function() {
 
-     return value.call(this._target());
 
- };
 
- Promise.prototype.reason = function() {
 
-     var target = this._target();
 
-     target._unsetRejectionIsUnhandled();
 
-     return reason.call(target);
 
- };
 
- Promise.prototype._value = function() {
 
-     return this._settledValue();
 
- };
 
- Promise.prototype._reason = function() {
 
-     this._unsetRejectionIsUnhandled();
 
-     return this._settledValue();
 
- };
 
- Promise.PromiseInspection = PromiseInspection;
 
- };
 
 
  |