Files
swiftpm-mustache/Sources/HummingbirdMustache/Template.swift
Adam Fowler 7f61c8dd72 HBTemplate -> HBMustacheTemplate, escape characters
Add tests for mustache examples
2021-03-12 07:43:09 +00:00

28 lines
586 B
Swift

enum HBMustacheError: Error {
case sectionCloseNameIncorrect
case unfinishedSectionName
case expectedSectionEnd
}
public class HBMustacheTemplate {
public init(string: String) throws {
self.tokens = try Self.parse(string)
}
internal init(_ tokens: [Token]) {
self.tokens = tokens
}
enum Token {
case text(String)
case variable(String)
case unescapedVariable(String)
case section(String, HBMustacheTemplate)
case invertedSection(String, HBMustacheTemplate)
}
let tokens: [Token]
}