refactor: Tag class support in registerTag()

This commit is contained in:
Jun Yang
2022-11-27 14:04:01 +08:00
parent 1f6ce7c822
commit 92992689cd
145 changed files with 694 additions and 768 deletions
+4 -5
View File
@@ -1,13 +1,12 @@
import { Token } from '../tokens/token'
import { Template } from '../template/template'
import { isTagToken } from '../util/type-guards'
import { TopLevelToken } from '../tokens/toplevel-token'
import { Token, TopLevelToken } from '../tokens'
import { Template } from '../template'
import { isTagToken } from '../util'
type ParseToken<T extends Token> = ((token: T, remainTokens: T[]) => Template)
export class ParseStream<T extends Token = TopLevelToken> {
private tokens: T[]
private handlers: {[key: string]: (arg: any) => void} = {}
private handlers: Record<string, (arg: any) => void> = {}
private stopRequested = false
private parseToken: ParseToken<T>