Swift Apprentice 5.0
I’m getting the message Value of type ‘Result<String, TutorialError>’ has no member ‘get’ and can’t figure where or how to fix this.
//. *****************code begin. **********************//
import UIKit
enum Result<Success, Failure> where Failure: Error {
case success(Success)
case failure(Failure)
}
let queue = DispatchQueue(label: “queue”)
// 1
struct Tutorial {
let title: String
let author: String
}
// 2
enum TutorialError: Error {
case rejected
}
// 3
func feedback(for tutorial: Tutorial) → Result<String, TutorialError> {
Bool.random() ? .success(“published”) : .failure(.rejected)
}
func edit(_ tutorial: Tutorial) {
queue.async {
// 1
let result = feedback(for: tutorial)
DispatchQueue.main.async {
switch result {
// 2
case let .success(data):
print(“(tutorial.title) by (tutorial.author) was (data) on the website.”)
case let .failure(error):
print(“(tutorial.title) by (tutorial.author) was (error).”)
}
}
}
}
let tutorial = Tutorial(title: “What’s new in Swift 5.1”,
author: “Cosmin Pupăză”)
edit(tutorial)
let result = feedback(for: tutorial)
do {
let data = try result.get() -(*** Value of type ‘Result<String, TutorialError>’ has no member ‘get’ ****)
print(“(tutorial.title) by (tutorial.author) was (data) on the website.”)
} catch {
print(“(tutorial.title) by (tutorial.author) was (error).”)
}