pub trait Resolve<T> {
// Required method
fn resolved_ref_cell(&self) -> &RefCell<Option<T>>;
// Provided methods
fn resolve(&self, resolved: T) { ... }
fn resolved(&self) -> &T { ... }
fn resolved_mut(&self) -> &mut T { ... }
fn is_resolved(&self) -> bool { ... }
}