rusty_openai/
util.rs

1#[macro_export]
2macro_rules! extend_url_params {
3    ($url:ident, $($param:ident),*) => {
4        $(
5            if let Some($param) = $param {
6                $url.push_str(&format!(concat!(stringify!($param), "={}&"), $param));
7            }
8        )*
9    };
10}
11
12#[macro_export]
13macro_rules! extend_form_text_fields {
14    ($form:ident, $($field:ident),*) => {
15        $(
16            if let Some($field) = $field {
17                $form = $form.text(stringify!($field), $field.to_string());
18            }
19        )*
20    };
21}
22
23#[macro_export]
24macro_rules! setters {
25    ($(
26        $(#[$setter_attributes:meta])*
27        $setter_ident:ident: $setter_type:ty,
28    )*) => {
29        $(
30            $(#[$setter_attributes])*
31            #[inline(always)]
32            pub fn $setter_ident(mut self, $setter_ident: $setter_type) -> Self {
33                self.$setter_ident = Some($setter_ident);
34                self
35            }
36        )*
37    };
38}