Sha256: c84296304463f26820ffac0fec5c833fa93595ded781a90bee09a983de54a71c
Contents?: true
Size: 1.06 KB
Versions: 25
Compression:
Stored size: 1.06 KB
Contents
use std::env; use std::io::{self, Write}; use std::str::FromStr; fn main() { match env::args().nth(1) { None => { writeln!( &mut io::stderr(), "Invalid option. Usage: `stream [-d|-1..-21]`" ) .unwrap(); } Some(ref option) if option == "-d" => decompress(), Some(ref option) => { if option.starts_with('-') { let level = match i32::from_str(&option[1..]) { Ok(level) => level, Err(e) => panic!("Error parsing compression level: {}", e), }; compress(level); } else { writeln!( &mut io::stderr(), "Invalid option. Usage: `stream [-d|-1..-21]`" ) .unwrap(); } } } } fn compress(level: i32) { zstd::stream::copy_encode(io::stdin(), io::stdout(), level).unwrap(); } fn decompress() { zstd::stream::copy_decode(io::stdin(), io::stdout()).unwrap(); }
Version data entries
25 entries across 25 versions & 1 rubygems