summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Silverstone <dsilvers@digital-scurf.org>2023-11-11 10:43:36 +0000
committerDaniel Silverstone <dsilvers@digital-scurf.org>2023-11-11 10:43:36 +0000
commit3105f0040111748c5b5e90b95ac36f27f8f9f0ed (patch)
treedc0775047dfc5c03210b348d9339b2c16ed24cc8
parent7252cf5c1e0288b1bbb54908999fc7524d12bf1e (diff)
downloadsubplot-3105f0040111748c5b5e90b95ac36f27f8f9f0ed.tar.gz
bindings: Be more strict about fields in bindings files
-rw-r--r--src/bindings.rs6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/bindings.rs b/src/bindings.rs
index b629992..4364a90 100644
--- a/src/bindings.rs
+++ b/src/bindings.rs
@@ -413,13 +413,14 @@ pub struct Bindings {
}
#[derive(Debug, Deserialize)]
+#[serde(deny_unknown_fields)]
struct ParsedImpl {
function: String,
cleanup: Option<String>,
}
#[derive(Debug, Deserialize)]
-#[serde(transparent)]
+#[serde(transparent, deny_unknown_fields)]
struct ParsedImplWrapper {
#[serde(deserialize_with = "deserialize_struct_case_insensitive")]
pimpl: ParsedImpl,
@@ -434,6 +435,7 @@ impl Deref for ParsedImplWrapper {
}
#[derive(Debug, Deserialize)]
+#[serde(deny_unknown_fields)]
struct ParsedBinding {
given: Option<String>,
when: Option<String>,
@@ -448,7 +450,7 @@ struct ParsedBinding {
}
#[derive(Debug, Deserialize)]
-#[serde(transparent)]
+#[serde(transparent, deny_unknown_fields)]
struct ParsedBindingWrapper {
#[serde(deserialize_with = "deserialize_struct_case_insensitive")]
binding: ParsedBinding,