14 lines
443 B
Rust
14 lines
443 B
Rust
use crate::spec::polymorphic_leaf_enum::PolymorphicLeafEnum;
|
|
use yaml_rust2::Yaml;
|
|
|
|
pub fn deserialize_polymorphic_leaf_enum(name: &str, props: &Yaml) -> PolymorphicLeafEnum {
|
|
let kind = props["kind"].as_str().unwrap();
|
|
let rules = props["rules"]
|
|
.as_vec()
|
|
.unwrap()
|
|
.iter()
|
|
.map(|rule| rule.as_str().unwrap().to_string())
|
|
.collect::<Vec<_>>();
|
|
PolymorphicLeafEnum::new(name, kind, rules)
|
|
}
|