Decodable Template Information¶ ↑
| Name | Description | | ——— | —————– | | Folder name | templates/decodable | | Invocation example | gyro -m <model> -t decodable …
| | Language | Swift 3 |
This template generate code to be used with Anviking’s Decodable Swift library (not to be confused with Swift 4's Decodable)
It generates a Decodable
extension for each object of your data model.
Generated Code¶ ↑
Shop+Decodable.swift
:
/* DO NOT EDIT | Generated by gyro */ import protocol Decodable.Decodable import Decodable extension Shop: Decodable { static func decode(_ json: Any) throws -> Shop { let shop = Shop() shop.attrDate = try Date.decode(json => "attrDate") shop.attrDateCustom = try Date.decode(json => "attrDateCustom") shop.attrDouble = try json => "attrDouble" shop.attrInteger16 = try Int.decode(json => "attrInteger16") shop.attrInteger32 = try json => "attrInteger32" shop.attrInteger64 = try Int.decode(json => "attrInteger64") return shop } }
Specific JSON tasks¶ ↑
Ignoring specific properties¶ ↑
If you don't want to generate a decodable call for a specific property, just add the JSONIgnored
attribute in the xcdatamodel property's userInfos.