code: public void unbox(final Type type) {
          Type t = NUMBER_TYPE;
          Method sig = null;
          switch (type.getSort()) {
          case Type.VOID:
              return;
          case Type.CHAR:
              t = CHARACTER_TYPE;
              sig = CHAR_VALUE;
              break;
          case Type.BOOLEAN:
              t = BOOLEAN_TYPE;
              sig = BOOLEAN_VALUE;
              break;
          case Type.DOUBLE:
              sig = DOUBLE_VALUE;
              break;
          case Type.FLOAT:
              sig = FLOAT_VALUE;
              break;
          case Type.LONG:
              sig = LONG_VALUE;
              break;
          case Type.INT:
          case Type.SHORT:
          case Type.BYTE:
              sig = INT_VALUE;
          }
          if (sig == null) {
              checkCast(type);
          } else {
              checkCast(t);
              invokeVirtual(t, sig);
          }
      }
docs: Generates the instructions to unbox the top stack value. This value is
  replaced by its unboxed equivalent on top of the stack.
  
  @param type
  the type of the top stack value.