Об этом проекте

# Swift UUIDV7 Соответствующий RFC 9562 тип данных UUID v7 для Swift, обеспечивающий кроссплатформенную поддержку и интеграции с популярными библиотеками. В отличие от `UUID` из Foundation (обычно v4), `UUIDV7` встраивает временную метку в свои 48 наиболее значимых бит, что обеспечивает упорядоченность и лучшую локальность индекса для первичных ключей баз данных. ## Ключевые возможности - **Упорядочивание по временной метке**: сортировка коллекций по `UUIDV7` как ключу сортировки. - **Субмиллисекундная монотонность**: гарантирует монотонно возрастающие генерации в 100% случаев, даже если системные часы идут назад. - **RawRepresentable**: использует `UUID` из Foundation в качестве своего сырого значения, с динамическим поиском членов для всех типичных свойств `UUID`. - **Интеграции с библиотеками** через трейты пакета: - `SwiftUUIDV7Tagged`: удобные инициализаторы для `Tagged`. - `SwiftUUIDV7GRDB`: соответствия `DatabaseValueConvertible` и `StatementColumnConvertible`, а также функции базы данных. - `SwiftUUIDV7StructuredQueries`: соответствие `QueryBindable` и представления столбцов. - `SwiftUUIDV7Dependencies`: зависимость `UUIDV7Generator`. - `SwiftUUIDV7SQLiteData`: совместимость синхронизации CloudKit через `IdentifierStringConvertible`. - **AppIntents**: соответствует `EntityIdentifierConvertible` на платформах Apple. ## Установка Добавьте как зависимость Swift Package Manager: ```swift dependencies: [ .package( url: "https://github.com/mhayes853/swift-uuidv7", from: "0.6.1", traits: ["SwiftUUIDV7GRDB"] ) ] ``` Или скопируйте `Sources/UUIDV7/UUIDV7.swift` напрямую в ваш проект. ## Лицензия Лицензия MIT.