pub struct DecodeLimits {
pub max_input_bytes: usize,
pub max_tokens: usize,
pub max_expr_nodes: usize,
pub max_depth: usize,
pub max_string_bytes: usize,
pub max_blob_bytes: usize,
pub max_collection_len: usize,
pub max_trivia_items: usize,
}Expand description
Resource ceiling shared by every codec decode path.
These bounds are applied to untrusted input before bulk allocation where possible. They are deliberately generous for normal data and only reject pathological input.
Fields§
§max_input_bytes: usizeMaximum total input size, in bytes.
max_tokens: usizeMaximum number of tokens the decoder may produce.
max_expr_nodes: usizeMaximum number of Expr nodes in the decoded result.
max_depth: usizeMaximum nesting depth.
max_string_bytes: usizeMaximum length of a single decoded string, in bytes.
max_blob_bytes: usizeMaximum length of a single decoded byte blob.
max_collection_len: usizeMaximum length of a single decoded collection (list, vector, map, set).
max_trivia_items: usizeMaximum number of trivia items (comments, whitespace) retained.
Trait Implementations§
Source§impl Clone for DecodeLimits
impl Clone for DecodeLimits
Source§fn clone(&self) -> DecodeLimits
fn clone(&self) -> DecodeLimits
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for DecodeLimits
Source§impl Debug for DecodeLimits
impl Debug for DecodeLimits
Source§impl Default for DecodeLimits
impl Default for DecodeLimits
impl Eq for DecodeLimits
Source§impl PartialEq for DecodeLimits
impl PartialEq for DecodeLimits
Source§fn eq(&self, other: &DecodeLimits) -> bool
fn eq(&self, other: &DecodeLimits) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for DecodeLimits
Auto Trait Implementations§
impl Freeze for DecodeLimits
impl RefUnwindSafe for DecodeLimits
impl Send for DecodeLimits
impl Sync for DecodeLimits
impl Unpin for DecodeLimits
impl UnsafeUnpin for DecodeLimits
impl UnwindSafe for DecodeLimits
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