pub enum BoardLayoutValidationError {
Show 14 variants
UnsupportedSchema {
found: String,
expected: &'static str,
},
EmptyName,
InvalidPitch {
pitch_mm: f32,
},
InvalidRows {
rows: usize,
},
InvalidLongRowCols {
long_row_cols: usize,
},
InvalidLongRowColsForRows {
rows: usize,
long_row_cols: usize,
},
InvalidOuterRadius {
marker_outer_radius_mm: f32,
},
InvalidInnerRadius {
marker_inner_radius_mm: f32,
},
InvalidRingWidth {
marker_ring_width_mm: f32,
},
InnerRadiusNotSmallerThanOuter {
marker_inner_radius_mm: f32,
marker_outer_radius_mm: f32,
},
NonPositiveCodeBandGap {
inner_ring_outer_edge_mm: f32,
outer_ring_inner_edge_mm: f32,
},
OuterDiameterExceedsMinCenterSpacing {
marker_outer_diameter_mm: f32,
min_center_spacing_mm: f32,
},
MarkerDrawDiameterExceedsMinCenterSpacing {
marker_draw_diameter_mm: f32,
min_center_spacing_mm: f32,
},
DerivedZeroColumns {
row_index: usize,
rows: usize,
long_row_cols: usize,
},
}Expand description
Validation failures for a board layout specification.
Variants§
UnsupportedSchema
Validation failed: unsupported target schema version.
Fields
EmptyName
Validation failed: target name is empty.
InvalidPitch
Validation failed: pitch is non-positive or non-finite.
InvalidRows
Validation failed: row count is zero.
InvalidLongRowCols
Validation failed: long-row column count is zero.
InvalidLongRowColsForRows
Validation failed: long-row columns must exceed short-row columns derived from row count.
InvalidOuterRadius
Validation failed: outer radius is non-positive or non-finite.
InvalidInnerRadius
Validation failed: inner radius is non-positive or non-finite.
InvalidRingWidth
Validation failed: ring width is non-positive or non-finite.
InnerRadiusNotSmallerThanOuter
Validation failed: inner radius must be strictly less than outer radius.
Fields
NonPositiveCodeBandGap
Validation failed: code band gap between inner and outer rings is non-positive.
Fields
OuterDiameterExceedsMinCenterSpacing
Validation failed: outer diameter exceeds minimum center-to-center spacing.
Fields
MarkerDrawDiameterExceedsMinCenterSpacing
Validation failed: marker draw diameter exceeds minimum center-to-center spacing.
Fields
DerivedZeroColumns
Validation failed: a row has zero columns after applying hex-lattice offset.
Trait Implementations§
Source§impl Clone for BoardLayoutValidationError
impl Clone for BoardLayoutValidationError
Source§fn clone(&self) -> BoardLayoutValidationError
fn clone(&self) -> BoardLayoutValidationError
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for BoardLayoutValidationError
impl Debug for BoardLayoutValidationError
Source§impl Display for BoardLayoutValidationError
impl Display for BoardLayoutValidationError
Source§impl Error for BoardLayoutValidationError
impl Error for BoardLayoutValidationError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
Source§impl From<BoardLayoutValidationError> for BoardLayoutLoadError
impl From<BoardLayoutValidationError> for BoardLayoutLoadError
Source§fn from(value: BoardLayoutValidationError) -> Self
fn from(value: BoardLayoutValidationError) -> Self
Auto Trait Implementations§
impl Freeze for BoardLayoutValidationError
impl RefUnwindSafe for BoardLayoutValidationError
impl Send for BoardLayoutValidationError
impl Sync for BoardLayoutValidationError
impl Unpin for BoardLayoutValidationError
impl UnwindSafe for BoardLayoutValidationError
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> CheckedAs for T
impl<T> CheckedAs for T
Source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
Source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
Source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<Src, Dst> LosslessTryInto<Dst> for Srcwhere
Dst: LosslessTryFrom<Src>,
impl<Src, Dst> LosslessTryInto<Dst> for Srcwhere
Dst: LosslessTryFrom<Src>,
Source§fn lossless_try_into(self) -> Option<Dst>
fn lossless_try_into(self) -> Option<Dst>
Source§impl<Src, Dst> LossyInto<Dst> for Srcwhere
Dst: LossyFrom<Src>,
impl<Src, Dst> LossyInto<Dst> for Srcwhere
Dst: LossyFrom<Src>,
Source§fn lossy_into(self) -> Dst
fn lossy_into(self) -> Dst
Source§impl<T> OverflowingAs for T
impl<T> OverflowingAs for T
Source§fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
Source§impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
Source§fn overflowing_cast_from(src: Src) -> (Dst, bool)
fn overflowing_cast_from(src: Src) -> (Dst, bool)
§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> SaturatingAs for T
impl<T> SaturatingAs for T
Source§fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
Source§impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
Source§fn saturating_cast_from(src: Src) -> Dst
fn saturating_cast_from(src: Src) -> Dst
Source§impl<T> StrictAs for T
impl<T> StrictAs for T
Source§fn strict_as<Dst>(self) -> Dstwhere
T: StrictCast<Dst>,
fn strict_as<Dst>(self) -> Dstwhere
T: StrictCast<Dst>,
Source§impl<Src, Dst> StrictCastFrom<Src> for Dstwhere
Src: StrictCast<Dst>,
impl<Src, Dst> StrictCastFrom<Src> for Dstwhere
Src: StrictCast<Dst>,
Source§fn strict_cast_from(src: Src) -> Dst
fn strict_cast_from(src: Src) -> Dst
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.