Skip to main content

Constraints

Struct Constraints 

Source
pub struct Constraints {
    pub min_width: f32,
    pub max_width: f32,
    pub min_height: f32,
    pub max_height: f32,
}
Expand description

Constraints used during layout measurement.

Fields§

§min_width: f32§max_width: f32§min_height: f32§max_height: f32

Implementations§

Source§

impl Constraints

Source

pub fn tight(width: f32, height: f32) -> Self

Creates constraints with exact width and height.

Source

pub fn loose(max_width: f32, max_height: f32) -> Self

Creates constraints with loose bounds (min = 0, max = given values).

Source

pub fn is_tight(&self) -> bool

Returns true if these constraints have a single size that satisfies them.

Source

pub fn is_bounded(&self) -> bool

Returns true if all bounds are finite.

Source

pub fn constrain(&self, width: f32, height: f32) -> (f32, f32)

Constrains the provided width and height to fit within these constraints.

Source

pub fn has_bounded_width(&self) -> bool

Returns true if the width is bounded (max_width is finite).

Source

pub fn has_bounded_height(&self) -> bool

Returns true if the height is bounded (max_height is finite).

Source

pub fn has_tight_width(&self) -> bool

Returns true if both width and height are tight (min == max for both).

Source

pub fn has_tight_height(&self) -> bool

Returns true if the height is tight (min == max).

Source

pub fn tighten_width(self, width: f32) -> Self

Creates new constraints with tightened width (min = max = given width).

Source

pub fn tighten_height(self, height: f32) -> Self

Creates new constraints with tightened height (min = max = given height).

Source

pub fn copy_with_width(self, min_width: f32, max_width: f32) -> Self

Creates new constraints with the given width bounds.

Source

pub fn copy_with_height(self, min_height: f32, max_height: f32) -> Self

Creates new constraints with the given height bounds.

Source

pub fn deflate(self, horizontal: f32, vertical: f32) -> Self

Deflates constraints by the given amount on all sides. This is useful for applying padding before measuring children.

Source

pub fn loosen(self) -> Self

Creates new constraints with loosened minimums (min = 0).

Source

pub fn enforce(self, width: f32, height: f32) -> Self

Creates constraints that enforce the given size.

Trait Implementations§

Source§

impl Clone for Constraints

Source§

fn clone(&self) -> Constraints

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Constraints

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for Constraints

Source§

fn eq(&self, other: &Constraints) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for Constraints

Source§

impl StructuralPartialEq for Constraints

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.