Code review by @djbe
This commit is contained in:
@@ -71,15 +71,9 @@ public class VariableNode: NodeType {
|
|||||||
|
|
||||||
if hasToken("if", at: 1) {
|
if hasToken("if", at: 1) {
|
||||||
let components = components.suffix(from: 2)
|
let components = components.suffix(from: 2)
|
||||||
#if swift(<5.0)
|
if let elseIndex = components.firstIndex(of: "else") {
|
||||||
let elseIndex = components.index(of: "else")
|
condition = try parser.compileExpression(components: Array(components.prefix(upTo: elseIndex)), token: token)
|
||||||
#else
|
let elseToken = components.suffix(from: elseIndex.advanced(by: 1)).joined(separator: " ")
|
||||||
let elseIndex = components.firstIndex(of: "else")
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if let safeElseIndex = elseIndex {
|
|
||||||
condition = try parser.compileExpression(components: Array(components.prefix(upTo: safeElseIndex)), token: token)
|
|
||||||
let elseToken = components.suffix(from: safeElseIndex.advanced(by: 1)).joined(separator: " ")
|
|
||||||
elseExpression = try parser.compileResolvable(elseToken, containedIn: token)
|
elseExpression = try parser.compileResolvable(elseToken, containedIn: token)
|
||||||
} else {
|
} else {
|
||||||
condition = try parser.compileExpression(components: Array(components), token: token)
|
condition = try parser.compileExpression(components: Array(components), token: token)
|
||||||
|
|||||||
@@ -36,3 +36,11 @@ public extension Variable {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if !swift(>=4.2)
|
||||||
|
extension ArraySlice where Element: Equatable {
|
||||||
|
func firstIndex(of element: Element) -> Int? {
|
||||||
|
return index(of: element)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user