diff --git a/src/output/lsc.rs b/src/output/lsc.rs new file mode 100644 index 0000000..177f4cd --- /dev/null +++ b/src/output/lsc.rs @@ -0,0 +1,100 @@ +use std::collections::HashMap; + +use ansi_term::Style; +use ansi_term::Colour::*; + + +pub struct LSColors<'var> { + contents: HashMap<&'var str, &'var str> +} + +impl<'var> LSColors<'var> { + fn parse(input: &'var str) -> LSColors<'var> { + let contents = input.split(":") + .flat_map(|mapping| { + + let bits = mapping.split("=") + .take(3) + .collect::>(); + + if bits.len() == 2 { Some((bits[0], bits[1])) } + else { None } + }).collect(); + LSColors { contents } + } + + fn get(&self, facet_name: &str) -> Option