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

harlanhaskins/Punctual.swift

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 
 
 
 
 
 
 

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")