summaryrefslogtreecommitdiff
path: root/src/library/utility
diff options
context:
space:
mode:
Diffstat (limited to 'src/library/utility')
-rw-r--r--src/library/utility/blind.rs9
-rw-r--r--src/library/utility/mod.rs2
-rw-r--r--src/library/utility/string.rs15
3 files changed, 15 insertions, 11 deletions
diff --git a/src/library/utility/blind.rs b/src/library/utility/blind.rs
deleted file mode 100644
index 0075ab91..00000000
--- a/src/library/utility/blind.rs
+++ /dev/null
@@ -1,9 +0,0 @@
-use lipsum::lipsum_from_seed;
-
-use crate::library::prelude::*;
-
-/// Create blind text.
-pub fn lorem(_: &mut Context, args: &mut Args) -> TypResult<Value> {
- let words: usize = args.expect("number of words")?;
- Ok(Value::Str(lipsum_from_seed(words, 97).into()))
-}
diff --git a/src/library/utility/mod.rs b/src/library/utility/mod.rs
index 4244ccbf..13220242 100644
--- a/src/library/utility/mod.rs
+++ b/src/library/utility/mod.rs
@@ -1,11 +1,9 @@
//! Computational utility functions.
-mod blind;
mod color;
mod math;
mod string;
-pub use blind::*;
pub use color::*;
pub use math::*;
pub use string::*;
diff --git a/src/library/utility/string.rs b/src/library/utility/string.rs
index 92d80be2..0b309b31 100644
--- a/src/library/utility/string.rs
+++ b/src/library/utility/string.rs
@@ -1,3 +1,6 @@
+use lipsum::lipsum_from_seed;
+
+use crate::eval::Regex;
use crate::library::prelude::*;
use crate::library::text::{Case, TextNode};
@@ -37,6 +40,18 @@ fn case(case: Case, args: &mut Args) -> TypResult<Value> {
})
}
+/// Create blind text.
+pub fn lorem(_: &mut Context, args: &mut Args) -> TypResult<Value> {
+ let words: usize = args.expect("number of words")?;
+ Ok(Value::Str(lipsum_from_seed(words, 97).into()))
+}
+
+/// Create a regular expression.
+pub fn regex(_: &mut Context, args: &mut Args) -> TypResult<Value> {
+ let Spanned { v, span } = args.expect::<Spanned<EcoString>>("regular expression")?;
+ Ok(Regex::new(&v).at(span)?.into())
+}
+
/// Converts an integer into one or multiple letters.
pub fn letter(_: &mut Context, args: &mut Args) -> TypResult<Value> {
convert(Numbering::Letter, args)