diff options
| author | Laurenz <laurmaedje@gmail.com> | 2021-07-10 23:00:03 +0200 |
|---|---|---|
| committer | Laurenz <laurmaedje@gmail.com> | 2021-07-11 13:20:53 +0200 |
| commit | 9fe9b95b7f257100b9242913ae079752b232bb87 (patch) | |
| tree | c68a2b93b45e9bed5e1706da76a82a5c3f8ddd16 /src/library/text.rs | |
| parent | 891e0c5fa6cd9200c24011c33b6f2115d84d4d74 (diff) | |
Simpler casting
Diffstat (limited to 'src/library/text.rs')
| -rw-r--r-- | src/library/text.rs | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/src/library/text.rs b/src/library/text.rs index 0f6f3ec1..14a0ee9a 100644 --- a/src/library/text.rs +++ b/src/library/text.rs @@ -78,7 +78,6 @@ pub fn font(ctx: &mut EvalContext, args: &mut FuncArgs) -> Value { }) } -#[derive(Debug)] struct FontDef(Vec<FontFamily>); castable! { @@ -89,10 +88,9 @@ castable! { .filter_map(|v| v.cast().ok()) .collect() ), - #(family: FontFamily) => Self(vec![family]), + @family: FontFamily => Self(vec![family.clone()]), } -#[derive(Debug)] struct FamilyDef(Vec<String>); castable! { @@ -106,28 +104,28 @@ castable! { ), } -castable! { +dynamic! { FontFamily: "font family", - Value::Str(string) => Self::Named(string.to_lowercase()) + Value::Str(string) => Self::Named(string.to_lowercase()), } -castable! { +dynamic! { FontStyle: "font style", } -castable! { +dynamic! { FontWeight: "font weight", Value::Int(number) => { u16::try_from(number).map_or(Self::BLACK, Self::from_number) - } + }, } -castable! { +dynamic! { FontStretch: "font stretch", Value::Relative(relative) => Self::from_ratio(relative.get() as f32), } -castable! { +dynamic! { VerticalFontMetric: "vertical font metric", } |
