Skip to content

Instantly share code, notes, and snippets.

@alekseylichtman
Created April 22, 2021 18:40
Show Gist options
  • Save alekseylichtman/8029332b7f2e923dfdefcecc380a60f4 to your computer and use it in GitHub Desktop.
Save alekseylichtman/8029332b7f2e923dfdefcecc380a60f4 to your computer and use it in GitHub Desktop.
Swift. Convert any object into JSON
protocol JSONConvertible: Codable {
func convertToJson() -> String
}
extension JSONConvertible {
func convertToJson() -> String {
let jsonEncoder = JSONEncoder()
let jsonData = try! jsonEncoder.encode(self)
let json = String(data: jsonData, encoding: String.Encoding.utf8)
return json!
}
}
@alekseylichtman
Copy link
Author

Convert any object into JSON

Inherit your structure from JSONConvertible.

Call method convertToJson() on your object to get the JSON.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment