pub(crate) trait AsParams {
fn as_params(&self) -> Vec<(String, String)>;
}
pub(crate) fn push(params: &mut Vec<(String, String)>, key: &str, value: &impl ToString) {
params.push((key.to_string(), value.to_string()));
}
pub(crate) fn push_opt(
params: &mut Vec<(String, String)>,
key: &str,
value: Option<&impl ToString>,
) {
if let Some(v) = value {
params.push((key.to_string(), v.to_string()));
}
}