jvmti_rs/wrapper/enums/
class_status.rs

1use crate::sys;
2
3#[derive(Debug)]
4pub enum JvmtiClassStatus {
5    Verified,
6    Prepared,
7    Initialized,
8    Error,
9    Array,
10    Primitive,
11    Unsupported(sys::jvmtiClassStatus),
12}
13
14impl From<sys::jvmtiClassStatus> for JvmtiClassStatus {
15    fn from(value: sys::jvmtiClassStatus) -> Self {
16        match value {
17            sys::JVMTI_CLASS_STATUS_VERIFIED => JvmtiClassStatus::Verified,
18            sys::JVMTI_CLASS_STATUS_PREPARED => JvmtiClassStatus::Prepared,
19            sys::JVMTI_CLASS_STATUS_INITIALIZED => JvmtiClassStatus::Initialized,
20            sys::JVMTI_CLASS_STATUS_ERROR => JvmtiClassStatus::Error,
21            sys::JVMTI_CLASS_STATUS_ARRAY => JvmtiClassStatus::Array,
22            sys::JVMTI_CLASS_STATUS_PRIMITIVE => JvmtiClassStatus::Primitive,
23            _ => JvmtiClassStatus::Unsupported(value)
24        }
25    }
26}
27
28impl From<JvmtiClassStatus> for sys::jvmtiClassStatus {
29    fn from(value: JvmtiClassStatus) -> Self {
30        match value {
31            JvmtiClassStatus::Verified => sys::JVMTI_CLASS_STATUS_VERIFIED,
32            JvmtiClassStatus::Prepared => sys::JVMTI_CLASS_STATUS_PREPARED,
33            JvmtiClassStatus::Initialized => sys::JVMTI_CLASS_STATUS_INITIALIZED,
34            JvmtiClassStatus::Error => sys::JVMTI_CLASS_STATUS_ERROR,
35            JvmtiClassStatus::Array => sys::JVMTI_CLASS_STATUS_ARRAY,
36            JvmtiClassStatus::Primitive => sys::JVMTI_CLASS_STATUS_PRIMITIVE,
37            _ => sys::JVMTI_CONSTANT_UNSUPPORTED,
38        }
39    }
40}