عن المشروع
# Swift UUIDV7
نوع بيانات UUID v7 متوافق مع RFC 9562 للغة 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.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.