diff options
| author | troido <troido@protonmail.com> | 2020-09-20 12:55:40 +0200 |
|---|---|---|
| committer | troido <troido@protonmail.com> | 2020-09-20 12:55:40 +0200 |
| commit | 39d7f4a123171a1dc5d5a8ec1c512599d4bec0f0 (patch) | |
| tree | a95a9dfbd638d4eaa3a5861772d50d859ab60169 /src/assemblage.rs | |
| parent | 6511f7a4e340b19305ca8ed9e98facb5292dc913 (diff) | |
renamed ComponentParameter to ParemeterExpression; List and Template variant for ParameterExpression
Diffstat (limited to 'src/assemblage.rs')
| -rw-r--r-- | src/assemblage.rs | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/src/assemblage.rs b/src/assemblage.rs index c88b39b..c706ed0 100644 --- a/src/assemblage.rs +++ b/src/assemblage.rs @@ -2,7 +2,7 @@ use std::collections::HashMap; use serde_json::{Value, json, value}; use crate::{ - componentparameter::ComponentParameter, + parameterexpression::ParameterExpression, parameter::{Parameter, ParameterType}, componentwrapper::{ComponentWrapper, ComponentType}, components::Serialise, @@ -18,7 +18,7 @@ type ArgumentDef = (String, ParameterType, Option<Parameter>); #[derive(Debug, PartialEq, Clone)] pub struct Assemblage { pub arguments: Vec<ArgumentDef>, - pub components: Vec<(ComponentType, HashMap<String, ComponentParameter>)>, + pub components: Vec<(ComponentType, HashMap<String, ParameterExpression>)>, pub save: bool, pub extract: Vec<(String, ComponentType, String)> } @@ -47,7 +47,7 @@ impl Assemblage { Ok(arguments) } - fn parse_definition_components(comps: &[Value]) -> PResult<Vec<(ComponentType, HashMap<String, ComponentParameter>)>> { + fn parse_definition_components(comps: &[Value]) -> PResult<Vec<(ComponentType, HashMap<String, ParameterExpression>)>> { let mut components = Vec::new(); for tup in comps { if let Some(name) = tup.as_str() { @@ -55,9 +55,9 @@ impl Assemblage { } else { let (name, params) = value::from_value::<(String, HashMap<String, Value>)>(tup.clone()).map_err(|e| perr!("invalid component definition: {:?}", e))?; let comptype = ComponentType::from_str(&name).ok_or(perr!("{} not a valid componenttype", name))?; - let mut parameters: HashMap<String, ComponentParameter> = HashMap::new(); + let mut parameters: HashMap<String, ParameterExpression> = HashMap::new(); for (key, value) in params.into_iter() { - let param = ComponentParameter::from_json(&value)?; + let param = ParameterExpression::from_json(&value)?; parameters.insert(key, param); } components.push((comptype, parameters)); @@ -227,9 +227,9 @@ mod tests { arguments: vec![("sprite".to_string(), ParameterType::String, Some(Parameter::String("grass1".to_string())))], components: vec![ (ComponentType::Visible, hashmap!( - "sprite".to_string() => ComponentParameter::Argument("sprite".to_string()), - "height".to_string() => ComponentParameter::Constant(Parameter::Float(0.1)), - "name".to_string() => ComponentParameter::Constant(Parameter::String("grass".to_string())) + "sprite".to_string() => ParameterExpression::Argument("sprite".to_string()), + "height".to_string() => ParameterExpression::Constant(Parameter::Float(0.1)), + "name".to_string() => ParameterExpression::Constant(Parameter::String("grass".to_string())) )) ], save: true, @@ -346,9 +346,9 @@ mod tests { arguments: vec![("sprite".to_string(), ParameterType::String, None)], components: vec![ (ComponentType::Visible, hashmap!( - "sprite".to_string() => ComponentParameter::Argument("sprite".to_string()), - "height".to_string() => ComponentParameter::Constant(Parameter::Float(0.1)), - "name".to_string() => ComponentParameter::Argument("sprite".to_string()) + "sprite".to_string() => ParameterExpression::Argument("sprite".to_string()), + "height".to_string() => ParameterExpression::Constant(Parameter::Float(0.1)), + "name".to_string() => ParameterExpression::Argument("sprite".to_string()) )) ], save: true, |
