diff options
| author | Laurenz <laurmaedje@gmail.com> | 2022-05-03 16:59:13 +0200 |
|---|---|---|
| committer | Laurenz <laurmaedje@gmail.com> | 2022-05-04 00:14:31 +0200 |
| commit | 507c5fc92563560426db0d86c0348880b0493467 (patch) | |
| tree | 45116b62fb0fffe8e88d6c96ae1fcf11c73f8ee9 /src/eval/value.rs | |
| parent | e18a896a93cae987aa30addd40e678bf0064fd31 (diff) | |
Text replacement show rules
Diffstat (limited to 'src/eval/value.rs')
| -rw-r--r-- | src/eval/value.rs | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/eval/value.rs b/src/eval/value.rs index ba30348f..fc54cbce 100644 --- a/src/eval/value.rs +++ b/src/eval/value.rs @@ -5,7 +5,7 @@ use std::hash::{Hash, Hasher}; use std::num::NonZeroUsize; use std::sync::Arc; -use super::{ops, Args, Array, Dict, Func, RawLength}; +use super::{ops, Args, Array, Dict, Func, RawLength, Regex}; use crate::diag::{with_alternative, StrResult}; use crate::geom::{ Angle, Color, Dir, Em, Fraction, Length, Paint, Ratio, Relative, RgbaColor, Sides, @@ -641,6 +641,10 @@ dynamic! { Dir: "direction", } +dynamic! { + Regex: "regular expression", +} + castable! { usize, Expected: "non-negative integer", @@ -686,8 +690,10 @@ castable! { castable! { Pattern, - Expected: "function", + Expected: "function, string or regular expression", Value::Func(func) => Pattern::Node(func.node()?), + Value::Str(text) => Pattern::text(&text), + @regex: Regex => Pattern::Regex(regex.clone()), } #[cfg(test)] |
