pub struct SpacePenalty {
pub excessive_stretch: u64,
pub excessive_shrink: u64,
pub tracking_penalty: u64,
}Expand description
Penalty modifiers for space adjustment quality.
Higher values make the optimizer work harder to avoid that adjustment.
Fields§
§excessive_stretch: u64Extra demerit for stretching beyond 75% of max stretch.
excessive_shrink: u64Extra demerit for shrinking beyond 75% of max shrink.
tracking_penalty: u64Extra demerit for any inter-character spacing adjustment.
Implementations§
Source§impl SpacePenalty
impl SpacePenalty
Sourcepub const PERMISSIVE: Self
pub const PERMISSIVE: Self
Permissive: allow aggressive adjustments with low penalty.
Sourcepub fn evaluate(&self, ratio_fixed: i32, category: SpaceCategory) -> u64
pub fn evaluate(&self, ratio_fixed: i32, category: SpaceCategory) -> u64
Evaluate the penalty for a given adjustment ratio and space category.
ratio_fixed is in 1/256ths (positive = stretch, negative = shrink).
Returns additional demerits beyond the base badness.
Trait Implementations§
Source§impl Clone for SpacePenalty
impl Clone for SpacePenalty
Source§fn clone(&self) -> SpacePenalty
fn clone(&self) -> SpacePenalty
Returns a duplicate of the value. Read more
1.0.0 · 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 SpacePenalty
impl Debug for SpacePenalty
Source§impl Default for SpacePenalty
impl Default for SpacePenalty
Source§impl Hash for SpacePenalty
impl Hash for SpacePenalty
Source§impl PartialEq for SpacePenalty
impl PartialEq for SpacePenalty
impl Copy for SpacePenalty
impl Eq for SpacePenalty
impl StructuralPartialEq for SpacePenalty
Auto Trait Implementations§
impl Freeze for SpacePenalty
impl RefUnwindSafe for SpacePenalty
impl Send for SpacePenalty
impl Sync for SpacePenalty
impl Unpin for SpacePenalty
impl UnsafeUnpin for SpacePenalty
impl UnwindSafe for SpacePenalty
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,
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
Compare self to
key and return true if they are equal.