Nimrod OID support. An OID is a global ID that consists of a timestamp, a unique counter and a random value. This combination should suffice to produce a globally distributed unique ID. This implementation was extracted from the Mongodb interface and it thus binary compatible with a Mongo OID.
This implementation calls math.randomize() for the first call of genOid.
Types
Toid = object time: int32 ## fuzz: int32 ## count: int32 ##
- an OID
Procs
proc hexbyte(hex: char): int {.raises: [], tags: [].}
proc parseOid(str: cstring): Toid {.raises: [], tags: [].}
- parses an OID.
proc oidToString(oid: Toid; str: cstring) {.raises: [], tags: [].}
proc `$`(oid: Toid): string {.raises: [], tags: [].}
proc genOid(): Toid {.raises: [], tags: [].}
- generates a new OID.
proc generatedTime(oid: Toid): TTime {.raises: [], tags: [].}
- returns the generated timestamp of the OID.