nitc :: JavaCompilerVisitor :: box
value
to mtype
.
# Box primitive `value` to `mtype`.
private fun box(value: RuntimeVariable, mtype: MType): RuntimeVariable do
if value.is_boxed then return value
var obj_type = compiler.mainmodule.object_type
if value.mtype isa MNullType then
return new_expr("new RTVal(null, null)", compiler.mainmodule.model.null_type)
end
var mbox = value.mtype.as(MClassType).mclass
return new_expr("new RTVal({mbox.rt_name}.get{mbox.rt_name}(), {value})", obj_type)
end
src/compiler/java_compiler.nit:831,2--840,4