lib/reflect.js
function() {
    var trap = this.getTrap("isFrozen");
    if (trap === undefined) {
      // default forwarding behavior
      return Reflect.isFrozen(this.target);
    }

    var result = trap.call(this.handler, this.target);
    result = !!result; // coerce to Boolean
    var state = Object_isFrozen(this.target);
    if (result !== state) {
      if (result) {
        throw new TypeError("cannot report unfrozen object as frozen: "+
                             this.target);
      } else {
        throw new TypeError("cannot report frozen object as unfrozen: "+
                             this.target);
      }
    }
    return state;
  }
function() {
    var trap = this.getTrap("isFrozen");
    if (trap === undefined) {
      // default forwarding behavior
      return Reflect.isFrozen(this.target);
    }

    var result = trap.call(this.handler, this.target);
    result = !!result; // coerce to Boolean
    var state = Object_isFrozen(this.target);
    if (result !== state) {
      if (result) {
        throw new TypeError("cannot report unfrozen object as frozen: "+
                             this.target);
      } else {
        throw new TypeError("cannot report frozen object as unfrozen: "+
                             this.target);
      }
    }
    return state;
  }
function ( ) { var trap = this . getTrap ( "isFrozen" ) ; if ( trap === undefined ) { // default forwarding behavior return Reflect . isFrozen ( this . target ) ; } var result = trap . call ( this . handler , this . target ) ; result = ! ! result ; // coerce to Boolean var state = Object_isFrozen ( this . target ) ; if ( result !== state ) { if ( result ) { throw new TypeError ( "cannot report unfrozen object as frozen: " + this . target ) ; } else { throw new TypeError ( "cannot report frozen object as unfrozen: " + this . target ) ; } } return state ; }
Checks whether the trap result is consistent with the state of the
wrapped target.
Checks whether the trap result is consistent with the state of the wrapped target .