pub trait Argument<T> {
// Required methods
fn name(&self) -> &str;
fn schema(&self) -> Schema;
fn deserialize(&self, json: Value) -> Result<T>;
// Provided method
fn is_required(&self) -> bool { ... }
}pub trait Argument<T> {
// Required methods
fn name(&self) -> &str;
fn schema(&self) -> Schema;
fn deserialize(&self, json: Value) -> Result<T>;
// Provided method
fn is_required(&self) -> bool { ... }
}