Support swift 5.0
This commit is contained in:
23
Package@swift-5.swift
Normal file
23
Package@swift-5.swift
Normal file
@@ -0,0 +1,23 @@
|
||||
// swift-tools-version:5.0
|
||||
import PackageDescription
|
||||
|
||||
let package = Package(
|
||||
name: "Stencil",
|
||||
products: [
|
||||
.library(name: "Stencil", targets: ["Stencil"])
|
||||
],
|
||||
dependencies: [
|
||||
.package(url: "https://github.com/kylef/PathKit.git", from: "0.9.0"),
|
||||
.package(url: "https://github.com/kylef/Spectre.git", from: "0.9.0")
|
||||
],
|
||||
targets: [
|
||||
.target(name: "Stencil", dependencies: [
|
||||
"PathKit"
|
||||
], path: "Sources"),
|
||||
.testTarget(name: "StencilTests", dependencies: [
|
||||
"Stencil",
|
||||
"Spectre"
|
||||
])
|
||||
],
|
||||
swiftLanguageVersions: [.v4, .v4_2, .v5]
|
||||
)
|
||||
@@ -71,9 +71,15 @@ public class VariableNode: NodeType {
|
||||
|
||||
if hasToken("if", at: 1) {
|
||||
let components = components.suffix(from: 2)
|
||||
if let elseIndex = components.index(of: "else") {
|
||||
condition = try parser.compileExpression(components: Array(components.prefix(upTo: elseIndex)), token: token)
|
||||
let elseToken = components.suffix(from: elseIndex.advanced(by: 1)).joined(separator: " ")
|
||||
#if swift(<5.0)
|
||||
let elseIndex = components.index(of: "else")
|
||||
#else
|
||||
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)
|
||||
} else {
|
||||
condition = try parser.compileExpression(components: Array(components), token: token)
|
||||
|
||||
Reference in New Issue
Block a user