Public declaration syntax from forge-rs/crates/forge-agent/src/tool_loop.rs Original source SHA-256: ef678213f38866feba9a85a5874dcdf51f210b152044fc4e1a88b89a9640e172 Function bodies and constant values are omitted. This is not the complete implementation. Source line 105 pub struct ToolLoopAgent { } Source line 169 pub fn new( config: AgentConfig, model: Arc, tool_registry: ToolRegistry, approval: Arc, ) -> Self; Source line 221 pub fn with_stop_condition(mut self, condition: AgentStopCondition) -> Self; Source line 237 pub fn with_prepare_step(mut self, prepare: Arc) -> Self; Source line 251 pub fn with_generate_options(mut self, options: GenerateOptions) -> Self;