pub struct ProfileProveState {
pub row_id: SloRowId,
pub phase: OptimizationPhase,
pub baseline: Option<SloBaseline>,
pub after: Option<SloBaseline>,
pub evidence: Option<OptimizationEvidence>,
pub optimization_description: String,
pub started_at_unix_ms: u128,
}Expand description
State of the profile-prove loop for a single SLO row.
Fields§
§row_id: SloRowIdSLO row being optimized.
phase: OptimizationPhaseCurrent phase.
baseline: Option<SloBaseline>Baseline measurement (set after baseline phase).
after: Option<SloBaseline>After measurement (set after measure phase).
evidence: Option<OptimizationEvidence>Verification evidence (set after verify phase).
optimization_description: StringDescription of optimization being attempted.
started_at_unix_ms: u128Started timestamp.
Implementations§
Source§impl ProfileProveState
impl ProfileProveState
Sourcepub fn new(row_id: SloRowId, optimization_description: &str) -> Self
pub fn new(row_id: SloRowId, optimization_description: &str) -> Self
Create a new state for an SLO row.
Sourcepub fn record_baseline(&mut self, baseline: SloBaseline)
pub fn record_baseline(&mut self, baseline: SloBaseline)
Record baseline measurement.
Sourcepub fn mark_optimized(&mut self)
pub fn mark_optimized(&mut self)
Mark optimization as applied.
Sourcepub fn record_verification(&mut self, evidence: OptimizationEvidence)
pub fn record_verification(&mut self, evidence: OptimizationEvidence)
Record verification evidence.
Sourcepub fn record_after(&mut self, after: SloBaseline)
pub fn record_after(&mut self, after: SloBaseline)
Record final measurement.
Sourcepub fn result(&self) -> Option<OptimizationResult>
pub fn result(&self) -> Option<OptimizationResult>
Get the optimization result (only valid when phase is Complete).
Sourcepub fn is_complete(&self) -> bool
pub fn is_complete(&self) -> bool
Check if the loop is complete.
Trait Implementations§
Source§impl Clone for ProfileProveState
impl Clone for ProfileProveState
Auto Trait Implementations§
impl Freeze for ProfileProveState
impl RefUnwindSafe for ProfileProveState
impl Send for ProfileProveState
impl Sync for ProfileProveState
impl Unpin for ProfileProveState
impl UnsafeUnpin for ProfileProveState
impl UnwindSafe for ProfileProveState
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