Spec-Zone.ru › Nim

std/oids

Исходный код Редактировать

Поддержка OID в Nim. OID — это глобальный идентификатор, состоящий из метки времени, уникального счётчика и случайного значения. Это сочетание должно быть достаточно для генерации глобально уникального идентификатора.

Данная реализация вызывает initRand() при первом вызове genOid.

Импорты

hashes, times, endians, random, decode_helpers

Типы

Oid = object
Объект OID. Исходный код Редактировать

Процедуры

proc `$`(oid: Oid): string {....raises: [], tags: [], forbids: [].}
Преобразует OID в строку. Исходный код Редактировать
proc `==`(oid1: Oid; oid2: Oid): bool {.inline, ...raises: [], tags: [],
                                        forbids: [].}
Сравнивает два OID на равенство. Исходный код Редактировать
proc generatedTime(oid: Oid): Time {....raises: [], tags: [], forbids: [].}
Возвращает сгенерированную метку времени OID. Исходный код Редактировать
proc genOid(): Oid {....raises: [], tags: [TimeEffect], forbids: [].}
Генерирует новый OID.

Пример:

doAssert ($genOid()).len == 24

Пример: cmd: -r:off

echo $genOid() # for example, "5fc7f546ddbbc84800006aaf"
Исходный код Редактировать
proc hash(oid: Oid): Hash {....raises: [], tags: [], forbids: [].}
Генерирует хеш OID для использования в хеш-таблицах. Исходный код Редактировать
proc hexbyte(hex: char): int {.inline, ...raises: [], tags: [], forbids: [].}
Исходный код Редактировать
proc parseOid(str: cstring): Oid {....raises: [], tags: [], forbids: [].}
Парсит OID. Исходный код Редактировать

© 2006–2024 Andreas Rumpf
Licensed under the MIT License.
https://nim-lang.org/docs/oids.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API