Skip to content

Commit

Permalink
Add appveyor and example
Browse files Browse the repository at this point in the history
  • Loading branch information
SenseTime-Cloud committed May 30, 2015
1 parent f070758 commit 4c6b9cd
Show file tree
Hide file tree
Showing 2 changed files with 59 additions and 0 deletions.
13 changes: 13 additions & 0 deletions appveyor.yml
@@ -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
46 changes: 46 additions & 0 deletions examples/dump_yaml.rs
@@ -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);
}
}

0 comments on commit 4c6b9cd

Please sign in to comment.