Add appveyor and example

This commit is contained in:
Yuheng Chen 2015-05-30 23:25:16 +08:00
parent e4862a7c8f
commit f87edaed98
2 changed files with 59 additions and 0 deletions

13
saphyr/appveyor.yml Normal file
View file

@ -0,0 +1,13 @@
install:
- ps: Start-FileDownload 'https://static.rust-lang.org/dist/rust-nightly-i686-pc-windows-gnu.exe'
- rust-nightly-i686-pc-windows-gnu.exe /VERYSILENT /NORESTART /DIR="C:\Program Files (x86)\Rust"
- SET PATH=%PATH%;C:\Program Files (x86)\Rust\bin
- SET PATH=%PATH%;C:\MinGW\bin
- rustc -V
- cargo -V
- git submodule update --init --recursive
build: false
test_script:
- cargo test --verbose

View file

@ -0,0 +1,46 @@
extern crate yaml_rust;
use std::env;
use std::fs::File;
use std::io::prelude::*;
use yaml_rust::yaml;
fn print_indent(indent: usize) {
for _ in 0..indent {
print!(" ");
}
}
fn dump_node(doc: &yaml::Yaml, indent: usize) {
match doc {
&yaml::Yaml::Array(ref v) => {
for x in v {
dump_node(x, indent + 1)
}
},
&yaml::Yaml::Hash(ref h) => {
for (k, v) in h {
print_indent(indent);
println!("{:?}:", k);
dump_node(v, indent + 1)
}
},
_ => {
print_indent(indent);
println!("{:?}", doc);
}
}
}
fn main() {
let args: Vec<_> = env::args().collect();
let mut f = File::open(&args[1]).unwrap();
let mut s = String::new();
f.read_to_string(&mut s).unwrap();
let docs = yaml::YamlLoader::load_from_str(&s).unwrap();
for doc in &docs {
println!("---");
dump_node(doc, 0);
}
}