summaryrefslogtreecommitdiffstats
path: root/src/parser_state.hpp
diff options
context:
space:
mode:
authorMatthias Schiffer <mschiffer@universe-factory.net>2015-04-05 02:28:52 +0200
committerMatthias Schiffer <mschiffer@universe-factory.net>2015-04-05 02:28:52 +0200
commit96dd0ebd2618df6ed0c1acf795e9a7054592b566 (patch)
tree5d53bd0efa0edd8b4e828c8583974b812a050f9b /src/parser_state.hpp
parent18f88fc863ffc4c3cc6bb30433228a0e889b2647 (diff)
downloadsolar-96dd0ebd2618df6ed0c1acf795e9a7054592b566.tar
solar-96dd0ebd2618df6ed0c1acf795e9a7054592b566.zip
Add support for simple reduce actions
Diffstat (limited to 'src/parser_state.hpp')
-rw-r--r--src/parser_state.hpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/parser_state.hpp b/src/parser_state.hpp
index 3798586..a120423 100644
--- a/src/parser_state.hpp
+++ b/src/parser_state.hpp
@@ -33,14 +33,14 @@ namespace solar {
class parser_state_t {
private:
- std::vector<item_t> rules;
+ std::vector<std::pair<item_t, std::string>> rules;
item_t current;
public:
parser_state_t() : current("") {}
- const std::vector<item_t> & get_rules() const {
+ const std::vector<std::pair<item_t, std::string>> & get_rules() const {
return rules;
}
@@ -48,7 +48,7 @@ public:
void add_rule_nonterminal(const char *nonterm);
void add_rule_terminal(const char *term);
void add_rule_terminal(unsigned char term);
- void add_rule();
+ void add_rule(const std::string &action = "");
};
}