pub fn dispatch_if_async(
callee: &Value,
args: &[Value],
env: &Env,
) -> Option<Value>Expand description
If callee is an ^:async Clojure function and an async runtime is
registered, spawn its body as a task and return a Value::Future.
Returns None when there is no async runtime or the callee is not an async
function, in which case the caller proceeds with the normal synchronous
call path. This is the single dispatch point shared by apply_value here
and eval_call in crate::interp.