perf: use polymophism instead duck test

This commit is contained in:
harttle
2019-03-25 20:11:23 +08:00
parent 64dd057552
commit 82d7673554
18 changed files with 120 additions and 98 deletions
+3 -3
View File
@@ -25,10 +25,10 @@ export default class Parser {
}
parseToken (token: Token, remainTokens: Array<Token>) {
try {
if (token.type === 'tag') {
return new Tag(token as TagToken, remainTokens, this.liquid)
if (TagToken.is(token)) {
return new Tag(token, remainTokens, this.liquid)
}
if (token.type === 'output') {
if (OutputToken.is(token)) {
return new Output(token as OutputToken, this.liquid.options.strictFilters)
}
return new HTML(token)