From a3754e3bd605aef4bccc37d2bcc04c9eab0a2cdd Mon Sep 17 00:00:00 2001 From: Raphael Date: Sat, 25 Apr 2026 15:08:34 +0200 Subject: [PATCH] feat: added std::control::value function --- crates/taurus-core/src/runtime/functions/control.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/crates/taurus-core/src/runtime/functions/control.rs b/crates/taurus-core/src/runtime/functions/control.rs index fd24c9b..6cb8a15 100644 --- a/crates/taurus-core/src/runtime/functions/control.rs +++ b/crates/taurus-core/src/runtime/functions/control.rs @@ -16,6 +16,7 @@ use tucana::shared::value::Kind; pub(crate) const FUNCTIONS: &[FunctionRegistration] = &[ FunctionRegistration::eager("std::control::stop", stop, 0), FunctionRegistration::eager("std::control::return", r#return, 1), + FunctionRegistration::eager("std::control::value", value, 1), FunctionRegistration::modes("std::control::if", r#if, &[Eager, Lazy]), FunctionRegistration::modes("std::control::if_else", if_else, &[Eager, Lazy, Lazy]), ]; @@ -28,6 +29,15 @@ fn stop( Signal::Stop } +fn value( + args: &[Argument], + _ctx: &mut ValueStore, + _run: &mut dyn FnMut(i64, &mut ValueStore) -> Signal, +) -> Signal { + args!(args => value: Value); + Signal::Success(value) +} + fn r#return( args: &[Argument], _ctx: &mut ValueStore,