pub struct KernelRequest {
pub call: ToolCallRequest,
pub tenant_id: TenantId,
}Expand description
Request accepted by KernelService.
Fields§
§call: ToolCallRequestTool-call request evaluated by the kernel.
tenant_id: TenantIdTenant partition key for tower middleware. Capability semantics stay
inside chio-kernel.
Implementations§
Source§impl KernelRequest
impl KernelRequest
Sourcepub fn new(call: ToolCallRequest, tenant_id: impl Into<TenantId>) -> Self
pub fn new(call: ToolCallRequest, tenant_id: impl Into<TenantId>) -> Self
Create a new kernel service request.
Trait Implementations§
Source§impl Service<KernelRequest> for KernelService
impl Service<KernelRequest> for KernelService
Source§type Response = ToolCallResponse
type Response = ToolCallResponse
Responses given by the service.
Source§type Error = KernelServiceError
type Error = KernelServiceError
Errors produced by the service.
Source§type Future = Pin<Box<dyn Future<Output = Result<<KernelService as Service<KernelRequest>>::Response, <KernelService as Service<KernelRequest>>::Error>> + Send>>
type Future = Pin<Box<dyn Future<Output = Result<<KernelService as Service<KernelRequest>>::Response, <KernelService as Service<KernelRequest>>::Error>> + Send>>
The future response value.
Source§impl<S> Service<KernelRequest> for KernelTraceService<S>where
S: Service<KernelRequest, Response = KernelResponse, Error = KernelServiceError> + Send + 'static,
S::Future: Send + 'static,
impl<S> Service<KernelRequest> for KernelTraceService<S>where
S: Service<KernelRequest, Response = KernelResponse, Error = KernelServiceError> + Send + 'static,
S::Future: Send + 'static,
Source§type Response = ToolCallResponse
type Response = ToolCallResponse
Responses given by the service.
Source§type Error = KernelServiceError
type Error = KernelServiceError
Errors produced by the service.
Source§type Future = Pin<Box<dyn Future<Output = Result<<KernelTraceService<S> as Service<KernelRequest>>::Response, <KernelTraceService<S> as Service<KernelRequest>>::Error>> + Send>>
type Future = Pin<Box<dyn Future<Output = Result<<KernelTraceService<S> as Service<KernelRequest>>::Response, <KernelTraceService<S> as Service<KernelRequest>>::Error>> + Send>>
The future response value.
Source§impl<S> Service<KernelRequest> for TenantConcurrencyLimitService<S>where
S: Service<KernelRequest, Error = KernelServiceError> + Clone + Send + 'static,
S::Future: Send + 'static,
S::Response: Send + 'static,
impl<S> Service<KernelRequest> for TenantConcurrencyLimitService<S>where
S: Service<KernelRequest, Error = KernelServiceError> + Clone + Send + 'static,
S::Future: Send + 'static,
S::Response: Send + 'static,
Source§type Error = KernelServiceError
type Error = KernelServiceError
Errors produced by the service.
Source§type Future = Pin<Box<dyn Future<Output = Result<<TenantConcurrencyLimitService<S> as Service<KernelRequest>>::Response, <TenantConcurrencyLimitService<S> as Service<KernelRequest>>::Error>> + Send>>
type Future = Pin<Box<dyn Future<Output = Result<<TenantConcurrencyLimitService<S> as Service<KernelRequest>>::Response, <TenantConcurrencyLimitService<S> as Service<KernelRequest>>::Error>> + Send>>
The future response value.
Auto Trait Implementations§
impl Freeze for KernelRequest
impl RefUnwindSafe for KernelRequest
impl Send for KernelRequest
impl Sync for KernelRequest
impl Unpin for KernelRequest
impl UnsafeUnpin for KernelRequest
impl UnwindSafe for KernelRequest
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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