pub struct RuntimePolicy { /* private fields */ }Expand description
Runtime choices used to create one immutable operation context.
The default policy is deterministic. System state is consulted only after callers explicitly
select a system adapter, either individually or through RuntimePolicy::try_native.
Implementations§
Source§impl RuntimePolicy
impl RuntimePolicy
Sourcepub const NATIVE_SYSTEM_ADAPTER_IDS: &'static [&'static str]
pub const NATIVE_SYSTEM_ADAPTER_IDS: &'static [&'static str]
System adapters selected by Self::try_native.
This list is a policy contract, not a report of what Cargo compiled. Consumers that
advertise a native policy should intersect it with compiled_system_adapter_ids.
Sourcepub fn deterministic() -> RuntimePolicy
pub fn deterministic() -> RuntimePolicy
Returns the deterministic, target-independent core policy.
Sourcepub fn try_native() -> Result<RuntimePolicy, RuntimePolicyError>
pub fn try_native() -> Result<RuntimePolicy, RuntimePolicyError>
Selects the native clock, complete local-time rules, and random source.
Timing instrumentation remains opt-in through RuntimePolicy::try_with_system_timing
because enabling it changes observable diagnostics and adds work to every operation.
Sourcepub fn from_operation_context(context: OperationContext) -> RuntimePolicy
pub fn from_operation_context(context: OperationContext) -> RuntimePolicy
Replays an already captured operation without consulting system state again.
pub fn with_fixed_unix_millis(self, unix_millis: i64) -> RuntimePolicy
pub fn try_with_system_clock(self) -> Result<RuntimePolicy, RuntimePolicyError>
pub fn with_fixed_today(self, today: Option<CivilDate>) -> RuntimePolicy
Sourcepub fn try_with_fixed_today_at_local_midnight(
self,
today: CivilDate,
) -> Result<RuntimePolicy, RuntimePolicyError>
pub fn try_with_fixed_today_at_local_midnight( self, today: CivilDate, ) -> Result<RuntimePolicy, RuntimePolicyError>
Freezes both the local calendar day and the operation clock at that day’s local midnight.
Use this when a host accepts a date-only configuration value such as fixed_today.
Resolving it through the selected time zone preserves target-date DST behavior and returns
a typed error when the date cannot be represented instead of overflowing at an offset
boundary.
Sourcepub fn try_with_fixed_local_offset_minutes(
self,
offset_minutes: i32,
) -> Result<RuntimePolicy, RuntimePolicyError>
pub fn try_with_fixed_local_offset_minutes( self, offset_minutes: i32, ) -> Result<RuntimePolicy, RuntimePolicyError>
Selects a fixed UTC offset without overloading a sentinel value to mean “system”.
pub fn with_local_time_zone(self, time_zone: LocalTimeZone) -> RuntimePolicy
pub fn try_with_system_time_zone( self, ) -> Result<RuntimePolicy, RuntimePolicyError>
pub fn with_fixed_seed(self, seed: u64) -> RuntimePolicy
pub fn try_with_system_random(self) -> Result<RuntimePolicy, RuntimePolicyError>
Sourcepub fn try_with_system_timing(self) -> Result<RuntimePolicy, RuntimePolicyError>
pub fn try_with_system_timing(self) -> Result<RuntimePolicy, RuntimePolicyError>
Enables the compiled system timing adapter.
pub fn fixed_local_offset_minutes(&self) -> Option<i32>
pub fn fixed_today(&self) -> Option<CivilDate>
pub fn local_time_zone(&self) -> &LocalTimeZone
Sourcepub fn begin_operation(&self) -> Result<OperationContext, RuntimePolicyError>
pub fn begin_operation(&self) -> Result<OperationContext, RuntimePolicyError>
Freezes all selected adapters for one parse or render operation.
Trait Implementations§
Source§impl Clone for RuntimePolicy
impl Clone for RuntimePolicy
Source§fn clone(&self) -> RuntimePolicy
fn clone(&self) -> RuntimePolicy
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for RuntimePolicy
impl Debug for RuntimePolicy
Source§impl Default for RuntimePolicy
impl Default for RuntimePolicy
Source§fn default() -> RuntimePolicy
fn default() -> RuntimePolicy
impl Eq for RuntimePolicy
Source§impl PartialEq for RuntimePolicy
impl PartialEq for RuntimePolicy
impl StructuralPartialEq for RuntimePolicy
Auto Trait Implementations§
impl Freeze for RuntimePolicy
impl RefUnwindSafe for RuntimePolicy
impl Send for RuntimePolicy
impl Sync for RuntimePolicy
impl Unpin for RuntimePolicy
impl UnsafeUnpin for RuntimePolicy
impl UnwindSafe for RuntimePolicy
Blanket Implementations§
Source§impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
Source§fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
replaced by palette::chromatic_adaptation::AdaptIntoUnclamped
Source§fn adapt_into(self) -> D
fn adapt_into(self) -> D
replaced by palette::chromatic_adaptation::AdaptIntoUnclamped
Source§impl<T, C> AdaptIntoUnclamped<T> for Cwhere
T: AdaptFromUnclamped<C>,
impl<T, C> AdaptIntoUnclamped<T> for Cwhere
T: AdaptFromUnclamped<C>,
Source§type Scalar = <T as AdaptFromUnclamped<C>>::Scalar
type Scalar = <T as AdaptFromUnclamped<C>>::Scalar
Source§fn adapt_into_unclamped_with<M>(self) -> Twhere
M: LmsToXyz<<C as AdaptIntoUnclamped<T>>::Scalar> + XyzToLms<<C as AdaptIntoUnclamped<T>>::Scalar>,
fn adapt_into_unclamped_with<M>(self) -> Twhere
M: LmsToXyz<<C as AdaptIntoUnclamped<T>>::Scalar> + XyzToLms<<C as AdaptIntoUnclamped<T>>::Scalar>,
Source§impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
Source§fn arrays_from(colors: C) -> T
fn arrays_from(colors: C) -> T
Source§impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
Source§fn arrays_into(self) -> C
fn arrays_into(self) -> C
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
Source§impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
Source§type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
parameters when converting.Source§fn cam16_into_unclamped(
self,
parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>,
) -> T
fn cam16_into_unclamped( self, parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>, ) -> T
self into C, using the provided parameters.Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
Source§fn components_from(colors: C) -> T
fn components_from(colors: C) -> T
Source§impl<T, C> ComponentsInto<C> for T
impl<T, C> ComponentsInto<C> for T
Source§fn components_into(self) -> C
fn components_into(self) -> C
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> FromAngle<T> for T
impl<T> FromAngle<T> for T
Source§fn from_angle(angle: T) -> T
fn from_angle(angle: T) -> T
angle.Source§impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
Source§fn from_stimulus(other: U) -> T
fn from_stimulus(other: U) -> T
other into Self, while performing the appropriate scaling,
rounding and clamping.Source§impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
Source§fn into_angle(self) -> U
fn into_angle(self) -> U
T.Source§impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
Source§type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
parameters when converting.Source§fn into_cam16_unclamped(
self,
parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>,
) -> T
fn into_cam16_unclamped( self, parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>, ) -> T
self into C, using the provided parameters.Source§impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
Source§fn into_color(self) -> U
fn into_color(self) -> U
Source§impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
Source§fn into_color_unclamped(self) -> U
fn into_color_unclamped(self) -> U
Source§impl<T> IntoStimulus<T> for T
impl<T> IntoStimulus<T> for T
Source§fn into_stimulus(self) -> T
fn into_stimulus(self) -> T
self into T, while performing the appropriate scaling,
rounding and clamping.Source§impl<U, T> ToOwnedObj<U> for Twhere
U: FromObjRef<T>,
impl<U, T> ToOwnedObj<U> for Twhere
U: FromObjRef<T>,
Source§fn to_owned_obj(&self, data: FontData<'_>) -> U
fn to_owned_obj(&self, data: FontData<'_>) -> U
T, using the provided data to resolve any offsets.Source§impl<U, T> ToOwnedTable<U> for Twhere
U: FromTableRef<T>,
impl<U, T> ToOwnedTable<U> for Twhere
U: FromTableRef<T>,
fn to_owned_table(&self) -> U
Source§impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
Source§type Error = <C as TryFromComponents<T>>::Error
type Error = <C as TryFromComponents<T>>::Error
try_into_colors fails to cast.Source§fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
Source§impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
Source§fn try_into_color(self) -> Result<U, OutOfBounds<U>>
fn try_into_color(self) -> Result<U, OutOfBounds<U>>
OutOfBounds error is returned which contains
the unclamped color. Read more