diff options
author | Matthias Schiffer <mschiffer@universe-factory.net> | 2015-04-10 03:04:22 +0200 |
---|---|---|
committer | Matthias Schiffer <mschiffer@universe-factory.net> | 2015-04-10 03:04:22 +0200 |
commit | 8feccee75dadbf970b2fb402a8c624ed9b25f041 (patch) | |
tree | 897ed0229550ee72bdc69899432161a3dd696371 /src/symbol.hpp | |
parent | 70fc6ba8d2753492b2d4726f2718a2724bbf399a (diff) | |
download | solar-8feccee75dadbf970b2fb402a8c624ed9b25f041.tar solar-8feccee75dadbf970b2fb402a8c624ed9b25f041.zip |
generator_slr: implement first and follow set generation
Diffstat (limited to 'src/symbol.hpp')
-rw-r--r-- | src/symbol.hpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/symbol.hpp b/src/symbol.hpp index 0e79eb6..e468d37 100644 --- a/src/symbol.hpp +++ b/src/symbol.hpp @@ -49,6 +49,7 @@ struct symbol_t : public std::tuple<symbol_type_t, std::string> { return std::get<1>(*this); } + static symbol_t make_nonterm(const std::string &value) { return symbol_t(SYMBOL_TYPE_NONTERM, value); } @@ -61,6 +62,10 @@ struct symbol_t : public std::tuple<symbol_type_t, std::string> { char v[2] = {char(value), 0}; return symbol_t(SYMBOL_TYPE_CHAR, v); } + + static symbol_t empty() { + return make_term(""); + } }; } |