MCPcopy Create free account
hub / github.com/bluejekyll/wasmtime-java / from_jvalue

Function from_jvalue

wasmtime-jni/src/wasm_value.rs:526–546  ·  view source on GitHub ↗
(
    env: &'b JNIEnv<'j>,
    val: JValue<'j>,
)

Source from the content-addressed store, hash-verified

524}
525
526pub(crate) fn from_jvalue<'j, 'b: 'j>(
527 env: &'b JNIEnv<'j>,
528 val: JValue<'j>,
529) -> Result<Option<WasmVal<'j>>, Error> {
530 let val = match val {
531 JValue::Object(obj) => {
532 if obj.is_null() {
533 return Ok(None);
534 } else {
535 return from_java(env, obj).map(Some);
536 }
537 }
538 JValue::Long(v) => Val::I64(v),
539 JValue::Int(v) => Val::I32(v),
540 JValue::Double(v) => Val::F64(f64::to_bits(v)),
541 JValue::Float(v) => Val::F32(f32::to_bits(v)),
542 _ => return Err(anyhow!("Unsuppored return type: {}", val.type_name())),
543 };
544
545 Ok(Some(val.into()))
546}
547
548// pub(crate) fn to_java<'j, 'w: 'j>(env: &JNIEnv<'j>, val: &'w Val) -> Result<JObject<'j>, Error> {
549// let obj = match val {

Calls 6

from_javaFunction · 0.85
I64Class · 0.85
I32Class · 0.85
F64Class · 0.85
F32Class · 0.85
is_nullMethod · 0.80

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…