Added elipsis token
This commit is contained in:
@@ -175,10 +175,15 @@ func (lexer *LexingOperation) tokenizeSymbolBeginning () (err error) {
|
||||
lexer.addToken(token)
|
||||
err = lexer.nextRune()
|
||||
case '.':
|
||||
err = lexer.nextRune()
|
||||
if err != nil { return }
|
||||
token := lexer.newToken()
|
||||
token.kind = TokenKindDot
|
||||
if lexer.char == '.' {
|
||||
token.kind = TokenKindElipsis
|
||||
err = lexer.nextRune()
|
||||
}
|
||||
lexer.addToken(token)
|
||||
err = lexer.nextRune()
|
||||
case ',':
|
||||
token := lexer.newToken()
|
||||
token.kind = TokenKindComma
|
||||
|
||||
@@ -63,6 +63,7 @@ func TestTokenizeAll (test *testing.T) {
|
||||
Token { kind: TokenKindColon },
|
||||
Token { kind: TokenKindDot },
|
||||
Token { kind: TokenKindComma },
|
||||
Token { kind: TokenKindElipsis },
|
||||
Token { kind: TokenKindLBracket },
|
||||
Token { kind: TokenKindRBracket },
|
||||
Token { kind: TokenKindLBrace },
|
||||
|
||||
@@ -24,6 +24,7 @@ const (
|
||||
|
||||
TokenKindColon
|
||||
TokenKindDot
|
||||
TokenKindElipsis
|
||||
TokenKindComma
|
||||
|
||||
TokenKindLBracket
|
||||
@@ -134,6 +135,8 @@ func (tokenKind TokenKind) Describe () (description string) {
|
||||
description = "Colon"
|
||||
case TokenKindDot:
|
||||
description = "Dot"
|
||||
case TokenKindElipsis:
|
||||
description = "Elipsis"
|
||||
case TokenKindComma:
|
||||
description = "Comma"
|
||||
case TokenKindLBracket:
|
||||
|
||||
Reference in New Issue
Block a user