Skip to main content

ai_agent/tools/
placeholder.rs

1// Source: /data/home/swei/claudecode/openclaudecode/src/Tool.ts
2//! Placeholder tool utilities
3
4/// Macro to create a simple placeholder tool struct with Default trait
5/// Usage: placeholder_tool!(MonitorTool);
6/// This creates: struct MonitorTool, impl with new() -> Self, impl Default
7#[macro_export]
8macro_rules! placeholder_tool {
9    ($struct_name:ident) => {
10        pub struct $struct_name;
11
12        impl $struct_name {
13            pub fn new() -> Self {
14                Self
15            }
16        }
17
18        impl Default for $struct_name {
19            fn default() -> Self {
20                Self::new()
21            }
22        }
23    };
24}