commit 6f1f3b8a943c164d0f3e046dd94a1413cda3f490 Author: hellerve Date: Tue May 23 20:01:18 2017 -0400 initial diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..eb5a316 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +target diff --git a/Cargo.lock b/Cargo.lock new file mode 100644 index 0000000..79625d4 --- /dev/null +++ b/Cargo.lock @@ -0,0 +1,4 @@ +[root] +name = "vvm" +version = "0.1.0" + diff --git a/Cargo.toml b/Cargo.toml new file mode 100644 index 0000000..2b360e7 --- /dev/null +++ b/Cargo.toml @@ -0,0 +1,6 @@ +[package] +name = "vvm" +version = "0.1.0" +authors = ["hellerve "] + +[dependencies] diff --git a/src/main.rs b/src/main.rs new file mode 100644 index 0000000..925c6b8 --- /dev/null +++ b/src/main.rs @@ -0,0 +1,32 @@ +use std::fs::File; +use std::io; +use std::io::Read; +use std::env; + +fn usage(pname: String) { + println!("usage: {} ", pname); +} + +fn get_contents(fname: String) -> Result { + let mut file = try!(File::open(&*fname)); + let mut contents = String::new(); + try!(file.read_to_string(&mut contents)); + Ok(contents) +} + +fn main() { + let args: Vec<_> = env::args().collect(); + + if args.len() != 2 { + usage(args[0].clone()); + return; + } + + let fname = args[1].clone(); + let contents = get_contents(fname); + + match contents { + Ok(v) => println!("{}", v), + Err(e) => println!("{}", e) + } +}