summaryrefslogtreecommitdiff
path: root/src/library/text.rs
diff options
context:
space:
mode:
authorLaurenz <laurmaedje@gmail.com>2021-07-10 23:00:03 +0200
committerLaurenz <laurmaedje@gmail.com>2021-07-11 13:20:53 +0200
commit9fe9b95b7f257100b9242913ae079752b232bb87 (patch)
treec68a2b93b45e9bed5e1706da76a82a5c3f8ddd16 /src/library/text.rs
parent891e0c5fa6cd9200c24011c33b6f2115d84d4d74 (diff)
Simpler casting
Diffstat (limited to 'src/library/text.rs')
-rw-r--r--src/library/text.rs18
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",
}