aboutsummaryrefslogtreecommitdiff
path: root/driver/parser/token_stream.go
diff options
context:
space:
mode:
authorRyo Nihei <nihei.dev@gmail.com>2022-11-06 21:31:46 +0900
committerRyo Nihei <nihei.dev@gmail.com>2022-11-10 00:40:16 +0900
commitf89d021bbe134e3efa0d015a41e9712960cdd009 (patch)
tree28c6d49611f09dad186b0f6fc4c1a42864a2f7cb /driver/parser/token_stream.go
parentSplit SymbolTable's APIs into reader/writer (diff)
downloadcotia-f89d021bbe134e3efa0d015a41e9712960cdd009.tar.gz
cotia-f89d021bbe134e3efa0d015a41e9712960cdd009.tar.xz
Import source code of lexer generator
From: https://github.com/nihei9/maleeni
Diffstat (limited to '')
-rw-r--r--driver/parser/token_stream.go (renamed from driver/token_stream.go)12
1 files changed, 6 insertions, 6 deletions
diff --git a/driver/token_stream.go b/driver/parser/token_stream.go
index eaf56c6..0bc9e32 100644
--- a/driver/token_stream.go
+++ b/driver/parser/token_stream.go
@@ -1,15 +1,15 @@
-package driver
+package parser
import (
"io"
- mldriver "github.com/nihei9/maleeni/driver"
+ "github.com/nihei9/vartan/driver/lexer"
spec "github.com/nihei9/vartan/spec/grammar"
)
type vToken struct {
terminalID int
- tok *mldriver.Token
+ tok *lexer.Token
}
func (t *vToken) TerminalID() int {
@@ -33,19 +33,19 @@ func (t *vToken) Position() (int, int) {
}
type tokenStream struct {
- lex *mldriver.Lexer
+ lex *lexer.Lexer
kindToTerminal []int
}
func NewTokenStream(g *spec.CompiledGrammar, src io.Reader) (TokenStream, error) {
- lex, err := mldriver.NewLexer(mldriver.NewLexSpec(g.LexicalSpecification.Maleeni.Spec), src)
+ lex, err := lexer.NewLexer(lexer.NewLexSpec(g.Lexical), src)
if err != nil {
return nil, err
}
return &tokenStream{
lex: lex,
- kindToTerminal: g.LexicalSpecification.Maleeni.KindToTerminal,
+ kindToTerminal: g.Syntactic.KindToTerminal,
}, nil
}