mirror of
https://github.com/yonaskolb/XcodeGen.git
synced 2026-03-18 20:02:25 +00:00
40 lines
1.2 KiB
Swift
40 lines
1.2 KiB
Swift
//
|
|
// BuildSetting.swift
|
|
// XcodeGen
|
|
//
|
|
// Created by Yonas Kolb on 21/7/17.
|
|
//
|
|
//
|
|
|
|
import Foundation
|
|
import JSONUtilities
|
|
import xcodeproj
|
|
|
|
public struct TargetBuildSettings: JSONObjectConvertible {
|
|
|
|
public let buildSettings: BuildSettings
|
|
public let configSettings: [String: BuildSettings]
|
|
|
|
public init(buildSettings: BuildSettings, configSettings: [String: BuildSettings] = [:]) {
|
|
self.buildSettings = buildSettings
|
|
self.configSettings = configSettings
|
|
}
|
|
|
|
public init(jsonDictionary: JSONDictionary) throws {
|
|
if jsonDictionary["$base"] != nil {
|
|
buildSettings = BuildSettings(dictionary: try jsonDictionary.json(atKeyPath: "$base"))
|
|
var configSettings: [String: BuildSettings] = [:]
|
|
for (key, value) in jsonDictionary {
|
|
if key != "baseSettings", let buildSettings = value as? JSONDictionary {
|
|
configSettings["key"] = BuildSettings(dictionary: buildSettings)
|
|
}
|
|
}
|
|
self.configSettings = configSettings
|
|
} else {
|
|
buildSettings = BuildSettings(dictionary: jsonDictionary)
|
|
configSettings = [:]
|
|
}
|
|
}
|
|
}
|
|
|