openai_protocol/builders/mod.rs
1//! Builder patterns for protocol response types
2//!
3//! This module provides ergonomic builders for response types with many optional fields.
4//! Builders help avoid telescoping constructors and make construction intent clear.
5//!
6//! # Organization
7//!
8//! Builders are organized by API:
9//! - `chat/` - Chat Completion API builders (response, stream_response)
10//! - `realtime/` - Realtime API builders (response, server_event, client_event)
11//! - `responses/` - Responses API builder (response)
12//!
13//! # Optional Fields
14//!
15//! For optional fields, builders provide `maybe_*` methods that handle `Option<T>` directly:
16//! ```ignore
17//! builder
18//! .field(value)
19//! .maybe_optional_field(optional_value) // Accepts Option<T>
20//! .build()
21//! ```
22
23pub mod chat;
24pub mod realtime;
25pub mod responses;
26
27// Re-export all builders for convenient access
28pub use chat::{ChatCompletionResponseBuilder, ChatCompletionStreamResponseBuilder};
29pub use realtime::RealtimeResponseBuilder;
30pub use responses::ResponsesResponseBuilder;