How malcommac/swiftdate works
SwiftDate is a Swift date-and-time toolkit. Its central workflow parses a string or constructs a date, represents it with a calendar/time-zone/locale region, applies date operations, then compares or formats the result. The repository also documents date enumeration, Codable support, random generation, and time-period management. Parsing and several APIs are evidenced by sampled source; some capability links rely on README descriptions and the file tree, so uncertain call wiring is omitted.
Main entry points: DateInRegion.swift Regional date · String+Parser.swift String parsing · Formatter+Protocols.swift Formatter styles · ISOParser.swift ISO parser
Components 23
Parsing and creation
- String parsing
Sources/SwiftDate/Foundation+Extras/String+Parser.swift - ISO parser
Sources/SwiftDate/Formatters/ISOParser.swift - .NET parser
Sources/SwiftDate/Formatters/DotNetParserFormatter.swift - Date creation
Sources/SwiftDate/DateInRegion/DateInRegion+Create.swift - Enumeration and random
Sources/SwiftDate/DateInRegion/DateInRegion+Create.swift
Date operations
- Regional date
Sources/SwiftDate/DateInRegion/DateInRegion.swift - Region settings
Sources/SwiftDate/DateInRegion/Region.swift - Foundation date
Sources/SwiftDate/Date/Date.swift - Date interface
Sources/SwiftDate/DateRepresentable.swift - Component access
Sources/SwiftDate/DateInRegion/DateInRegion+Components.swift - Date manipulation
Sources/SwiftDate/DateInRegion/DateInRegion+Math.swift - Date comparison
Sources/SwiftDate/DateInRegion/DateInRegion+Compare.swift - Foundation date operations
Sources/SwiftDate/Date/Date+Math.swift - Foundation date comparison
Sources/SwiftDate/Date/Date+Compare.swift
Formatting and support
- Formatter styles
Sources/SwiftDate/Formatters/Formatter+Protocols.swift - ISO formatting
Sources/SwiftDate/Formatters/ISOFormatter.swift - .NET formatting
Sources/SwiftDate/Formatters/DotNetParserFormatter.swift - Locale support
Sources/SwiftDate/Supports/Locales.swift
Time periods
- Time period
Sources/SwiftDate/TimePeriod/TimePeriod.swift - Period operations
Sources/SwiftDate/TimePeriod/TimePeriodProtocol.swift - Period collections
Sources/SwiftDate/TimePeriod/Groups/TimePeriodCollection.swift - Period chains
Sources/SwiftDate/TimePeriod/Groups/TimePeriodChain.swift
Other components
- Library user
Connections 23
- Library user → String parsing: parses text
- Library user → Date creation: creates dates
- String parsing → ISO parser: dispatches ISO
- String parsing → .NET parser: dispatches .NET
- String parsing → Regional date: constructs date
- ISO parser → Regional date: produces parsed date
- .NET parser → Regional date: produces parsed date
- Date creation → Regional date: creates regional date
- Regional date → Region settings: uses settings
- Library user → Component access: extracts components
- Library user → Date manipulation: manipulates date
- Library user → Date comparison: compares dates
- Library user → Enumeration and random: enumerates dates
- Library user → Foundation date operations: manipulates date
- Library user → Foundation date comparison: compares dates
- Library user → Formatter styles: formats date
- Formatter styles → ISO formatting: formats ISO
- Formatter styles → .NET formatting: formats .NET
- Regional date → Locale support: uses locale
- Library user → Time period: creates periods
- Time period → Period operations: uses period rules
- Library user → Period collections: manages periods
- Library user → Period chains: chains periods