jvmti_rs/wrapper/enums/
version_shift.rs

1use crate::sys;
2
3#[derive(Debug)]
4pub enum JvmtiVersionShift {
5    Major,
6    Minor,
7    Micro,
8    Unsupported(sys::jvmtiVersionShift),
9}
10
11
12impl From<sys::jvmtiVersionShift> for JvmtiVersionShift {
13    fn from(value: sys::jvmtiVersionShift) -> Self {
14        match value {
15            sys::JVMTI_VERSION_SHIFT_MAJOR => JvmtiVersionShift::Major,
16            sys::JVMTI_VERSION_SHIFT_MINOR => JvmtiVersionShift::Minor,
17            sys::JVMTI_VERSION_SHIFT_MICRO => JvmtiVersionShift::Micro,
18            _ => JvmtiVersionShift::Unsupported(value)
19        }
20    }
21}
22
23impl From<JvmtiVersionShift> for sys::jvmtiVersionShift {
24    fn from(value: JvmtiVersionShift) -> Self {
25        match value {
26            JvmtiVersionShift::Major => sys::JVMTI_VERSION_SHIFT_MAJOR,
27            JvmtiVersionShift::Minor => sys::JVMTI_VERSION_SHIFT_MINOR,
28            JvmtiVersionShift::Micro => sys::JVMTI_VERSION_SHIFT_MICRO,
29            _ => sys::JVMTI_CONSTANT_UNSUPPORTED,
30        }
31    }
32}