pub struct TreeMode { /* private fields */ }Expand description
Tree reasoning mode handler for branching exploration.
Implementations§
Source§impl TreeMode
impl TreeMode
Sourcepub fn new(
storage: SqliteStorage,
langbase: LangbaseClient,
config: &Config,
) -> Self
pub fn new( storage: SqliteStorage, langbase: LangbaseClient, config: &Config, ) -> Self
Create a new tree mode handler
Sourcepub async fn process(&self, params: TreeParams) -> AppResult<TreeResult>
pub async fn process(&self, params: TreeParams) -> AppResult<TreeResult>
Process a tree reasoning request
Sourcepub async fn focus_branch(
&self,
session_id: &str,
branch_id: &str,
) -> AppResult<Branch>
pub async fn focus_branch( &self, session_id: &str, branch_id: &str, ) -> AppResult<Branch>
Focus on a specific branch, making it the active branch
Sourcepub async fn list_branches(&self, session_id: &str) -> AppResult<Vec<Branch>>
pub async fn list_branches(&self, session_id: &str) -> AppResult<Vec<Branch>>
Get all branches for a session
Sourcepub async fn update_branch_state(
&self,
branch_id: &str,
state: BranchState,
) -> AppResult<Branch>
pub async fn update_branch_state( &self, branch_id: &str, state: BranchState, ) -> AppResult<Branch>
Update branch state (complete, abandon)
Trait Implementations§
Auto Trait Implementations§
impl Freeze for TreeMode
impl !RefUnwindSafe for TreeMode
impl Send for TreeMode
impl Sync for TreeMode
impl Unpin for TreeMode
impl !UnwindSafe for TreeMode
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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