gproxy_protocol/adapt/models/
mod.rs1mod collect;
6mod convert;
7mod query;
8
9use crate::{HttpBody, WireResponse, codec::CodecLimits, transform::TransformError};
10
11pub use collect::{collect_claude, collect_gemini, collect_openai};
12pub use convert::*;
13
14#[derive(Debug, Clone, Copy)]
15pub struct ModelListLimits {
16 pub codec: CodecLimits,
17
18 pub max_declared_bytes: u64,
21}
22
23#[derive(Debug)]
24pub struct ModelDirectory<T> {
25 pub value: T,
26 pub completed_calls: usize,
27}
28
29#[derive(Debug)]
30pub enum ModelListFailure {
31 Transform(TransformError),
32 Rejected(Box<WireResponse<HttpBody>>),
33}
34
35#[derive(Debug)]
39pub struct ModelListError {
40 pub completed_calls: usize,
41 pub completed_models: usize,
42 pub failure: ModelListFailure,
43}
44
45impl From<TransformError> for ModelListError {
46 fn from(error: TransformError) -> Self {
47 Self {
48 completed_calls: 0,
49 completed_models: 0,
50 failure: ModelListFailure::Transform(error),
51 }
52 }
53}