pub struct PrepareOptions { /* private fields */ }Expand description
Per-prepare request options before runtime normalization.
Raw options intentionally do not implement Hash; normalized keys are
created only after placement and planning resolution.
§Examples
use tenferro_runtime::PrepareOptions;
assert!(PrepareOptions::new().planning_seed().is_none());Implementations§
Source§impl PrepareOptions
impl PrepareOptions
Sourcepub fn new() -> Self
pub fn new() -> Self
Return default prepare options.
§Examples
use tenferro_runtime::{CacheInFlightBehavior, PrepareOptions};
let options = PrepareOptions::new();
assert_eq!(options.cache_in_flight(), CacheInFlightBehavior::Wait);Sourcepub fn with_placement(self, placement: ProgramPlacementConstraint) -> Self
pub fn with_placement(self, placement: ProgramPlacementConstraint) -> Self
Set the placement constraint.
§Examples
use tenferro_runtime::{PrepareOptions, ProgramPlacementConstraint};
let placement = ProgramPlacementConstraint::any();
let options = PrepareOptions::new().with_placement(placement.clone());
assert_eq!(options.placement(), Some(&placement));Sourcepub fn with_hard_workspace_limit_bytes(self, limit: Option<usize>) -> Self
pub fn with_hard_workspace_limit_bytes(self, limit: Option<usize>) -> Self
Set or reset the per-call workspace override.
Passing None resets the field to inherit the policy value.
§Examples
use tenferro_runtime::PrepareOptions;
let options = PrepareOptions::new().with_hard_workspace_limit_bytes(Some(0));
assert_eq!(options.hard_workspace_limit_bytes(), Some(0));
assert_eq!(options.with_hard_workspace_limit_bytes(None).hard_workspace_limit_bytes(), None);Sourcepub fn with_planning_seed(self, seed: u64) -> Self
pub fn with_planning_seed(self, seed: u64) -> Self
Set the per-call planning seed override.
§Examples
use tenferro_runtime::PrepareOptions;
assert_eq!(PrepareOptions::new().with_planning_seed(3).planning_seed(), Some(3));Sourcepub fn with_cache_in_flight(self, behavior: CacheInFlightBehavior) -> Self
pub fn with_cache_in_flight(self, behavior: CacheInFlightBehavior) -> Self
Set the in-flight cache behavior for this request.
§Examples
use tenferro_runtime::{CacheInFlightBehavior, PrepareOptions};
let options = PrepareOptions::new().with_cache_in_flight(CacheInFlightBehavior::Refuse);
assert_eq!(options.cache_in_flight(), CacheInFlightBehavior::Refuse);Sourcepub fn placement(&self) -> Option<&ProgramPlacementConstraint>
pub fn placement(&self) -> Option<&ProgramPlacementConstraint>
Return the raw placement constraint, if supplied.
§Examples
use tenferro_runtime::{PrepareOptions, ProgramPlacementConstraint};
let placement = ProgramPlacementConstraint::any();
let options = PrepareOptions::new().with_placement(placement.clone());
assert_eq!(options.placement(), Some(&placement));Sourcepub fn hard_workspace_limit_bytes(&self) -> Option<usize>
pub fn hard_workspace_limit_bytes(&self) -> Option<usize>
Return the raw per-call workspace override.
§Examples
use tenferro_runtime::PrepareOptions;
assert_eq!(
PrepareOptions::new().with_hard_workspace_limit_bytes(Some(16)).hard_workspace_limit_bytes(),
Some(16)
);Sourcepub fn planning_seed(&self) -> Option<u64>
pub fn planning_seed(&self) -> Option<u64>
Return the raw per-call planning seed override.
§Examples
use tenferro_runtime::PrepareOptions;
assert_eq!(PrepareOptions::new().with_planning_seed(9).planning_seed(), Some(9));Sourcepub fn cache_in_flight(&self) -> CacheInFlightBehavior
pub fn cache_in_flight(&self) -> CacheInFlightBehavior
Return the request’s in-flight cache behavior.
§Examples
use tenferro_runtime::{CacheInFlightBehavior, PrepareOptions};
assert_eq!(PrepareOptions::new().cache_in_flight(), CacheInFlightBehavior::Wait);Trait Implementations§
Source§impl Clone for PrepareOptions
impl Clone for PrepareOptions
Source§fn clone(&self) -> PrepareOptions
fn clone(&self) -> PrepareOptions
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 Debug for PrepareOptions
impl Debug for PrepareOptions
Source§impl Default for PrepareOptions
impl Default for PrepareOptions
Source§fn default() -> PrepareOptions
fn default() -> PrepareOptions
Returns the “default value” for a type. Read more
Source§impl PartialEq for PrepareOptions
impl PartialEq for PrepareOptions
Source§fn eq(&self, other: &PrepareOptions) -> bool
fn eq(&self, other: &PrepareOptions) -> bool
Tests for
self and other values to be equal, and is used by ==.impl Eq for PrepareOptions
impl StructuralPartialEq for PrepareOptions
Auto Trait Implementations§
impl Freeze for PrepareOptions
impl RefUnwindSafe for PrepareOptions
impl Send for PrepareOptions
impl Sync for PrepareOptions
impl Unpin for PrepareOptions
impl UnsafeUnpin for PrepareOptions
impl UnwindSafe for PrepareOptions
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,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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