image::io

Type Alias Limits

Source
pub type Limits = Limits;
👎Deprecated: this type has been moved to image::Limits
Expand description

Deprecated re-export of Limits

Aliased Type§

struct Limits {
    pub max_image_width: Option<u32>,
    pub max_image_height: Option<u32>,
    pub max_alloc: Option<u64>,
}

Fields§

§max_image_width: Option<u32>

The maximum allowed image width. This limit is strict. The default is no limit.

§max_image_height: Option<u32>

The maximum allowed image height. This limit is strict. The default is no limit.

§max_alloc: Option<u64>

The maximum allowed sum of allocations allocated by the decoder at any one time excluding allocator overhead. This limit is non-strict by default and some decoders may ignore it. The bytes required to store the output image count towards this value. The default is 512MiB.

Implementations

Source§

impl Limits

Source

pub fn no_limits() -> Limits

Disable all limits.

Source

pub fn check_support(&self, _supported: &LimitSupport) -> ImageResult<()>

This function checks that all currently set strict limits are supported.

Source

pub fn check_dimensions(&self, width: u32, height: u32) -> ImageResult<()>

This function checks the max_image_width and max_image_height limits given the image width and height.

Source

pub fn reserve(&mut self, amount: u64) -> ImageResult<()>

This function checks that the current limit allows for reserving the set amount of bytes, it then reduces the limit accordingly.

Source

pub fn reserve_usize(&mut self, amount: usize) -> ImageResult<()>

This function acts identically to reserve, but takes a usize for convenience.

Source

pub fn reserve_buffer( &mut self, width: u32, height: u32, color_type: ColorType, ) -> ImageResult<()>

This function acts identically to reserve, but accepts the width, height and color type used to create an ImageBuffer and does all the math for you.

Source

pub fn free(&mut self, amount: u64)

This function increases the max_alloc limit with amount. Should only be used together with reserve.

Source

pub fn free_usize(&mut self, amount: usize)

This function acts identically to free, but takes a usize for convenience.

Trait Implementations

Source§

impl Clone for Limits

Source§

fn clone(&self) -> Limits

Returns a copy 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 Limits

Source§

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

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

impl Default for Limits

Source§

fn default() -> Limits

Returns the “default value” for a type. Read more
Source§

impl Hash for Limits

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for Limits

Source§

fn eq(&self, other: &Limits) -> 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 Eq for Limits

Source§

impl StructuralPartialEq for Limits