diff --git a/src/lib.rs b/src/lib.rs index de85e22..81a17dd 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -210,16 +210,78 @@ pub struct Place { } /// An address for a place. +/// +/// [Address details](https://nominatim.org/release-docs/latest/api/Output/#addressdetails) #[derive(Serialize, Deserialize, Debug, Clone)] pub struct Address { - pub city: Option, - pub state_district: Option, + pub continent: Option, + + pub country: Option, + pub country_code: Option, + + pub region: Option, pub state: Option, + pub state_district: Option, + pub county: Option, #[serde(rename = "ISO3166-2-lvl4")] pub iso3166_2_lvl4: Option, + + pub municipality: Option, + pub city: Option, + pub town: Option, + pub village: Option, + + pub city_district: Option, + pub district: Option, + pub borough: Option, + pub suburb: Option, + pub subdivision: Option, + + pub hamlet: Option, + pub croft: Option, + pub isolated_dwelling: Option, + + pub neighbourhood: Option, + pub allotments: Option, + pub quarter: Option, + + pub city_block: Option, + pub residential: Option, + pub farm: Option, + pub farmyard: Option, + pub industrial: Option, + pub commercial: Option, + pub retail: Option, + + pub road: Option, + + pub house_number: Option, + pub house_name: Option, + + pub emergency: Option, + pub historic: Option, + pub military: Option, + pub natural: Option, + pub landuse: Option, + pub place: Option, + pub railway: Option, + pub man_made: Option, + pub aerialway: Option, + pub boundary: Option, + pub amenity: Option, + pub aeroway: Option, + pub club: Option, + pub craft: Option, + pub leisure: Option, + pub office: Option, + pub mountain_pass: Option, + pub shop: Option, + pub tourism: Option, + pub bridge: Option, + pub tunnel: Option, + pub waterway: Option, + pub postcode: Option, - pub country: Option, - pub country_code: Option, } /// Extra metadata that a place may have.