Skip to main content

lash_core/
tool_dispatch.rs

1mod context;
2mod directives;
3mod execution;
4mod preparation;
5mod retry;
6mod scheduling;
7#[cfg(test)]
8mod tests;
9
10pub use context::{ToolDispatchContext, ToolTriggerEffectOutcome};
11pub use scheduling::{ParallelToolCallOutcome, ParallelToolCallSpec, dispatch_parallel_tool_calls};
12
13pub(crate) use context::{
14    CheckpointMessageBuffer, PendingToolDispatchOutcome, ToolCallLaunch, ToolDispatchOutcome,
15    ToolPreparationOutcome, ToolTriggerOutcomeBuffer,
16};
17pub(crate) use execution::{
18    dispatch_prepared_tool_call_launch_with_execution_context,
19    finalize_tool_result_with_execution_context,
20};
21#[cfg(test)]
22pub(crate) use preparation::dispatch_tool_call;
23pub(crate) use preparation::{
24    dispatch_tool_call_with_execution_context, prepare_tool_call_with_context,
25    resolve_callable_manifest, resolve_callable_manifest_by_id,
26    resolve_tool_argument_projection_policy,
27};
28pub(crate) use scheduling::{resolve_tool_scheduling, schedule_tool_batch};