iOS Error Handling in Swift Error Handling Handling Errors

Victor O'Rourke
Victor O'Rourke
2,384 Points

Not sure how to lay this out...

So I understand what this wants me to do, but i do not know how it wants me to get there? Any help you guys can give me to push me in the right direction??

PLEASE do not just post the answer here....

enum ParserError: Error {
  case emptyDictionary
  case invalidKey

struct Parser {
  var data: [String : String?]?

  func parse() throws {
  if let data = nil {
  throw  ParserError.emptyDictionary
  } else {
  if let data = "somekey" {
  throw ParserError.invalidKey


let data: [String : String?]? = ["someKey": nil]
let parser = Parser(data: data)

1 Answer


It's the difficult one, you can take a look at this post: