diff options
Diffstat (limited to 'library/src/base/string.rs')
| -rw-r--r-- | library/src/base/string.rs | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/library/src/base/string.rs b/library/src/base/string.rs index 262dd5c6..9c3b9562 100644 --- a/library/src/base/string.rs +++ b/library/src/base/string.rs @@ -14,11 +14,17 @@ pub fn str(_: &Vm, args: &mut Args) -> SourceResult<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")?; |
