pub struct Capabilities {
pub tool_calls: FeatureSupport,
pub parallel_tool_calls: FeatureSupport,
pub thinking: FeatureSupport,
pub vision: FeatureSupport,
pub prompt_cache: FeatureSupport,
pub thinking_echo: ThinkingEcho,
}Expand description
Provider-level capability matrix.
Model-level differences are expressed via ModelCapabilityOverrides; the main loop
merges them as needed:
a model-level Some(_) overrides the provider level, while None falls back to the
provider level.
Fields§
§tool_calls: FeatureSupportTool calls (content_block contains tool_use / tool_calls fields).
parallel_tool_calls: FeatureSupportMultiple concurrent tool_use calls within a single turn.
thinking: FeatureSupportChain of thought.
vision: FeatureSupportMultimodal input (images).
prompt_cache: FeatureSupportPrompt cache.
thinking_echo: ThinkingEchoThinking content replay strategy. See ThinkingEcho.
Trait Implementations§
Source§impl Clone for Capabilities
impl Clone for Capabilities
Source§fn clone(&self) -> Capabilities
fn clone(&self) -> Capabilities
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 moreimpl Copy for Capabilities
Source§impl Debug for Capabilities
impl Debug for Capabilities
Source§impl<'de> Deserialize<'de> for Capabilities
impl<'de> Deserialize<'de> for Capabilities
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
impl Eq for Capabilities
Source§impl PartialEq for Capabilities
impl PartialEq for Capabilities
Source§fn eq(&self, other: &Capabilities) -> bool
fn eq(&self, other: &Capabilities) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for Capabilities
impl Serialize for Capabilities
impl StructuralPartialEq for Capabilities
Auto Trait Implementations§
impl Freeze for Capabilities
impl RefUnwindSafe for Capabilities
impl Send for Capabilities
impl Sync for Capabilities
impl Unpin for Capabilities
impl UnsafeUnpin for Capabilities
impl UnwindSafe for Capabilities
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