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);
}
}

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 ) ; } }
generates the instructions to unbox the top stack value . this value is replaced by its unboxed equivalent on top of the stack .
