pub trait Property<G, S> { fn get(&self) -> G; fn set(&self, value: S); }
A property is something that has a setter and a getter.