Trait Fold

Source
pub trait Fold {
    // Required method
    fn fold(self, outer: Self) -> Self;
}
Expand description

A property that is folded to determine its final value.

In the example below, the chain of stroke values is folded into a single value: 4pt + red.

#set rect(stroke: red)
#set rect(stroke: 4pt)
#rect()

Required Methods§

Source

fn fold(self, outer: Self) -> Self

Fold this inner value with an outer folded value.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl Fold for bool

Source§

fn fold(self, _: bool) -> bool

Source§

impl<T> Fold for Option<T>
where T: Fold,

Source§

fn fold(self, outer: Option<T>) -> Option<T>

Source§

impl<T> Fold for Arc<T>
where T: Clone + Fold,

Source§

fn fold(self, outer: Arc<T>) -> Arc<T>

Source§

impl<T> Fold for Vec<T>

Source§

fn fold(self, outer: Vec<T>) -> Vec<T>

Source§

impl<T, const N: usize> Fold for SmallVec<[T; N]>

Implementors§

Source§

impl Fold for Alignment

Source§

impl Fold for Abs

Source§

impl Fold for Length

Source§

impl Fold for Margin

Source§

impl Fold for Costs

Source§

impl Fold for FontFeatures

Source§

impl Fold for ItalicToggle

Source§

impl Fold for TextSize

Source§

impl Fold for WeightDelta

Source§

impl Fold for Depth

Source§

impl<S, D> Fold for Derived<S, D>
where S: Fold, D: Fold,

Source§

impl<T> Fold for Smart<T>
where T: Fold,

Source§

impl<T> Fold for Celled<T>
where T: Fold,

Source§

impl<T> Fold for Corners<Option<T>>
where T: Fold,

Source§

impl<T> Fold for Rel<T>
where T: Numeric + Fold,

Source§

impl<T> Fold for Sides<Option<T>>
where T: Fold,

Source§

impl<T> Fold for Augment<T>
where T: Numeric + Fold,

Source§

impl<T> Fold for Stroke<T>
where T: Numeric + Fold,

Source§

impl<T> Fold for OneOrMultiple<T>