Skip to content

robinbernon/gag-rs

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Redirect and/or gag stdout/stderr.

Build Status

Documentation (with examples): https://docs.rs/gag/

Limitations

  • Doesn't work on windows. Patches welcome.
  • Won't work if something else has called std::io::set_print (currently unstable). Unfortunately, this function doesn't actually redirect the stdio file descriptor, it just replaces the std::io::stdout writer.
  • Won't work in rust test cases. The rust test cases use std::io::set_print to redirect stdout.

TODO:

  • General:
    • Windows support.
    • Better error handling?
  • Redirect:
    • Be generic over references. That is, accept both a reference to an AsRawFd or an AsRawFd. Unfortunately, I don't know if this is even possible. Borrow doesn't work because I really want the following constraint: impl<F> Redirect<F> where F: BorrowMut<T>, T: AsMut<AsRawFd> so I can write file.borrow_mut().as_mut() but that would be ambiguous...
  • Buffer:
    • Deallocate the buffer as it is read (FALLOC_FL_PUNCH_HOLE) if possible.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 100.0%