pub trait AsAbstractBuilding: AsAbstractConstruction {
// Required method
fn abstract_building(&self) -> &AbstractBuilding;
// Provided methods
fn class(&self) -> &Option<Code> { ... }
fn functions(&self) -> &Vec<Code> { ... }
fn usages(&self) -> &Vec<Code> { ... }
fn roof_type(&self) -> &Option<Code> { ... }
fn storeys_above_ground(&self) -> Option<i64> { ... }
fn storeys_below_ground(&self) -> Option<i64> { ... }
}