28 lines
977 B
Rust
28 lines
977 B
Rust
//! Unified function call routing for AI agents.
|
|
//!
|
|
//! Provides a type-safe, request-scoped tool registry and executor.
|
|
//!
|
|
//! # Architecture
|
|
//!
|
|
//! - [`definition`](definition) — Tool schemas: name, description, parameter JSON schema
|
|
//! - [`registry`](registry) — Request-scoped `ToolRegistry` mapping names → handlers
|
|
//! - [`call`](call) — Execution types: `ToolCall`, `ToolResult`, `ToolError`
|
|
//! - [`context`](context) — Execution context passed to each tool handler
|
|
//! - [`executor`](executor) — `ToolExecutor` coordinating lookup → execute → result
|
|
//! - [`examples`](examples) — `#[tool]` macro usage guide
|
|
|
|
pub mod call;
|
|
pub mod context;
|
|
pub mod definition;
|
|
pub mod executor;
|
|
pub mod registry;
|
|
|
|
#[cfg(test)]
|
|
mod examples;
|
|
|
|
pub use call::{ToolCall, ToolCallResult, ToolError, ToolResult};
|
|
pub use context::ToolContext;
|
|
pub use definition::{ToolDefinition, ToolParam, ToolSchema};
|
|
pub use executor::ToolExecutor;
|
|
pub use registry::ToolRegistry;
|