23 lines
488 B
Swift
23 lines
488 B
Swift
|
|
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)
|
|
case partial(String)
|
|
}
|
|
|
|
let tokens: [Token]
|
|
}
|
|
|