pub struct AdaptiveCardReportV1 {
pub schema_version: u32,
pub method: String,
pub assumptions: Vec<String>,
pub rows: Vec<CardRow>,
pub budget_met: bool,
pub rows_capped: bool,
pub worst_elevation_error: f64,
pub worst_windage_error: f64,
pub worst_error_range_m: f64,
pub verification_grid_step_m: f64,
}Expand description
What an adaptive card is, plus what its own numbers were measured to be worth.
The error fields are MEASURED by a dense verification pass over the declared grid after
the rows are final – they are not the loop’s running estimate, and budget_met is
recomputed from that pass rather than inherited from the insertion loop.
Serialize (Task 12): adaptive-card -o json prints this struct pretty-printed
verbatim, field names unchanged – unlike the four Task 9 surfaces, there is no legacy
hand-built json! shape to preserve here, so a plain derive IS the wire format.
Fields§
§schema_version: u32§method: StringStable identifier for how these rows were chosen.
assumptions: Vec<String>Exactly five entries; see adaptive_card. Index-stable: a consumer may quote
assumptions[3] and mean the half-click floor.
rows: Vec<CardRow>Printed rows, ascending by range (meters). Dial values are quantized when clicks were supplied.
budget_met: bool§rows_capped: boolThe row cap stopped refinement while violations remained.
worst_elevation_error: f64Worst measured elevation error over the audited points, in the card’s printed unit.
worst_windage_error: f64Worst measured windage error over the audited points, in the card’s printed unit.
worst_error_range_m: f64Range of the single worst point by budget-normalized excess (ties to the lowest range). The two per-axis maxima above may each occur elsewhere, which is exactly why they are reported as their own scalars.
verification_grid_step_m: f64Spacing of the declared verification grid, meters. The honesty claim extends to this grid and no further.
Trait Implementations§
Source§impl Clone for AdaptiveCardReportV1
impl Clone for AdaptiveCardReportV1
Source§fn clone(&self) -> AdaptiveCardReportV1
fn clone(&self) -> AdaptiveCardReportV1
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for AdaptiveCardReportV1
impl Debug for AdaptiveCardReportV1
Auto Trait Implementations§
impl Freeze for AdaptiveCardReportV1
impl RefUnwindSafe for AdaptiveCardReportV1
impl Send for AdaptiveCardReportV1
impl Sync for AdaptiveCardReportV1
impl Unpin for AdaptiveCardReportV1
impl UnsafeUnpin for AdaptiveCardReportV1
impl UnwindSafe for AdaptiveCardReportV1
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§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).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.