Struct PacRuntimeBuilder
pub struct PacRuntimeBuilder { /* private fields */ }Available on crate features
js and pac and std only.Expand description
A PAC environment bound to exactly one javascript runtime.
Unlike JsRuntimeBuilder, this builder is deliberately not cloneable:
its host functions share one evaluation budget and cache, so reusing the
bound blueprint for another runtime would make those runtimes interfere.
Clone the PacEnv and call PacEnv::register again instead.
Implementations§
§impl PacRuntimeBuilder
impl PacRuntimeBuilder
pub fn build(self) -> Result<(JsRuntime, PacBudgetHandle), JsError>
pub fn build(self) -> Result<(JsRuntime, PacBudgetHandle), JsError>
Build the bound runtime on the current thread and return its budget handle, which the caller arms before each evaluation.
pub fn spawn(self) -> Result<(JsWorker, PacBudgetHandle), JsError>
pub fn spawn(self) -> Result<(JsWorker, PacBudgetHandle), JsError>
Spawn the bound runtime on a worker with the default configuration.
pub fn spawn_with(
self,
worker: JsWorkerBuilder,
) -> Result<(JsWorker, PacBudgetHandle), JsError>
pub fn spawn_with( self, worker: JsWorkerBuilder, ) -> Result<(JsWorker, PacBudgetHandle), JsError>
Spawn the bound runtime using worker and return its budget handle.
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for PacRuntimeBuilder
impl !UnwindSafe for PacRuntimeBuilder
impl Freeze for PacRuntimeBuilder
impl Send for PacRuntimeBuilder
impl Sync for PacRuntimeBuilder
impl Unpin for PacRuntimeBuilder
impl UnsafeUnpin for PacRuntimeBuilder
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§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§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a rama_grpc::Request§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§fn and<P, B, E>(self, other: P) -> And<T, P>
fn and<P, B, E>(self, other: P) -> And<T, P>
Create a new
Policy that returns Action::Follow only if self and other return
Action::Follow. Read more