summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--library/src/compute/foundations.rs7
1 files changed, 6 insertions, 1 deletions
diff --git a/library/src/compute/foundations.rs b/library/src/compute/foundations.rs
index b181dff7..a5d0586b 100644
--- a/library/src/compute/foundations.rs
+++ b/library/src/compute/foundations.rs
@@ -80,8 +80,13 @@ pub fn repr(args: &mut Args) -> SourceResult<Value> {
#[func]
pub fn assert(args: &mut Args) -> SourceResult<Value> {
let Spanned { v, span } = args.expect::<Spanned<bool>>("condition")?;
+ let message = args.named::<EcoString>("message")?;
if !v {
- bail!(span, "assertion failed");
+ if let Some(message) = message {
+ bail!(span, "assertion failed: {}", message);
+ } else {
+ bail!(span, "assertion failed");
+ }
}
Ok(Value::None)
}