pub struct CognitiveContextSession { /* private fields */ }Expand description
Runtime pairing of one durable binding with one non-serializable host port.
Implementations§
Source§impl CognitiveContextSession
impl CognitiveContextSession
pub fn new( binding: CognitivePackageBindingV1, provider: Arc<dyn CognitiveContextProvider>, ) -> CognitiveContextResult<Self>
pub fn binding(&self) -> &CognitivePackageBindingV1
pub fn provider_name(&self) -> &str
Trait Implementations§
Source§impl Clone for CognitiveContextSession
impl Clone for CognitiveContextSession
Source§fn clone(&self) -> CognitiveContextSession
fn clone(&self) -> CognitiveContextSession
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl ContextProvider for CognitiveContextSession
impl ContextProvider for CognitiveContextSession
Source§fn failure_mode(&self) -> ContextProviderFailureMode
fn failure_mode(&self) -> ContextProviderFailureMode
Whether provider failure may be omitted or must abort the turn.
Source§fn cognitive_package_binding(&self) -> Option<&CognitivePackageBindingV1>
fn cognitive_package_binding(&self) -> Option<&CognitivePackageBindingV1>
Exact cognitive-package identity, when this is Code’s typed adapter. Read more
Source§fn query<'life0, 'life1, 'async_trait>(
&'life0 self,
query: &'life1 ContextQuery,
) -> Pin<Box<dyn Future<Output = Result<ContextResult>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn query<'life0, 'life1, 'async_trait>(
&'life0 self,
query: &'life1 ContextQuery,
) -> Pin<Box<dyn Future<Output = Result<ContextResult>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Query the provider for relevant context
Source§fn on_turn_complete<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
_session_id: &'life1 str,
_prompt: &'life2 str,
_response: &'life3 str,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn on_turn_complete<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
_session_id: &'life1 str,
_prompt: &'life2 str,
_response: &'life3 str,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Called after each turn for memory extraction (optional) Read more
Auto Trait Implementations§
impl !RefUnwindSafe for CognitiveContextSession
impl !UnwindSafe for CognitiveContextSession
impl Freeze for CognitiveContextSession
impl Send for CognitiveContextSession
impl Sync for CognitiveContextSession
impl Unpin for CognitiveContextSession
impl UnsafeUnpin for CognitiveContextSession
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
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