Skip to content

Latest commit

 

History

History
80 lines (63 loc) · 2.78 KB

README.md

File metadata and controls

80 lines (63 loc) · 2.78 KB

SwiftyConfiguration

Carthage compatible Pod Version Pod Platform Pod License Swift version

SwiftyConfiguration is modern Swift API for Plist.

Usage

1. Create Plist

create plist file and add your project.

plist.png

2. Define your plist keys
extension Keys {
    static let string      = Key<String>("string")
    static let url         = Key<NSURL>("url")
    static let number      = Key<NSNumber>("number")
    static let int         = Key<Int>("int")
    static let float       = Key<Float>("float")
    static let double      = Key<Double>("double")
    static let date        = Key<NSDate>("date")
    static let bool        = Key<Bool>("bool")
    static let array       = Key<Array<AnyObject>>("array")
    static let dictionary  = Key<[String : String]>("dictionary")
    
    // Support nested value.
    static let innerInt    = Key<Int>("array.0")
    static let innerArray  = Key<String>("array.1.0")
    static let innerString = Key<String>("dictionary.innerString")
}
3. Just use it!
let plistPath = NSBundle.mainBundle().pathForResource("Configuration", ofType: "plist")!
let config = Configuration(plistPath: plistPath)!

// You can get a plist value to type-safe.
let stringValue      = config.get(.string)!
let urlValue         = config.get(.url)!
let numberValue      = config.get(.number)!
let intValue         = config.get(.int)!
let floatValue       = config.get(.float)!
let doubleValue      = config.get(.double)!
let dateValue        = config.get(.date)!
let boolValue        = config.get(.bool)!
let arrayValue       = config.get(.array)!
let dictionaryValue  = config.get(.dictionary)!
let innerIntValue    = config.get(.innerInt)!
let innerArrayValue  = config.get(.innerArray)!
let innerStringValue = config.get(.innerString)!

Installation

Carthage

SwiftyConfiguration is available through Carthage. To install it, simply add the following line to your Cartfile:

github "ykyouhei/SwiftyConfiguration"

CocoaPods

SwiftyConfiguration is available on CocoaPods. Add the following to your Podfile:

pod 'SwiftyConfiguration'

Manually

Just add the Classes folder to your project.