pub struct SubAgentPool {
pub tasks: Vec<SubAgentTask>,
pub max_concurrent: usize,
pub timeout_secs: u64,
}Expand description
Pool that runs multiple SubAgentTasks in parallel with concurrency limits.
Fields§
§tasks: Vec<SubAgentTask>§max_concurrent: usize§timeout_secs: u64Implementations§
Source§impl SubAgentPool
impl SubAgentPool
pub fn new(tasks: Vec<SubAgentTask>) -> Self
Sourcepub async fn execute_all(
self,
provider: Arc<dyn LlmProvider>,
tools: Arc<ToolRegistry>,
config: &Config,
working_dir: &Path,
event_tx: &UnboundedSender<AgentEvent>,
) -> Vec<SubAgentResult>
pub async fn execute_all( self, provider: Arc<dyn LlmProvider>, tools: Arc<ToolRegistry>, config: &Config, working_dir: &Path, event_tx: &UnboundedSender<AgentEvent>, ) -> Vec<SubAgentResult>
Execute all tasks in parallel, streaming progress events.
Auto Trait Implementations§
impl Freeze for SubAgentPool
impl RefUnwindSafe for SubAgentPool
impl Send for SubAgentPool
impl Sync for SubAgentPool
impl Unpin for SubAgentPool
impl UnsafeUnpin for SubAgentPool
impl UnwindSafe for SubAgentPool
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more