pub struct GroupAwareFillResult<R> {
pub kept: Vec<R>,
pub total: usize,
pub quota_candidates: usize,
pub bucket_not_in_quota: usize,
pub distinct_groups_kept: usize,
pub max_group_share_in_any_bucket: Option<f64>,
}Expand description
Outcome of group_aware_fill: kept items (original input order) plus the diversity/quota
stats a caller typically wants to report (e.g. in a run manifest).
Fields§
§kept: Vec<R>§total: usize§quota_candidates: usize§bucket_not_in_quota: usize§distinct_groups_kept: usizeLargest fraction any single group contributed to any one output bucket, considering only
buckets with >=2 kept items (a singleton bucket is trivially “100% one group” and would
otherwise always pin this at 1.0, telling a reader nothing about whether the fill actually
diversified any bucket that had a real choice to make). None if no bucket had >=2 kept.
Auto Trait Implementations§
impl<R> Freeze for GroupAwareFillResult<R>
impl<R> RefUnwindSafe for GroupAwareFillResult<R>where
R: RefUnwindSafe,
impl<R> Send for GroupAwareFillResult<R>where
R: Send,
impl<R> Sync for GroupAwareFillResult<R>where
R: Sync,
impl<R> Unpin for GroupAwareFillResult<R>where
R: Unpin,
impl<R> UnsafeUnpin for GroupAwareFillResult<R>
impl<R> UnwindSafe for GroupAwareFillResult<R>where
R: UnwindSafe,
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