pub(crate) struct ElementErrors {
batch: BatchedErrors,
refused: bool,
class: Vec<String>,
data: ConditionData,
}Expand description
The failures of a list read element by element (map_vecsxp_batched),
folded into one error that keeps the classes and fields of the check
refusals among them.
Each failure’s reason goes into a BatchedErrors, so the message has the
grammar of every batched conversion: got a data frame (element 2); expected list, got numeric (elements 3, 5). A check’s refusal
(SexpError::Condition) is worded by its
argument_message when it has
one (the type’s own words for a value refused as an argument), else by its
message; any other error by SexpError::r_reason.
With no refusal among the failures the error is the batch’s
SexpError::InvalidValue. With one, it is a SexpError::Condition
with the batch’s message, the classes of every refusal (in the order they
first occur) and their fields (the first of each name), so a handler for a
check’s class catches a list of the type as it catches one value of it.
Fields§
§batch: BatchedErrors§refused: bool§class: Vec<String>§data: ConditionDataImplementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for ElementErrors
impl RefUnwindSafe for ElementErrors
impl Send for ElementErrors
impl Sync for ElementErrors
impl Unpin for ElementErrors
impl UnsafeUnpin for ElementErrors
impl UnwindSafe for ElementErrors
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
Source§impl<T> SizeHint for Twhere
T: ?Sized,
impl<T> SizeHint for Twhere
T: ?Sized,
Source§default fn lower_bound(&self) -> usize
default fn lower_bound(&self) -> usize
core_io_internals)[u8; 12] could return any value between 0 and
12 inclusively as a correct implementation. Read moreSource§impl<T> SizedTypeProperties for T
impl<T> SizedTypeProperties for T
Source§#[doc(hidden)]const SIZE: usize = _
#[doc(hidden)]const SIZE: usize = _
sized_type_properties)Source§#[doc(hidden)]const ALIGN: usize = _
#[doc(hidden)]const ALIGN: usize = _
sized_type_properties)Source§#[doc(hidden)]const ALIGNMENT: Alignment = _
#[doc(hidden)]const ALIGNMENT: Alignment = _
ptr_alignment_type)Source§#[doc(hidden)]const IS_ZST: bool = _
#[doc(hidden)]const IS_ZST: bool = _
sized_type_properties)Source§#[doc(hidden)]const LAYOUT: Layout = _
#[doc(hidden)]const LAYOUT: Layout = _
sized_type_properties)Source§#[doc(hidden)]const MAX_SLICE_LEN: usize = _
#[doc(hidden)]const MAX_SLICE_LEN: usize = _
sized_type_properties)[Self]. Read moreLayout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 88 bytes