code: public static void doCastToWrappedType(MethodVisitor mv, ClassNode sourceType, ClassNode targetType) {
          mv.visitMethodInsn(INVOKESTATIC, getClassInternalName(targetType), "valueOf", "(" + getTypeDescription(sourceType) + ")" + getTypeDescription(targetType), false);
      }
docs: Given a primitive number type (byte, integer, short, ...), generates bytecode
  to convert it to a wrapped number (Integer, Long, Double) using calls to
  [WrappedType].valueOf
  @param mv method visitor
  @param sourceType the primitive number type
  @param targetType the wrapped target type