Привет, ребята,
Я декодирую данные, поступающие из бэкэнд-системы в JSON, с: JSONDecoder().decode(<#T##type: Decodable.Protocol##Decodable.Protocol#>, from: <#T##Data#>)
.
Я часто делал это для разных типов данных, но на этот раз я получил следующую ошибку: "Cannot invoke 'decode' with an argument list of type '(VrOpsObjectStatistics!, from: Data)"
Вот моя структура и мой частичный код дляпроцедура декодирования:
Моя структура:
struct VrOpsObjectStatistics : Decodable
{
var resourceId: String
struct StatList : Decodable
{
struct Stat : Decodable
{
var timestamps: [Date]
struct StatKey : Decodable
{
var key: String
}
var statKey: StatKey
var data: [Double]
}
var stat: [Stat]
}
}
final class Ops
{
static let sharedVrOps = VrOps();
var vrOpsObjectStatistics : VrOpsObjectStatistics!;
func decodeDataToJson(jsonData : Data, parsingType : String) ->
(Bool, Any)
{
do
{
self.vrOpsObjectStatistics = try
JSONDecoder().decode(vrOpsObjectStatistics.self, from: jsonData);
}
catch
{
print(error)
return (false, error)
}
}
}