Contents

yume190/jsondecodekit

JSONDecodeKit

Usage

struct Sample:JSONDecodable {
    let temp:Int
    static func decode(_ dic: JSON) throws -> Sample {
        return try Sample(temp: dic <| "temp")
    }
}

let json = JSON(any: ["temp":1234])
let sample:Sample? = try? Sample.decode(json)

Protocols

PrimitiveType

PrimitiveType focus on casting type and transform from string

* Casting Type

return self as? T
// return 1 as? Int
// return "1" as? Int

* Transform From String (String -> T)

return Int("1")     // "1" -> 1
return Int("true")  // "true" -> true

* Support Types

Int     Int8    Int16   Int32   Int64
UInt    UInt8   UInt16  UInt32  UInt64
Float   Double
Bool
String
JSONDecodable

JSONDecodable is the protocol, mapping JSON to your customize struct.


Operators

|Operator|Decode element| |:------:|:------------:| | <\|? | T? | | <\| | T | | <\|\| | [T] |

Package Metadata

Repository: yume190/jsondecodekit

Default branch: master

README: README.md