From c50922e90c2781774fe1ca3eaed495bc3914ceb5 Mon Sep 17 00:00:00 2001 From: Lucien Greathouse Date: Tue, 27 Nov 2018 23:21:16 -0800 Subject: [PATCH] Add ignoreUnknown to project nodes --- server/src/project.rs | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/server/src/project.rs b/server/src/project.rs index 25b9e560..0221f7fc 100644 --- a/server/src/project.rs +++ b/server/src/project.rs @@ -11,6 +11,11 @@ use rbx_tree::RbxValue; pub static PROJECT_FILENAME: &'static str = "roblox-project.json"; +// Serde is silly, +const fn yeah() -> bool { + true +} + #[derive(Debug, Serialize, Deserialize)] #[serde(untagged)] enum SourceProjectNode { @@ -18,11 +23,11 @@ enum SourceProjectNode { #[serde(rename = "$className")] class_name: String, - #[serde(rename = "$properties", default="HashMap::new")] + #[serde(rename = "$properties", default = "HashMap::new")] properties: HashMap, - // #[serde(rename = "$ignoreUnknown", default = "false")] - // ignore_unknown: bool, + #[serde(rename = "$ignoreUnknown", default = "yeah")] + ignore_unknown: bool, #[serde(flatten)] children: HashMap, @@ -36,7 +41,7 @@ enum SourceProjectNode { impl SourceProjectNode { pub fn into_project_node(self, project_file_location: &Path) -> ProjectNode { match self { - SourceProjectNode::Instance { class_name, mut children, properties } => { + SourceProjectNode::Instance { class_name, mut children, properties, .. } => { let mut new_children = HashMap::new(); for (node_name, node) in children.drain() {