diff options
Diffstat (limited to 'src/eval/str.rs')
| -rw-r--r-- | src/eval/str.rs | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/eval/str.rs b/src/eval/str.rs index 63ea5dc8..0d5d71b9 100644 --- a/src/eval/str.rs +++ b/src/eval/str.rs @@ -6,7 +6,7 @@ use std::ops::{Add, AddAssign, Deref}; use ecow::EcoString; use unicode_segmentation::UnicodeSegmentation; -use super::{castable, dict, Array, Dict, Value}; +use super::{cast_from_value, dict, Array, Dict, Value}; use crate::diag::StrResult; use crate::geom::GenAlign; @@ -479,6 +479,10 @@ impl Hash for Regex { } } +cast_from_value! { + Regex: "regular expression", +} + /// A pattern which can be searched for in a string. #[derive(Debug, Clone)] pub enum StrPattern { @@ -488,7 +492,7 @@ pub enum StrPattern { Regex(Regex), } -castable! { +cast_from_value! { StrPattern, text: Str => Self::Str(text), regex: Regex => Self::Regex(regex), @@ -504,7 +508,7 @@ pub enum StrSide { End, } -castable! { +cast_from_value! { StrSide, align: GenAlign => match align { GenAlign::Start => Self::Start, |
