summaryrefslogtreecommitdiff
path: root/library/src/base/string.rs
diff options
context:
space:
mode:
authorLaurenz <laurmaedje@gmail.com>2022-11-26 16:59:20 +0100
committerLaurenz <laurmaedje@gmail.com>2022-11-26 17:13:31 +0100
commit0579fd4409375aaa9fd8e87a06fd59097b5fcd97 (patch)
tree0ccf1d6218806b11d83998d568ae1fb0570c67b7 /library/src/base/string.rs
parent9db6e533cd8a1d925a7daad92e1b99e6f98ac773 (diff)
Reorganize library base
Diffstat (limited to 'library/src/base/string.rs')
-rw-r--r--library/src/base/string.rs58
1 files changed, 0 insertions, 58 deletions
diff --git a/library/src/base/string.rs b/library/src/base/string.rs
deleted file mode 100644
index 9c3b9562..00000000
--- a/library/src/base/string.rs
+++ /dev/null
@@ -1,58 +0,0 @@
-use typst::model::Regex;
-
-use crate::prelude::*;
-use crate::shared::NumberingKind;
-
-/// The string representation of a value.
-pub fn repr(_: &Vm, args: &mut Args) -> SourceResult<Value> {
- Ok(args.expect::<Value>("value")?.repr().into())
-}
-
-/// Convert a value to a string.
-pub fn str(_: &Vm, args: &mut Args) -> SourceResult<Value> {
- let Spanned { v, span } = args.expect("value")?;
- Ok(Value::Str(match v {
- Value::Int(v) => format_str!("{}", v),
- Value::Float(v) => format_str!("{}", v),
- Value::Label(label) => label.0.into(),
- Value::Str(v) => v,
- v => bail!(span, "cannot convert {} to string", v.type_name()),
- }))
-}
-
-/// Create a label from a string.
-pub fn label(_: &Vm, args: &mut Args) -> SourceResult<Value> {
- Ok(Value::Label(Label(args.expect("string")?)))
-}
-
-/// Create blind text.
-pub fn lorem(_: &Vm, args: &mut Args) -> SourceResult<Value> {
- let words: usize = args.expect("number of words")?;
- Ok(Value::Str(lipsum::lipsum(words).into()))
-}
-
-/// Create a regular expression.
-pub fn regex(_: &Vm, args: &mut Args) -> SourceResult<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(_: &Vm, args: &mut Args) -> SourceResult<Value> {
- numbered(NumberingKind::Letter, args)
-}
-
-/// Converts an integer into a roman numeral.
-pub fn roman(_: &Vm, args: &mut Args) -> SourceResult<Value> {
- numbered(NumberingKind::Roman, args)
-}
-
-/// Convert a number into a symbol.
-pub fn symbol(_: &Vm, args: &mut Args) -> SourceResult<Value> {
- numbered(NumberingKind::Symbol, args)
-}
-
-fn numbered(numbering: NumberingKind, args: &mut Args) -> SourceResult<Value> {
- let n = args.expect::<usize>("non-negative integer")?;
- Ok(Value::Str(numbering.apply(n).into()))
-}