flaken 0.2.2

Configurable bitwidth snowflake id generator, encoder, decoder
Documentation
  • Coverage
  • 100%
    9 out of 9 items documented1 out of 9 items with examples
  • Size
  • Source code size: 10.71 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 1.39 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 8s Average build duration of successful builds.
  • all releases: 8s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • Homepage
  • Documentation
  • teburd/flaken
    13 0 2
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • teburd

Flaken

Build Status Coverage Status

A 64bit snowflake like id generator, encoder, and decoder which allows setting the bitwidths of each portion of the 64 bit encoded id.

let mut flake = Flaken::default().node(10).epoch(0).bitwidths(48, 12);
let id = flake.next();
let (timestamp, node, seq) = flake.decode(id);
assert!(timestamp > 0);
assert_eq!(node, 10);
assert_eq!(seq, 0);
assert_eq!(flake.encode(timestamp, node, seq), id);