summaryrefslogtreecommitdiff
path: root/library/src/compute
diff options
context:
space:
mode:
authorLaurenz <laurmaedje@gmail.com>2023-01-27 19:53:04 +0100
committerLaurenz <laurmaedje@gmail.com>2023-01-27 19:53:04 +0100
commit23238d4d44881a5b466ab23a32e2a7447f460127 (patch)
treefc1d8ee3af3ddde734b9c1e81e4b038a39e22cdb /library/src/compute
parent33013af37ac2e28c194d569f44e31574ed54f1c4 (diff)
Assertions with custom message
Diffstat (limited to 'library/src/compute')
-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)
}