CardTruncation

Struct CardTruncation 

Source
pub struct CardTruncation {
    pub requested_end: f64,
    pub last_row: f64,
    pub reach: f64,
}
Expand description

A card that stopped short of the rows it was asked for, in the caller’s DISPLAY unit (MBA-1476 follow-up).

Refusing to FABRICATE a row the flight never reached is right, and stays. Refusing to print the rows it did reach is not: a .22 LR asked for the default 1200 yd card should see its hundred-yard lines and learn where the bullet stops, not a bare exit code. So the card truncates, and this is the record of that — carried to stderr for a CLI reader and as a structured field on every JSON/bridge surface, because a truncation a caller cannot detect is its own silent failure.

Fields§

§requested_end: f64

The furthest row the card asked for (its --end).

§last_row: f64

The last row it could actually print.

§reach: f64

How far the solved flight itself got — a property of the load, not of the request.

Implementations§

Source§

impl CardTruncation

Source

pub fn message(&self, unit: &str) -> String

The one wording every truncated card surface uses. unit labels the display distance unit (“yd” / “m”).

Source

pub fn printed_note(&self, unit: &str) -> String

The same notice sized for PAPER: the one line a printed card carries in its footer (MBA-1477).

Self::message is written for a terminal, where a 180-character sentence wraps and costs nothing. A dope card footer is a single centred line about eighty characters wide at the fixed footer size, drawn on every page beside the engine/table provenance, so the printed form states the same three facts — where the card stops, what was asked for, how far the load flies — and drops the sentence explaining that the missing rows were not fabricated. Both live on this type so the paper and the terminal cannot come to say different things about the same card.

Trait Implementations§

Source§

impl Clone for CardTruncation

Source§

fn clone(&self) -> CardTruncation

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 CardTruncation

Source§

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

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

impl From<CardTruncationV1> for CardTruncation

Back to the engine type, so the wording lives on CardTruncation alone and no surface has to restate the field mapping in order to say the same sentence.

Source§

fn from(wire: CardTruncationV1) -> Self

Converts to this type from the input type.
Source§

impl PartialEq for CardTruncation

Source§

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

Source§

impl StructuralPartialEq for CardTruncation

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> Same for T

Source§

type Output = T

Should always be Self
§

impl<SS, SP> SupersetOf<SS> for SP
where SS: SubsetOf<SP>,

§

fn to_subset(&self) -> Option<SS>

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more
§

fn is_in_subset(&self) -> bool

Checks if self is actually part of its subset T (and can be converted to it).
§

fn to_subset_unchecked(&self) -> SS

Use with care! Same as self.to_subset but without any property checks. Always succeeds.
§

fn from_subset(element: &SS) -> SP

The inclusion map: converts self to the equivalent element of its superset.
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.
Source§

impl<T> Scalar for T
where T: 'static + Clone + PartialEq + Debug,