comparison Simoleon/Helpers/ReadJson.swift @ 183:d2398f02e1ce

implement unit currency selector
author Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
date Mon, 20 Dec 2021 12:28:16 +0100
parents
children
comparison
equal deleted inserted replaced
182:ba3ebe8cefe5 183:d2398f02e1ce
1 //
2 // ReadJson.swift
3 // Simoleon
4 //
5 // Created by Dennis Concepción Martín on 8/12/21.
6 //
7
8 import Foundation
9
10 func readJson<T: Decodable>(from filename: String) -> T {
11 let data: Data
12
13 guard let file = Bundle.main.url(forResource: filename, withExtension: nil)
14 else {
15 fatalError("Failed to locate \(filename)")
16 }
17
18 do {
19 data = try Data(contentsOf: file)
20 } catch {
21 fatalError("Failed to load \(filename)")
22 }
23
24 do {
25 let decoder = JSONDecoder()
26 return try decoder.decode(T.self, from: data)
27 } catch {
28 fatalError("Failed to decode \(filename)")
29 }
30 }