async_openai/
impls.rs

1use crate::{
2    admin::AdminAPIKeys,
3    admin::AuditLogs,
4    admin::Certificates,
5    admin::GroupRoles,
6    admin::GroupUsers,
7    admin::Groups,
8    admin::Invites,
9    admin::ProjectAPIKeys,
10    admin::ProjectCertificates,
11    admin::ProjectGroupRoles,
12    admin::ProjectGroups,
13    admin::ProjectRateLimits,
14    admin::ProjectRoles,
15    admin::ProjectServiceAccounts,
16    admin::ProjectUserRoles,
17    admin::ProjectUsers,
18    admin::Projects,
19    admin::Roles,
20    admin::Usage,
21    admin::UserRoles,
22    admin::Users,
23    assistants::Assistants,
24    assistants::Messages,
25    assistants::Runs,
26    assistants::Steps,
27    assistants::Threads,
28    audio::Audio,
29    audio::Speech,
30    audio::Transcriptions,
31    audio::Translations,
32    batches::Batches,
33    chat::Chat,
34    chatkit::{Chatkit, ChatkitSessions, ChatkitThreads},
35    completion::Completions,
36    containers::ContainerFiles,
37    containers::Containers,
38    embedding::Embeddings,
39    evals::EvalRunOutputItems,
40    evals::EvalRuns,
41    evals::Evals,
42    file::Files,
43    fine_tuning::FineTuning,
44    image::Images,
45    model::Models,
46    moderation::Moderations,
47    responses::ConversationItems,
48    responses::Conversations,
49    responses::Responses,
50    uploads::Uploads,
51    vectorstores::VectorStoreFileBatches,
52    vectorstores::VectorStoreFiles,
53    vectorstores::VectorStores,
54    video::Videos,
55};
56
57// request builder impls macro
58
59/// Macro to implement `RequestOptionsBuilder` for wrapper types containing `RequestOptions`
60macro_rules! impl_request_options_builder {
61    ($type:ident) => {
62        impl<'c, C: crate::config::Config> crate::traits::RequestOptionsBuilder for $type<'c, C> {
63            fn options_mut(&mut self) -> &mut crate::RequestOptions {
64                &mut self.request_options
65            }
66
67            fn options(&self) -> &crate::RequestOptions {
68                &self.request_options
69            }
70        }
71    };
72}
73
74#[cfg(feature = "realtime")]
75use crate::Realtime;
76
77impl_request_options_builder!(AdminAPIKeys);
78impl_request_options_builder!(Assistants);
79impl_request_options_builder!(Audio);
80impl_request_options_builder!(AuditLogs);
81impl_request_options_builder!(Batches);
82impl_request_options_builder!(Certificates);
83impl_request_options_builder!(Chat);
84impl_request_options_builder!(Chatkit);
85impl_request_options_builder!(ChatkitSessions);
86impl_request_options_builder!(ChatkitThreads);
87impl_request_options_builder!(Completions);
88impl_request_options_builder!(ContainerFiles);
89impl_request_options_builder!(Containers);
90impl_request_options_builder!(ConversationItems);
91impl_request_options_builder!(Conversations);
92impl_request_options_builder!(Embeddings);
93impl_request_options_builder!(Evals);
94impl_request_options_builder!(EvalRunOutputItems);
95impl_request_options_builder!(EvalRuns);
96impl_request_options_builder!(Files);
97impl_request_options_builder!(FineTuning);
98impl_request_options_builder!(GroupRoles);
99impl_request_options_builder!(GroupUsers);
100impl_request_options_builder!(Groups);
101impl_request_options_builder!(Images);
102impl_request_options_builder!(Invites);
103impl_request_options_builder!(Messages);
104impl_request_options_builder!(Models);
105impl_request_options_builder!(Moderations);
106impl_request_options_builder!(Projects);
107impl_request_options_builder!(ProjectGroupRoles);
108impl_request_options_builder!(ProjectGroups);
109impl_request_options_builder!(ProjectRoles);
110impl_request_options_builder!(ProjectUserRoles);
111impl_request_options_builder!(ProjectUsers);
112impl_request_options_builder!(ProjectServiceAccounts);
113impl_request_options_builder!(ProjectAPIKeys);
114impl_request_options_builder!(ProjectRateLimits);
115impl_request_options_builder!(ProjectCertificates);
116impl_request_options_builder!(Roles);
117#[cfg(feature = "realtime")]
118impl_request_options_builder!(Realtime);
119impl_request_options_builder!(Responses);
120impl_request_options_builder!(Runs);
121impl_request_options_builder!(Speech);
122impl_request_options_builder!(Steps);
123impl_request_options_builder!(Threads);
124impl_request_options_builder!(Transcriptions);
125impl_request_options_builder!(Translations);
126impl_request_options_builder!(Uploads);
127impl_request_options_builder!(Usage);
128impl_request_options_builder!(UserRoles);
129impl_request_options_builder!(Users);
130impl_request_options_builder!(VectorStoreFileBatches);
131impl_request_options_builder!(VectorStoreFiles);
132impl_request_options_builder!(VectorStores);
133impl_request_options_builder!(Videos);