3 releases (1 stable)
1.0.0 | Sep 6, 2021 |
---|---|
0.2.0 | Jan 27, 2020 |
0.1.0 | Jan 25, 2020 |
#254 in Date and time
100 downloads per month
3.5MB
950 lines
zone-detect
This is a Rust version of the ZoneDetect C library. The initial conversion was done with c2rust, then manually cleaned up (it no longer contains any unsafe code).
This crate can be used to look up the country and timezone of any location on Earth.
Running the example
cargo run --example demo data/timezone21.bin 35.0715 -82.5216
Data source
The database containing the location and timezone data is in
data/timezone21.bin
. It can be updated as follows:
git clone https://github.com/BertoldVdb/ZoneDetect
cd ZoneDetect/database/builder
./makedb.sh
This will produce, among other things, out_v1/timezone21.bin
.
lib.rs
:
Example:
let database = zone_detect::Database::open("data/timezone21.bin")
.expect("failed to open database");
let s = database.simple_lookup(zone_detect::Location {
latitude: 35.0715,
longitude: -82.5216,
}).unwrap();
assert_eq!(s, "America/New_York");