12 releases (6 breaking)
Uses old Rust 2015
0.8.0 | Aug 9, 2017 |
---|---|
0.7.1 | Apr 24, 2017 |
0.7.0 | Feb 11, 2017 |
0.2.1 | Dec 26, 2016 |
#28 in #err
883 downloads per month
Used in 4 crates
30KB
571 lines
stderr
A library that using macro to write to io::stderr()
like print!()/println!()
for rust.
Usage
On Cargo.toml:
[dependencies]
stderr = "0.8.0"
About stderr
Usage as same as print!/println!
.
err!
/errln!
: Panics if writing toio::stderr()
fails.errst!
/errstln!
: Do nothing if writing toio::stderr()
fails(silent->st).
Example
#[macro_use]
extern crate stderr;
fn main() {
println!("err!/errln!/errst!/errstln!()@stderr !");
let vec = vec![1, 2, 3, 4, 5];
let s = std::env::args().nth(0).unwrap();
err!("err!(expr\\n)\n");
err!("err!(String: vec![1, 2, 3, 4, 5])\n{}: {:?}", s, vec);
errln!();
errln!("errln!(expr)");
println!();
errst!("errst!(expr\\n)\n");
errst!("errst!(String: vec![1, 2, 3, 4, 5])\n{}: {:?}", s, vec);
errstln!();
errstln!("errstln!(expr)");
}
If you only need errxxx
and don't want be polluted by other macros, you can:
- use v0.3.0(The part has been stable since this version)
On Cargo.toml:
[dependencies]
stderr = "0.3.0"
Or
- Only import you need by
macro_use
On Code:
#[macro_use(err,errln,errst,errstln)]
extern crate stderr;
About StaticMut
or log::*
, please read document
ChangLog
2017-0530 0.8.0 log::*, StaticMut
2017-0424 0.7.1 loc!()
and Loger::init(module_path!())
2017-0211 0.7.0 Supports multiple packages.
2017-0126 0.6.1 Don't repeat initialization,fix #2.
2017-0126 0.6.0 Refactoring and update API to stderr::Loger; init!(),db!(),dbln!(),dbst!(),dbstln!()
for LOG=module_path!()
and --log/-log module_path!()
,add Documentation.
2017-0116 0.5.0 Add stderr::loger::Loger;init(), debug!(),debugln!(),debugst!(),debugstln!()
for LOG=debug
and --log/-log debug
.
Dependencies
~0.6–1MB
~15K SLoC