pub struct RouteMatch {
pub requires_tools: Option<bool>,
pub min_tools: Option<usize>,
pub thinking: Option<bool>,
pub min_reasoning_effort: Option<ReasoningEffort>,
pub stream: Option<bool>,
pub min_input_tokens: Option<u32>,
pub response_format: Option<ResponseFormatKind>,
}Expand description
Request-shape predicates a route can require beyond the model glob.
Every field is optional; an absent predicate is a wildcard, so an empty
block matches all requests. The trustworthy discriminators in real agent
loops are thinking / min_reasoning_effort / stream and the model name
itself — the full tool catalogue is typically resent on every step, so
requires_tools / min_tools are weak signals retained for completeness.
Fields§
§requires_tools: Option<bool>§min_tools: Option<usize>§thinking: Option<bool>§min_reasoning_effort: Option<ReasoningEffort>§stream: Option<bool>§min_input_tokens: Option<u32>§response_format: Option<ResponseFormatKind>Implementations§
Source§impl RouteMatch
impl RouteMatch
pub fn matches_request(&self, request: &CanonicalRequest) -> bool
pub fn matched_predicates(&self) -> Vec<&'static str>
pub const fn validate(&self) -> GatewayResult<()>
Trait Implementations§
Source§impl Clone for RouteMatch
impl Clone for RouteMatch
Source§fn clone(&self) -> RouteMatch
fn clone(&self) -> RouteMatch
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 RouteMatch
Source§impl Debug for RouteMatch
impl Debug for RouteMatch
Source§impl Default for RouteMatch
impl Default for RouteMatch
Source§fn default() -> RouteMatch
fn default() -> RouteMatch
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for RouteMatch
impl<'de> Deserialize<'de> for RouteMatch
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 JsonSchema for RouteMatch
impl JsonSchema for RouteMatch
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
Whether JSON Schemas generated for this type should be included directly in parent schemas,
rather than being re-used where possible using the
$ref keyword. Read moreAuto Trait Implementations§
impl Freeze for RouteMatch
impl RefUnwindSafe for RouteMatch
impl Send for RouteMatch
impl Sync for RouteMatch
impl Unpin for RouteMatch
impl UnsafeUnpin for RouteMatch
impl UnwindSafe for RouteMatch
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more