pub trait StatementInput {
type Item: SqlValue;
// Required methods
fn to_value(self) -> Either<Vec<Self::Item>, ()> ⓘ;
fn to_sql(&self) -> &str;
// Provided method
fn values(
self,
) -> Result<Either<Vec<Box<dyn InputParameter>>, ()>, OdbcHelperError>
where Self: Sized { ... }
}