pub struct Tracer<W: Write> { /* private fields */ }Implementations§
source§impl<W: Write> Tracer<W>
impl<W: Write> Tracer<W>
sourcepub fn new(
pid: Pid,
args: Args,
output: W,
style_config: StyleConfig
) -> Result<Self>
pub fn new( pid: Pid, args: Args, output: W, style_config: StyleConfig ) -> Result<Self>
Examples found in repository?
examples/tracer.rs (line 29)
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
fn main() -> Result<()> {
let command = String::from("/usr/bin/ls");
let pid = match unsafe { fork() } {
Ok(ForkResult::Child) => {
return lurk_cli::run_tracee(&[command], &[], &None);
}
Ok(ForkResult::Parent { child }) => child,
Err(err) => bail!("fork() failed: {err}"),
};
let args = Args::default();
let output = io::stdout();
let style = StyleConfig {
pid: Style::new().cyan(),
syscall: Style::new().white().bold(),
success: Style::new().green(),
error: Style::new().red(),
result: Style::new().yellow(),
use_colors: true,
};
Tracer::new(pid, args, output, style)?.run_tracer()
}pub fn set_output(&mut self, output: W)
sourcepub fn run_tracer(&mut self) -> Result<()>
pub fn run_tracer(&mut self) -> Result<()>
Examples found in repository?
examples/tracer.rs (line 29)
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
fn main() -> Result<()> {
let command = String::from("/usr/bin/ls");
let pid = match unsafe { fork() } {
Ok(ForkResult::Child) => {
return lurk_cli::run_tracee(&[command], &[], &None);
}
Ok(ForkResult::Parent { child }) => child,
Err(err) => bail!("fork() failed: {err}"),
};
let args = Args::default();
let output = io::stdout();
let style = StyleConfig {
pid: Style::new().cyan(),
syscall: Style::new().white().bold(),
success: Style::new().green(),
error: Style::new().red(),
result: Style::new().yellow(),
use_colors: true,
};
Tracer::new(pid, args, output, style)?.run_tracer()
}pub fn report_summary(&mut self) -> Result<()>
Auto Trait Implementations§
impl<W> Freeze for Tracer<W>where
W: Freeze,
impl<W> RefUnwindSafe for Tracer<W>where
W: RefUnwindSafe,
impl<W> Send for Tracer<W>where
W: Send,
impl<W> Sync for Tracer<W>where
W: Sync,
impl<W> Unpin for Tracer<W>where
W: Unpin,
impl<W> UnwindSafe for Tracer<W>where
W: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more