Crate wof

Source
Expand description

§WOF

Who’s On First is a gazetteer of all the places in the world from continents to neighbourhoods and venues.

This project gather some utilities to work with WOF documents in rust. Some of them are already available in Go-lang.

use wof::*;
// Create and validate a WOF GeoJSON object from string
let buf = r#"{
    "id": 0,
    "type": "Feature",
    "properties": { "name:eng_x_preferred":[ "Null Island" ], "name:fra_x_preferred":[ "Null Island" ], "wof:id":0, "wof:lang":[ "eng" ] },
    "bbox": [ 0, 0, 0, 0 ],
    "geometry": {"coordinates":[0, 0],"type":"Point"}
  }"#.to_string();
let json = parse_string_to_json(buf).unwrap();
let geojson = WOFGeoJSON::as_valid_wof_geojson(&json).unwrap();
assert_eq!(geojson.id, 0);

Modules§

repo
Work with WOF repository folders. Walk through directories.
shapefile
sqlite
Module to create and add documents to WOF SQLites databases.
utils
Utilities for the WOF ecosystem.

Structs§

JsonObject
A binary tree implementation of a string -> JsonValue map. You normally don’t have to interact with instances of Object, much more likely you will be using the JsonValue::Object variant, which wraps around this struct.
WOFGeoJSON
Representation of a WOF GeoJSON, contains all required properties.

Enums§

JsonValue

Functions§

json_to_writer
Serialize a JsonValue as a JSON into the IO stream.
json_to_writer_pretty
Serialize a JsonValue as a WOF pretty-printed JSON into the IO stream.
object_to_writer
Serialize an Object as a JSON into the IO stream.
object_to_writer_pretty
Serialize an Object as a WOF pretty-printed JSON into the IO stream.
parse_file_to_json
Open a file, read the content and return the JsonValue.
parse_string_to_json
Parse the String buffer and return the associated JsonValue.
read_file_to_string
Read a file and write the content in a String.
wof_to_writer
Serialize a WOFGeoJSON as a JSON into the IO stream.
wof_to_writer_pretty
Serialize a WOFGeoJSON as a WOF pretty-printed JSON into the IO stream.