Swift macros generating customizable CodingKeys
Source code:
@CodingKeys
struct Entity {
@CodingKey(custom: "entity_id")
let id: String
let currentValue: Int
let count: Int
let `protocol`: String
@CodingKeyIgnored
let foo: Bool
}
Expanded source:
struct Entity {
let id: String
let currentValue: Int
let count: Int
let `protocol`: String
let foo: Bool
enum CodingKeys: String, CodingKey {
case id = "entity_id"
case currentValue = "current_value"
case count
case `protocol`
}
}
Swift Package Manager (SPM)
Add the following line to the dependencies in Package.swift
, to use CodingKeysGenerator macros in a SPM project:
.package(url: "https://github.com/zijievv/CodingKeysGenerator", from: "0.1.0"),
In your target:
.target(name: "<TARGET_NAME>", dependencies: [
.product(name: "CodingKeysGenerator", package: "CodingKeysGenerator"),
// ...
]),
Add import CodingKeysGenerator
into your source code to use CodingKeysGenerator macros.
Go to File > Add Package Dependencies...
and paste the repo's URL:
https://github.com/zijievv/CodingKeysGenerator