jvmti_rs/wrapper/objects/
jline_number_entry.rs

1use crate::sys::{jvmtiLineNumberEntry, jlocation};
2use std::marker::PhantomData;
3
4#[derive(Copy, Clone)]
5pub struct JLineNumberEntry<'a> {
6    internal: jvmtiLineNumberEntry,
7    lifetime: PhantomData<&'a ()>,
8
9    pub start_location: jlocation,
10    pub line_number: i32,
11}
12
13impl<'a> From<jvmtiLineNumberEntry> for JLineNumberEntry<'a> {
14    fn from(info: jvmtiLineNumberEntry) -> Self {
15        JLineNumberEntry {
16            internal: info,
17            lifetime: PhantomData,
18
19            start_location: info.start_location.into(),
20            line_number: info.line_number,
21        }
22    }
23}
24
25impl<'a> ::std::ops::Deref for JLineNumberEntry<'a> {
26    type Target = jvmtiLineNumberEntry;
27
28    fn deref(&self) -> &Self::Target {
29        &self.internal
30    }
31}