diff options
| author | Marek Barvíř <barvirm@gmail.com> | 2023-03-28 09:38:01 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-03-28 09:38:01 +0200 |
| commit | 213f31c5d71b3a5676ec8cce58204b1ac7f2cdea (patch) | |
| tree | bb0730bbc768f80eb3995b3a55d12a0f62ab3ee8 /src/eval/value.rs | |
| parent | dfbd3503d9a03215238ade30726651b09d6fab2d (diff) | |
Fix basic lints (cargo clippy) (#383)
Diffstat (limited to 'src/eval/value.rs')
| -rw-r--r-- | src/eval/value.rs | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/src/eval/value.rs b/src/eval/value.rs index bf1dd18a..517cadc5 100644 --- a/src/eval/value.rs +++ b/src/eval/value.rs @@ -17,9 +17,10 @@ use crate::model::Styles; use crate::syntax::{ast, Span}; /// A computational value. -#[derive(Clone)] +#[derive(Clone, Default)] pub enum Value { /// The value that indicates the absence of a meaningful value. + #[default] None, /// A value that indicates some smart default behaviour. Auto, @@ -122,10 +123,10 @@ impl Value { /// Try to access a field on the value. pub fn field(&self, field: &str) -> StrResult<Value> { match self { - Self::Symbol(symbol) => symbol.clone().modified(&field).map(Self::Symbol), - Self::Dict(dict) => dict.at(&field).cloned(), - Self::Content(content) => content.at(&field), - Self::Module(module) => module.get(&field).cloned(), + Self::Symbol(symbol) => symbol.clone().modified(field).map(Self::Symbol), + Self::Dict(dict) => dict.at(field).cloned(), + Self::Content(content) => content.at(field), + Self::Module(module) => module.get(field).cloned(), v => Err(eco_format!("cannot access fields on type {}", v.type_name())), } } @@ -168,12 +169,6 @@ impl Value { } } -impl Default for Value { - fn default() -> Self { - Value::None - } -} - impl Debug for Value { fn fmt(&self, f: &mut Formatter) -> fmt::Result { match self { |
