pub struct Tracert { /* private fields */ }Expand description
Traceroute model
§Examples
use e_libscanner::{traceroute::Tracert, Opts};
fn main() -> Result<(), String> {
let opts = Opts::new(Some(&[
"e-libscanner",
"--ips",
"114.114.114.114",
"--model",
"traceroute",
]))?
.init()?
.downcast::<Tracert>();
match opts {
Ok(opt) => {
let prx = opt.get_progress_receiver();
let handle = std::thread::spawn(move || {
while let Ok(msg) = prx.lock().unwrap().recv() {
// TODO Something
eprintln!("recv {:?}", msg);
}
});
let results = opt.scan(None);
handle.join().unwrap();
println!("count result -> {}", results.len());
}
Err(e) => panic!("{:?}", e),
}
Ok(())
}Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Tracert
impl RefUnwindSafe for Tracert
impl Send for Tracert
impl Sync for Tracert
impl Unpin for Tracert
impl UnwindSafe for Tracert
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
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more