code: static void unbox(GeneratorAdapter mg, Type type)
      {
          switch (type.getSort())
          {
              case Type.VOID:
                  return;
              case Type.BOOLEAN:
                  mg.visitTypeInsn(CHECKCAST, "java/lang/Boolean");
                  mg.visitMethodInsn(INVOKEVIRTUAL, "java/lang/Boolean",
                                     "booleanValue", "()Z");
                  break;
              case Type.CHAR:
                  mg.visitTypeInsn(CHECKCAST, "java/lang/Character");
                  mg.visitMethodInsn(INVOKEVIRTUAL, "java/lang/Character",
                                     "charValue", "()C");
                  break;
              case Type.BYTE:
                  mg.visitTypeInsn(CHECKCAST, "java/lang/Byte");
                  mg.visitMethodInsn(INVOKEVIRTUAL, "java/lang/Byte",
                                     "byteValue", "()B");
                  break;
              case Type.SHORT:
                  mg.visitTypeInsn(CHECKCAST, "java/lang/Short");
                  mg.visitMethodInsn(INVOKEVIRTUAL, "java/lang/Short",
                                     "shortValue", "()S");
                  break;
              case Type.INT:
                  mg.visitTypeInsn(CHECKCAST, "java/lang/Integer");
                  mg.visitMethodInsn(INVOKEVIRTUAL, "java/lang/Integer",
                                     "intValue", "()I");
                  break;
              case Type.FLOAT:
                  mg.visitTypeInsn(CHECKCAST, "java/lang/Float");
                  mg.visitMethodInsn(INVOKEVIRTUAL, "java/lang/Float",
                                     "floatValue", "()F");
                  break;
              case Type.LONG:
                  mg.visitTypeInsn(CHECKCAST, "java/lang/Long");
                  mg.visitMethodInsn(INVOKEVIRTUAL, "java/lang/Long",
                                     "longValue", "()J");
                  break;
              case Type.DOUBLE:
                  mg.visitTypeInsn(CHECKCAST, "java/lang/Double");
                  mg.visitMethodInsn(INVOKEVIRTUAL, "java/lang/Double",
                                     "doubleValue", "()D");
                  break;
              default:
                  mg.checkCast(type);
                  break;
          }
      }
docs: d369262.7