프로젝트 소개
# Swift UUIDV7
RFC 9562를 준수하는 Swift용 UUID v7 데이터 타입으로, 크로스 플랫폼 지원과 인기 있는 라이브러리와의 통합을 제공합니다. Foundation의 `UUID`(일반적으로 v4)와 달리 `UUIDV7`은 최상위 48비트에 타임스탬프를 내장하여 순서성과 데이터베이스 기본 키에 대한 더 나은 인덱스 지역성을 가능하게 합니다.
## 주요 기능
- **타임스탬프 기반 정렬**: `UUIDV7`을 정렬 키로 사용하여 컬렉션을 정렬할 수 있습니다.
- **서브밀리초 단조성**: 시스템 시계가 역행하더라도 100% 항상 단조 증가하는 생성을 보장합니다.
- **RawRepresentable**: Foundation `UUID`를 원시 값으로 사용하며, 모든 일반적인 `UUID` 속성에 대한 동적 멤버 조회를 제공합니다.
- **패키지 트레이트를 통한 라이브러리 통합**:
- `SwiftUUIDV7Tagged`: `Tagged`를 위한 편의 이니셜라이저.
- `SwiftUUIDV7GRDB`: `DatabaseValueConvertible` 및 `StatementColumnConvertible` 준수와 데이터베이스 함수.
- `SwiftUUIDV7StructuredQueries`: `QueryBindable` 준수와 컬럼 표현.
- `SwiftUUIDV7Dependencies`: `UUIDV7Generator` 의존성.
- `SwiftUUIDV7SQLiteData`: `IdentifierStringConvertible`을 통한 CloudKit 동기화 호환성.
- **AppIntents**: Apple 플랫폼에서 `EntityIdentifierConvertible`을 준수합니다.
## 설치
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.