diff options
author | Ryo Nihei <nihei.dev@gmail.com> | 2022-11-06 21:31:46 +0900 |
---|---|---|
committer | Ryo Nihei <nihei.dev@gmail.com> | 2022-11-10 00:40:16 +0900 |
commit | f89d021bbe134e3efa0d015a41e9712960cdd009 (patch) | |
tree | 28c6d49611f09dad186b0f6fc4c1a42864a2f7cb /driver/parser/semantic_action_test.go | |
parent | Split SymbolTable's APIs into reader/writer (diff) | |
download | cotia-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/semantic_action_test.go (renamed from driver/semantic_action_test.go) | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/driver/semantic_action_test.go b/driver/parser/semantic_action_test.go index 3d5f711..c98a12f 100644 --- a/driver/semantic_action_test.go +++ b/driver/parser/semantic_action_test.go @@ -1,4 +1,4 @@ -package driver +package parser import ( "fmt" @@ -7,6 +7,7 @@ import ( "github.com/nihei9/vartan/grammar" spec "github.com/nihei9/vartan/spec/grammar" + "github.com/nihei9/vartan/spec/grammar/parser" ) type testSemAct struct { @@ -15,7 +16,7 @@ type testSemAct struct { } func (a *testSemAct) Shift(tok VToken, recovered bool) { - t := a.gram.ParsingTable.Terminals[tok.TerminalID()] + t := a.gram.Syntactic.Terminals[tok.TerminalID()] if recovered { a.actLog = append(a.actLog, fmt.Sprintf("shift/%v/recovered", t)) } else { @@ -24,8 +25,8 @@ func (a *testSemAct) Shift(tok VToken, recovered bool) { } func (a *testSemAct) Reduce(prodNum int, recovered bool) { - lhsSym := a.gram.ParsingTable.LHSSymbols[prodNum] - lhsText := a.gram.ParsingTable.NonTerminals[lhsSym] + lhsSym := a.gram.Syntactic.LHSSymbols[prodNum] + lhsText := a.gram.Syntactic.NonTerminals[lhsSym] if recovered { a.actLog = append(a.actLog, fmt.Sprintf("reduce/%v/recovered", lhsText)) } else { @@ -181,7 +182,7 @@ char } for _, tt := range tests { t.Run(tt.caption, func(t *testing.T) { - ast, err := spec.Parse(strings.NewReader(tt.specSrc)) + ast, err := parser.Parse(strings.NewReader(tt.specSrc)) if err != nil { t.Fatal(err) } @@ -189,12 +190,7 @@ char b := grammar.GrammarBuilder{ AST: ast, } - g, err := b.Build() - if err != nil { - t.Fatal(err) - } - - gram, _, err := grammar.Compile(g) + gram, _, err := b.Build() if err != nil { t.Fatal(err) } |