summaryrefslogtreecommitdiffstats
path: root/src/output_slr.hpp
diff options
context:
space:
mode:
authorMatthias Schiffer <mschiffer@universe-factory.net>2015-04-16 22:07:29 +0200
committerMatthias Schiffer <mschiffer@universe-factory.net>2015-04-17 17:20:25 +0200
commit6c8cd11dad10587e5dde9ab7706384927b961bb6 (patch)
tree83df2371191ee2dea8ba2154ef538b91d38089ed /src/output_slr.hpp
parentbb018683c93673679bb54b63c8aff43f507948de (diff)
downloadsolar-6c8cd11dad10587e5dde9ab7706384927b961bb6.tar
solar-6c8cd11dad10587e5dde9ab7706384927b961bb6.zip
Completely refactor code generation
Diffstat (limited to 'src/output_slr.hpp')
-rw-r--r--src/output_slr.hpp24
1 files changed, 1 insertions, 23 deletions
diff --git a/src/output_slr.hpp b/src/output_slr.hpp
index a64cecf..adc1f87 100644
--- a/src/output_slr.hpp
+++ b/src/output_slr.hpp
@@ -27,32 +27,10 @@
#pragma once
#include "generator_slr.hpp"
-#include "output.hpp"
namespace solar {
-class output_slr_t : public output_t {
-private:
- const generator_slr_t *generator;
-
-
- void emit_state_shift(unsigned state);
-
- void emit_state_reduce_code(const item_t &item, int rule_id);
- bool emit_state_reduce(unsigned state);
-
-protected:
- virtual const generator_t * get_generator() {
- return generator;
- }
-
- virtual void emit_state(unsigned state);
-
-public:
- output_slr_t(const generator_slr_t *generator0, const char *header, const char *source) : output_t(header, source), generator(generator0) {
- initialize();
- }
-};
+void output_slr(const generator_slr_t *generator, const char *source, const char *header);
}