diff options
| author | GabrielDertoni <gab.dertoni@gmail.com> | 2023-03-30 06:38:23 -0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-03-30 11:38:23 +0200 |
| commit | 84bfb3ca244ac95379ac1d400863161e80bd04c1 (patch) | |
| tree | 480a5274f037e0ba6580c9b7eb54e77154cc86e0 /src/model | |
| parent | 4d9c6b28d0a811ed7bd090a95774baf3bfa94c55 (diff) | |
fix: allow access to label of sequence (#342)
Diffstat (limited to 'src/model')
| -rw-r--r-- | src/model/content.rs | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/src/model/content.rs b/src/model/content.rs index b47da62c..cd4efa77 100644 --- a/src/model/content.rs +++ b/src/model/content.rs @@ -165,11 +165,10 @@ impl Content { /// Access a field on the content. pub fn field(&self, name: &str) -> Option<Value> { - if let Some(iter) = self.to_sequence() { - (name == "children") - .then(|| Value::Array(iter.cloned().map(Value::Content).collect())) - } else if let Some((child, _)) = self.to_styled() { - (name == "child").then(|| Value::Content(child.clone())) + if let (Some(iter), "children") = (self.to_sequence(), name) { + Some(Value::Array(iter.cloned().map(Value::Content).collect())) + } else if let (Some((child, _)), "child") = (self.to_styled(), "child") { + Some(Value::Content(child.clone())) } else { self.field_ref(name).cloned() } |
