@@ -70,7 +70,7 @@ public struct ErrorWithLocation: Errorable, Equatable, CustomStringConvertible {
|
|||||||
|
|
||||||
public struct Errors: Errorable, CustomStringConvertible {
|
public struct Errors: Errorable, CustomStringConvertible {
|
||||||
public func format(_ formatter: any Formattable) -> String {
|
public func format(_ formatter: any Formattable) -> String {
|
||||||
self.errors.map() { error in
|
self.errors.map { error in
|
||||||
error.format(formatter)
|
error.format(formatter)
|
||||||
}.joined(separator: "\n")
|
}.joined(separator: "\n")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -169,11 +169,12 @@ public struct Parser {
|
|||||||
current_context = updated_context
|
current_context = updated_context
|
||||||
parsed_s.append(parsed_statement)
|
parsed_s.append(parsed_statement)
|
||||||
case .Error(let e):
|
case .Error(let e):
|
||||||
errors = if let errors = errors {
|
errors =
|
||||||
errors.append(error: e)
|
if let errors = errors {
|
||||||
} else {
|
errors.append(error: e)
|
||||||
e
|
} else {
|
||||||
}
|
e
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -255,11 +256,12 @@ public struct Parser {
|
|||||||
parsed_s = state_statements
|
parsed_s = state_statements
|
||||||
current_context = updated_context
|
current_context = updated_context
|
||||||
case .Error(let error):
|
case .Error(let error):
|
||||||
errors = if let errors = errors {
|
errors =
|
||||||
errors.append(error: error)
|
if let errors = errors {
|
||||||
} else {
|
errors.append(error: error)
|
||||||
error
|
} else {
|
||||||
}
|
error
|
||||||
|
}
|
||||||
}
|
}
|
||||||
walker.next()
|
walker.next()
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -90,11 +90,12 @@ public struct Program {
|
|||||||
break
|
break
|
||||||
case .Error(let e):
|
case .Error(let e):
|
||||||
found_parser = true
|
found_parser = true
|
||||||
errors = if let errors = errors {
|
errors =
|
||||||
errors.append(error: e)
|
if let errors = errors {
|
||||||
} else {
|
errors.append(error: e)
|
||||||
e
|
} else {
|
||||||
}
|
e
|
||||||
|
}
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user