summaryrefslogtreecommitdiffstats
path: root/src/output_slr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/output_slr.cpp')
-rw-r--r--src/output_slr.cpp22
1 files changed, 11 insertions, 11 deletions
diff --git a/src/output_slr.cpp b/src/output_slr.cpp
index 371d55b..01b0560 100644
--- a/src/output_slr.cpp
+++ b/src/output_slr.cpp
@@ -33,8 +33,8 @@
namespace solar {
-void output_slr_t::emit_state_shift(unsigned i, const symbol_t &token) {
- auto it = generator->get_shifts().find(std::make_pair(i, token));
+void output_slr_t::emit_state_shift(unsigned state, const symbol_t &token) {
+ auto it = generator->get_shifts().find(std::make_pair(state, token));
if (it == generator->get_shifts().end())
return;
@@ -108,7 +108,7 @@ void output_slr_t::emit_state_reduce(const item_t &item, const symbol_t &token,
std::fprintf(source_file, "\t\t\t\tcase %u:\n", unsigned(i));
std::fprintf(source_file, "\t\t\t\t\tparser->stack[++parser->top].state = %u;\n", unsigned(it->second));
- std::fprintf(source_file, "\t\t\t\t\tbreak;\n");
+ std::fprintf(source_file, "\t\t\t\t\tbreak;\n\n");
}
@@ -118,10 +118,10 @@ void output_slr_t::emit_state_reduce(const item_t &item, const symbol_t &token,
std::fprintf(source_file, "\t\t\t\tbreak;\n\n");
}
-void output_slr_t::do_emit_state(unsigned i, const symbol_t &token) {
- auto it = generator->get_reductions().find(std::make_pair(i, token));
+void output_slr_t::do_emit_state(unsigned state, const symbol_t &token) {
+ auto it = generator->get_reductions().find(std::make_pair(state, token));
if (it == generator->get_reductions().end()) {
- emit_state_shift(i, token);
+ emit_state_shift(state, token);
}
else {
const rule_t &rule = generator->get_grammar().rules[it->second];
@@ -129,19 +129,19 @@ void output_slr_t::do_emit_state(unsigned i, const symbol_t &token) {
}
}
-void output_slr_t::emit_state(unsigned i) {
- std::fprintf(source_file, "\t\tcase %u:\n", i);
+void output_slr_t::emit_state(unsigned state) {
+ std::fprintf(source_file, "\t\tcase %u:\n", state);
std::fprintf(source_file, "\t\t\tswitch (token) {\n");
- if (generator->get_shifts().find(std::make_pair(i, symbol_t::make_nonterm(""))) != generator->get_shifts().end()) {
+ if (generator->get_shifts().find(std::make_pair(state, symbol_t::make_nonterm(""))) != generator->get_shifts().end()) {
std::fprintf(source_file, "\t\t\tcase 0:\n");
std::fprintf(source_file, "\t\t\t\treturn 0;\n\n");
}
- do_emit_state(i, symbol_t::empty());
+ do_emit_state(state, symbol_t::empty());
for (const symbol_t &token : generator->get_terminals())
- do_emit_state(i, token);
+ do_emit_state(state, token);
std::fprintf(source_file, "\t\t\tdefault:\n");
std::fprintf(source_file, "\t\t\t\treturn -1;\n");