3 releases (breaking)
0.3.0 | Jul 7, 2022 |
---|---|
0.2.0 | Dec 7, 2021 |
0.1.0 | Dec 6, 2021 |
#309 in Date and time
84KB
2.5K
SLoC
Example
Dependencies:
[dependencies]
id-generator = "0.3.0"
Code:
/// basic
use chrono::{TimeZone, Utc};
use id_generator::snowflake::{self, SnowflakeConfig};
fn main() {
let mut config = SnowflakeConfig::new();
config.base_timestamp = Utc.ymd(2022, 1, 1).and_hms(0, 0, 0).timestamp_millis();
config.datacenter_id = 0;
config.worker_id = 0;
// ...
snowflake::set_config(config);
let id = snowflake::next_id();
println!("{}", id);
}
/// basic53
use chrono::{TimeZone, Utc};
use id_generator::snowflake53::{self, SnowflakeConfig};
fn main() {
let mut config = SnowflakeConfig::new();
config.base_seconds = Utc.ymd(2022, 1, 1).and_hms(0, 0, 0).timestamp();
config.worker_id = 0;
// ...
snowflake53::set_config(config);
let id = snowflake53::next_id();
println!("{}", id);
}
Dependencies
~1.5MB
~20K SLoC