JInvocation invocation = types._Double.staticInvoke("doubleToLongBits");
invocation.arg(value);
appendNotNullValue(types._long, invocation);
} else if (type.name().equals("float")) {
JInvocation invocation = types._Float.staticInvoke("floatToIntBits");
invocation.arg(value);
appendNotNullValue(types._int, invocation);
} else if (type.name().equals("boolean")) {
appendNotNullValue(types._int, JOp.cond(value, JExpr.lit(0), JExpr.lit(1)));
} else if (type.name().equals("long")) {
appendNotNullValue(types._int, JExpr.cast(types._int, value.xor(value.shrz(JExpr.lit(32)))));