pub struct SessionUsageTracker {
pub cumulative: UsageReport,
pub turn_count: u64,
pub last_turn: Option<UsageReport>,
}Expand description
Accumulated usage tracking for an entire session.
The session loop maintains one of these and calls record_turn after
each turn completes. The platform can read the cumulative usage at any time.
Fields§
§cumulative: UsageReportCumulative usage across all turns.
turn_count: u64Number of turns completed.
last_turn: Option<UsageReport>Usage from the most recent turn (for per-turn billing).
Implementations§
Source§impl SessionUsageTracker
impl SessionUsageTracker
Sourcepub fn record_turn(&mut self, turn_usage: UsageReport)
pub fn record_turn(&mut self, turn_usage: UsageReport)
Record usage from a completed turn.
Sourcepub fn total(&self) -> &UsageReport
pub fn total(&self) -> &UsageReport
Get the cumulative usage report.
Trait Implementations§
Source§impl Clone for SessionUsageTracker
impl Clone for SessionUsageTracker
Source§fn clone(&self) -> SessionUsageTracker
fn clone(&self) -> SessionUsageTracker
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SessionUsageTracker
impl Debug for SessionUsageTracker
Source§impl Default for SessionUsageTracker
impl Default for SessionUsageTracker
Source§fn default() -> SessionUsageTracker
fn default() -> SessionUsageTracker
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for SessionUsageTracker
impl<'de> Deserialize<'de> for SessionUsageTracker
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for SessionUsageTracker
impl RefUnwindSafe for SessionUsageTracker
impl Send for SessionUsageTracker
impl Sync for SessionUsageTracker
impl Unpin for SessionUsageTracker
impl UnsafeUnpin for SessionUsageTracker
impl UnwindSafe for SessionUsageTracker
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