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}