Serializable
Dynamic value for Swift Codable
Goals
This library allows encoding and decoding of dynamic data structures via Swift Codable.
Supported types
- Dictionary
- Array
- Bool
- Float(Double)
- Int
- String
- null
Additional types
Date
and Data
can be converted in runtime from the String
type.
Getting started
Installation
Package Manager
Add the following dependency to your Package.swift:
.package(url: "https://github.com/tesseract-one/Serializable.swift.git", from: "0.2.0")
Run swift build
and build your app.
CocoaPods
Add the following to your Podfile:
pod 'Serializable.swift'
Then run pod install
.
Carthage
Add the following to your Cartfile:
github "tesseract-one/Serializable.swift"
Run carthage update
and follow the steps as described in Carthage's README.
Manually
- Download and drop
Sources/Serializable
folder in your project. - Congratulations!
Examples
JSON parsing
import Foundation
import Serializable
let json = """
{
"message": "Hello, World!"
}
""".data(using: .utf8)!
let value = try! JSONDecoder().decode(SerializableValue.self, from: json)
print("Message:", value.object!["message"].string!)
Author
License
Serializable.swift is available under the Apache 2.0 license. See the LICENSE file for more information.