• Stars
    star
    116
  • Rank 295,418 (Top 6 %)
  • Language
    Swift
  • License
    MIT License
  • Created almost 8 years ago
  • Updated over 7 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Modern Swift API for Plist.

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.