diff options
| author | Laurenz <laurmaedje@gmail.com> | 2021-08-30 16:39:16 +0200 |
|---|---|---|
| committer | Laurenz <laurmaedje@gmail.com> | 2021-08-30 16:39:16 +0200 |
| commit | ff25573224400673d08b31e576d5a0d87751dbe1 (patch) | |
| tree | 7a0df37b627a238250ffca454d1dd78dc765cedb /src/library | |
| parent | e4e79990dad90aea17ea99e54fcd60435927bb56 (diff) | |
Lower- and uppercase string conversion functions
Diffstat (limited to 'src/library')
| -rw-r--r-- | src/library/mod.rs | 2 | ||||
| -rw-r--r-- | src/library/utility.rs | 10 |
2 files changed, 12 insertions, 0 deletions
diff --git a/src/library/mod.rs b/src/library/mod.rs index a549aa72..d02c9608 100644 --- a/src/library/mod.rs +++ b/src/library/mod.rs @@ -63,6 +63,8 @@ pub fn new() -> Scope { std.def_func("rgb", rgb); std.def_func("min", min); std.def_func("max", max); + std.def_func("lower", lower); + std.def_func("upper", upper); // Colors. std.def_const("white", RgbaColor::WHITE); diff --git a/src/library/utility.rs b/src/library/utility.rs index 84f1d7ab..b26ed154 100644 --- a/src/library/utility.rs +++ b/src/library/utility.rs @@ -75,3 +75,13 @@ fn minmax(args: &mut Arguments, goal: Ordering) -> TypResult<Value> { } Ok(extremum) } + +/// `lower`: Convert a string to lowercase. +pub fn lower(_: &mut EvalContext, args: &mut Arguments) -> TypResult<Value> { + Ok(args.expect::<Str>("string")?.to_lowercase().into()) +} + +/// `upper`: Convert a string to uppercase. +pub fn upper(_: &mut EvalContext, args: &mut Arguments) -> TypResult<Value> { + Ok(args.expect::<Str>("string")?.to_uppercase().into()) +} |
