NSDateが期間内かを調べる方法です。
SwiftDate
をimportしていますが、これはdate2015_10_01 + 2.day
というように目的のNSDateを作るために使いました。
import SwiftDate let date2015_10_01 = NSDate().beginningOfMonth let date2015_10_03 = date2015_10_01 + 2.day let date2015_10_02 = date2015_10_01 + 1.day (date2015_10_01...date2015_10_03).contains(date2015_10_02) // → true (date2015_10_01...date2015_10_02).contains(date2015_10_03) // → false (date2015_10_01...date2015_10_02).contains(date2015_10_02) // → true
containsメソッドは下のように定義されていたので、NSDateでなくともComparable
プロトコルを持っていれば同様の事ができそうです。
public struct ClosedInterval<Bound : Comparable> : IntervalType, Equatable, CustomStringConvertible, CustomDebugStringConvertible, _Reflectable { public func contains(x: Bound) -> Bool }