Add 'route' to each RbxInstance, which tags how the instance was generated

This commit is contained in:
Lucien Greathouse
2018-01-05 13:07:09 -08:00
parent 2df1dfa1cb
commit 86d7d033d7
4 changed files with 8 additions and 0 deletions

View File

@@ -31,6 +31,7 @@ impl Plugin for DefaultPlugin {
class_name: "StringValue".to_string(),
children: Vec::new(),
properties,
route: Some(vfs_item.route().to_vec()),
}))
},
&VfsItem::Dir { ref children, .. } => {
@@ -50,6 +51,7 @@ impl Plugin for DefaultPlugin {
class_name: "Folder".to_string(),
children: rbx_children,
properties: HashMap::new(),
route: Some(vfs_item.route().to_vec()),
}))
},
}

View File

@@ -36,6 +36,8 @@ impl Plugin for JsonModelPlugin {
},
};
rbx_item.route = Some(vfs_item.route().to_vec());
rbx_item.properties.insert("Name".to_string(), RbxValue::String {
value: rbx_name,
});

View File

@@ -54,6 +54,7 @@ impl Plugin for ScriptPlugin {
class_name: class_name,
children: Vec::new(),
properties,
route: Some(vfs_item.route().to_vec()),
}))
},
&VfsItem::Dir { ref children, .. } => {

View File

@@ -8,6 +8,9 @@ pub struct RbxInstance {
pub class_name: String,
pub children: Vec<RbxInstance>,
pub properties: HashMap<String, RbxValue>,
/// The route that this instance was generated from, if there was one.
pub route: Option<Vec<String>>,
}
/// Any kind value that can be used by Roblox