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)
7fn main() -> Result<()> {
8 let command = String::from("/usr/bin/ls");
9
10 let pid = match unsafe { fork() } {
11 Ok(ForkResult::Child) => {
12 return lurk_cli::run_tracee(&[command], &[], &None);
13 }
14 Ok(ForkResult::Parent { child }) => child,
15 Err(err) => bail!("fork() failed: {err}"),
16 };
17
18 let args = Args::default();
19 let output = io::stdout();
20 let style = StyleConfig {
21 pid: Style::new().cyan(),
22 syscall: Style::new().white().bold(),
23 success: Style::new().green(),
24 error: Style::new().red(),
25 result: Style::new().yellow(),
26 use_colors: true,
27 };
28
29 Tracer::new(pid, args, output, style)?.run_tracer()
30}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)
7fn main() -> Result<()> {
8 let command = String::from("/usr/bin/ls");
9
10 let pid = match unsafe { fork() } {
11 Ok(ForkResult::Child) => {
12 return lurk_cli::run_tracee(&[command], &[], &None);
13 }
14 Ok(ForkResult::Parent { child }) => child,
15 Err(err) => bail!("fork() failed: {err}"),
16 };
17
18 let args = Args::default();
19 let output = io::stdout();
20 let style = StyleConfig {
21 pid: Style::new().cyan(),
22 syscall: Style::new().white().bold(),
23 success: Style::new().green(),
24 error: Style::new().red(),
25 result: Style::new().yellow(),
26 use_colors: true,
27 };
28
29 Tracer::new(pid, args, output, style)?.run_tracer()
30}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