Function alog::run_raw

source ·
pub fn run_raw<R: BufRead, W: Write>(
    config: &Config<'_>,
    reader: R,
    writer: W
) -> Result<(), IOError>
Expand description

Like alog::run but will let you pass your own reader and writer. Replacement strings and config flags will still be read from alog::Config.

Errors

Returns an error if the new reader or writer retruns an error.

Example

use std::io::Cursor;

let line = Cursor::new(b"8.8.8.8 XxX");
let mut buffer = vec![];

alog::run_raw(&alog::Config::default(), line, &mut buffer).unwrap();
assert_eq!(buffer, b"127.0.0.1 XxX");

To read from Stdin and write to Stdout:

use std::io::{self, BufReader, BufWriter};

// Consider wrapping io::stdout in BufWriter
let stdin = io::stdin();
let stdout = io::stdout();
alog::run_raw(&alog::Config::default(), stdin.lock(), stdout.lock()).unwrap();