pub struct TokenBudget {
pub remaining: u32,
pub reserved: u32,
}Expand description
Token budget threaded through every strategy resolution. Strategies
consume from a shared budget; the ContextAssembler honors the
final cap when packing fragments.
Fields§
§remaining: u32§reserved: u32Implementations§
Source§impl TokenBudget
impl TokenBudget
pub fn new(total: u32) -> Self
pub fn consume(&mut self, n: u32) -> Result<()>
pub fn reserve(&mut self, n: u32) -> Result<()>
pub fn release(&mut self, n: u32)
Sourcepub fn split(&self, n: u32) -> Vec<TokenBudget>
pub fn split(&self, n: u32) -> Vec<TokenBudget>
Split the current remaining budget into n equal slices for
cooperative parallel resolution. Each slice is independent;
after the parallel join, the caller sums what was actually used
and updates the parent.
Trait Implementations§
Source§impl Clone for TokenBudget
impl Clone for TokenBudget
Source§fn clone(&self) -> TokenBudget
fn clone(&self) -> TokenBudget
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 TokenBudget
impl Debug for TokenBudget
Source§impl<'de> Deserialize<'de> for TokenBudget
impl<'de> Deserialize<'de> for TokenBudget
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
Source§impl Serialize for TokenBudget
impl Serialize for TokenBudget
impl Copy for TokenBudget
Auto Trait Implementations§
impl Freeze for TokenBudget
impl RefUnwindSafe for TokenBudget
impl Send for TokenBudget
impl Sync for TokenBudget
impl Unpin for TokenBudget
impl UnsafeUnpin for TokenBudget
impl UnwindSafe for TokenBudget
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