pub trait GetUserOptions<'a> {
type Getter: GetUserOption;
// Required method
fn push(&mut self, option: TmuxCommand<'a>);
// Provided methods
fn user_option<S>(self, name: S) -> Self
where Self: Sized,
S: Into<Cow<'a, str>> { ... }
fn user_option_ext<T, S>(self, target: Option<T>, name: S) -> Self
where Self: Sized,
T: Into<Cow<'a, str>>,
S: Into<Cow<'a, str>> { ... }
}