htmldiff 0.1.0

htmldiff is a Rust port of https://github.com/myobie/htmldiff
Documentation
mod builder;
mod html;
mod wu;

use builder::build_htmldiff;

use std::env;
use std::fs::File;
use std::io;
use std::io::prelude::*;
use std::io::{stdout, BufReader, BufWriter};
use std::process;

fn main() {
    let args: Vec<String> = env::args().collect();
    if args.len() < 3 {
        eprintln!("Usage: htmldiff FILE1 FILE2");
        process::exit(1);
    }

    let html1 = read_html(&args[1]).expect("failed to read html file");
    let html2 = read_html(&args[2]).expect("failed to read html file");

    let stdout = stdout();
    let mut w = BufWriter::new(stdout.lock());
    build_htmldiff(&html1, &html2, |s: &str| {
        w.write(s.as_bytes()).expect("failed to write result");
    });
}

fn read_html(path: &str) -> io::Result<String> {
    let mut file = BufReader::new(File::open(path)?);
    let mut html = String::new();
    file.read_to_string(&mut html)?;
    Ok(html)
}