Skip to content
This repository was archived by the owner on Apr 25, 2020. It is now read-only.

harlanhaskins/Punctual.swift

Repository files navigation

Punctual

Swift dates, more fun. Heavily inspired by ObjectiveSugar

Installation

Punctual is available through the Swift Package Manager!

Just add this as a dependency in your Package.swift:

.Package(url: "https://github.com/harlanhaskins/Punctual.swift.git", majorVersion: 1)

Contents

Punctual extends Int, NSDateComponents, NSDate, and NSCalendarUnit, and adds features to make them work well together. It uses the robust NSCalendar APIs, so you can be sure it's accurate!

print(1.day.ago)
// Optional(2015-04-08 04:49:30 +0000)

print(10.days.until(Date()))
// Optional(2015-03-30 04:11:03 +0000)

print((1.day + 2.months - 9.years).ago)
// Optional(2024-02-08 18:28:26 +0000)

print(Date() - 1.day.ago!)

print(1.year.timeInterval)
// Optional(31622400.0)

print((Date() + 30.minutes)!.nearestHour)
// 1

print(4.years.fromNow?.longTimeString)
// Optional("12:11:44 AM EDT")

print(4.years.fromNow?.stringWithFormat("HH:mm"))
// Optional("00:11")