mirror of
https://github.com/Qortal/pirate-librustzcash.git
synced 2025-02-07 06:44:11 +00:00
4f0f10a53c
git-subtree-dir: zcash_history git-subtree-mainline:be0ee9eb82
git-subtree-split:e2c131fdc3
41 lines
1.0 KiB
Rust
41 lines
1.0 KiB
Rust
#[path= "lib/shared.rs"]
|
|
mod share;
|
|
|
|
// Test data generator
|
|
// $ cargo run --example writer -- 16 nodes.dat
|
|
// or
|
|
// $ cargo run --example writer -- 16
|
|
// to preview
|
|
|
|
fn main() {
|
|
let mut args = std::env::args().skip(1);
|
|
|
|
let (number, out_file) = match args.next() {
|
|
None => { eprintln!("writer <number of nodes> [<out_file>]"); std::process::exit(1); },
|
|
Some(number) => {
|
|
(number.parse::<usize>().expect("invalid number"), args.next())
|
|
}
|
|
};
|
|
|
|
let iterator = share::NodeDataIterator::new().take(number);
|
|
|
|
if let Some(out_file_path) = out_file {
|
|
use std::io::Write;
|
|
|
|
let mut buf = Vec::new();
|
|
|
|
for node in iterator{
|
|
node.write(&mut buf).expect("Failed to write data");
|
|
}
|
|
|
|
let mut file = std::fs::File::create(&out_file_path)
|
|
.expect("Failed to create output file");
|
|
|
|
file.write_all(&buf[..])
|
|
.expect("Failed to write data to file");
|
|
} else {
|
|
for n in iterator {
|
|
println!("{:?}", n);
|
|
}
|
|
}
|
|
} |