Skip to main content

parse_ccl_to

Function parse_ccl_to 

Source
pub fn parse_ccl_to<T: DeserializeOwned>(ccl_content: &str) -> Result<T>
Expand description

Parse CCL string and deserialize into a specific type

ยงExamples

use santa_data::parse_ccl_to;
use serde::Deserialize;
use std::collections::HashMap;

#[derive(Deserialize)]
struct Package {
    #[serde(rename = "_sources")]
    sources: Option<Vec<String>>,
}

let ccl = r#"
bat =
  _sources =
    = brew
    = scoop
"#;

let packages: HashMap<String, Package> = parse_ccl_to(ccl).unwrap();
assert!(packages.contains_key("bat"));