gproxy_protocol/transform/
mod.rs1pub mod compact;
8pub mod count_tokens;
9pub mod embeddings;
10mod error;
11pub mod files;
12pub mod generate;
13pub mod guardian;
14pub mod identity;
15pub mod images;
16mod instructions;
17pub mod memory;
18pub mod models;
19pub mod video;
20pub mod web_search;
21
22pub use error::{
23 Diagnostic, DiagnosticKind, Report, TransformError, TransformErrorKind, UpstreamError,
24};
25
26pub(crate) fn optional<T>(value: Result<T, TransformError>) -> Result<Option<T>, TransformError> {
29 match value {
30 Ok(value) => Ok(Some(value)),
31 Err(error)
32 if matches!(
33 error.kind(),
34 TransformErrorKind::Unsupported | TransformErrorKind::MissingMetadata
35 ) =>
36 {
37 Ok(None)
38 }
39 Err(error) => Err(error),
40 }
41}
42
43#[derive(Debug, Clone, PartialEq, Eq)]
46pub struct Converted<T> {
47 pub value: T,
48 pub report: Report,
49}