#[rustfmt::skip] // This file has been automatically generated by `jnim` from `Cloneable.class`. // DO NOT EDIT use jnim::*; pub trait Cloneable: AsRef { fn cloneable_class(env: Option<&JEnv>) -> Option { const NAME: &'static [u8] = b"java/lang/Cloneable\0"; static CACHE: CachedID = CachedID::new(); CACHE.get(|| JEnv::env(env)?.find_class(NAME)) } } pub struct CloneableObject { __object: JObject, } impl Cloneable for CloneableObject {} impl JNameMaker for CloneableObject { const JAVA_PATH: &'static [u8] = b"java/lang/Cloneable\0"; } impl JPlainMarker for CloneableObject { fn class(env: Option<&JEnv>) -> Option { static CACHE: CachedID = CachedID::new(); CACHE.get(|| JEnv::env(env)?.find_class(Self::JAVA_PATH)) } } impl core::ops::Deref for CloneableObject { type Target = JObject; fn deref(&self) -> &Self::Target { &self.__object } } impl AsRef for CloneableObject { fn as_ref(&self) -> &JObject { &self.__object } } #[test] fn test_type_zero() { assert_eq!(0, std::mem::size_of::()); }