jvmti_rs/wrapper/jvmtifns/
method_jni.rs

1use jni::strings::JNIString;
2
3use crate::{Desc, errors::*, JVMTIEnv, objects::*, Transform};
4
5impl<'a> JVMTIEnv<'a> {
6    pub fn get_method_id<K, M, V>(&self, jni: &jni::JNIEnv<'a>, class: K, name: M, sig: V) -> Result<JMethodID>
7        where
8            K: Transform<'a, JClass<'a>>,
9            M: Into<JNIString>,
10            V: Into<JNIString> {
11        let klass: JClass = class.transform(jni)?;
12        (klass, name, sig).lookup(jni)
13    }
14
15    pub fn get_static_method_id<K, M, V>(&self, jni: &jni::JNIEnv<'a>, class: K, name: M, sig: V) -> Result<JStaticMethodID>
16        where
17            K: Transform<'a, JClass<'a>>,
18            M: Into<JNIString>,
19            V: Into<JNIString> {
20        let klass: JClass = class.transform(jni)?;
21        (klass, name, sig).lookup(jni)
22    }
23}