pub struct ContextReserves {
pub thinking_tokens: u64,
pub tool_result_tokens: u64,
pub output_tokens: u64,
pub safety_margin_tokens: u64,
pub thinking_accounting: ThinkingAccounting,
}Expand description
Typed reserves carved out of the provider window before any context is admitted.
Fields§
§thinking_tokens: u64Thinking tokens reserved IN ADDITION to the output envelope. Zero on wires where thinking already spends from the output cap.
tool_result_tokens: u64§output_tokens: u64The request’s output envelope. On ThinkingAccounting::InsideOutputBudget
wires this is max(output_reserve, thinking_budget) — the wire
requires the output cap to cover thinking, so the larger governs.
safety_margin_tokens: u64§thinking_accounting: ThinkingAccountingThe wire semantics the thinking/output split was computed under.
Implementations§
Trait Implementations§
Source§impl Clone for ContextReserves
impl Clone for ContextReserves
impl Copy for ContextReserves
Source§impl Debug for ContextReserves
impl Debug for ContextReserves
impl Eq for ContextReserves
Source§impl PartialEq for ContextReserves
impl PartialEq for ContextReserves
impl StructuralPartialEq for ContextReserves
Auto Trait Implementations§
impl Freeze for ContextReserves
impl RefUnwindSafe for ContextReserves
impl Send for ContextReserves
impl Sync for ContextReserves
impl Unpin for ContextReserves
impl UnsafeUnpin for ContextReserves
impl UnwindSafe for ContextReserves
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.