jvmti_rs/wrapper/descriptors/
class_desc.rs1use crate::*;
2use crate::{objects::*, errors::*};
3use jni::strings::JNIString;
4use jni::JNIEnv;
5
6impl<'a> Desc<'a, JClass<'a>> for &'a str {
7 fn lookup(self, jni: &JNIEnv<'a>) -> Result<JClass<'a>> {
8 let name: JNIString = self.into();
9 name.lookup(jni)
10 }
11}
12
13impl<'a> Desc<'a, JClass<'a>> for JNIString {
14 fn lookup(self, jni: &JNIEnv<'a>) -> Result<JClass<'a>> {
15 jni.find_class(self)
16 .map_err(jni_lookup_error)
17 }
18}
19
20impl<'a> Desc<'a, JClass<'a>> for JObject<'a> {
21 fn lookup(self, jni: &JNIEnv<'a>) -> Result<JClass<'a>> {
22 jni.get_object_class(self)
23 .map_err(jni_lookup_error)
24 }
25}