summaryrefslogtreecommitdiffstats
path: root/src/parse.y
diff options
context:
space:
mode:
Diffstat (limited to 'src/parse.y')
-rw-r--r--src/parse.y22
1 files changed, 11 insertions, 11 deletions
diff --git a/src/parse.y b/src/parse.y
index cacf898..9e445e7 100644
--- a/src/parse.y
+++ b/src/parse.y
@@ -47,8 +47,8 @@ typedef std::pair<std::vector<solar::symbol_t>, vars_t> rhs_t;
%type term {symbol_t *}
%destructor term delete
-%type varname {std::string *}
-%destructor varname delete
+%type csymbol {std::string *}
+%destructor csymbol delete
%extra_arg {__attribute__((unused)) grammar_t *} grammar
@@ -62,11 +62,11 @@ directive |= "%type" SYMBOL(nonterm) BLOCK(type) {
grammar->nonterm_types.insert(std::make_pair(*nonterm, *type));
}
-directive |= "%type" term(term) BLOCK(type) varname(name) {
+directive |= "%type" term(term) BLOCK(type) csymbol(name) {
grammar->term_types.insert(std::make_pair(*term, std::make_pair(*type, *name)));
}
-directive |= "%destructor" symbol(sym) varname(name) {
+directive |= "%destructor" symbol(sym) csymbol(name) {
grammar->destructors.insert(std::make_pair(*sym, *name));
}
@@ -82,7 +82,7 @@ directive |= "%header" BLOCK(block) {
grammar->header_block = *block;
}
-directive |= "%extra_arg" BLOCK(type) varname(name) {
+directive |= "%extra_arg" BLOCK(type) csymbol(name) {
grammar->extra_args.push_back(std::make_pair(*type, *name));
}
@@ -107,14 +107,14 @@ rhs |= rhs(=rhs) symbol(sym) {
return rhs;
}
-rhs |= rhs(=rhs) symbol(sym) '(' varname(var) ')' {
+rhs |= rhs(=rhs) symbol(sym) '(' csymbol(var) ')' {
rhs->first.push_back(*sym);
rhs->second.emplace_back(*var, true);
return rhs;
}
-rhs |= rhs(=rhs) symbol(sym) '(' '=' varname(var) ')' {
+rhs |= rhs(=rhs) symbol(sym) '(' '=' csymbol(var) ')' {
rhs->first.push_back(*sym);
rhs->second.emplace_back(*var, false);
@@ -136,8 +136,8 @@ action |= BLOCK(=v) [v]
action |= SQBLOCK(v) [new std::string("return " + *v + ";")]
-namespace |= varname(v) [new std::vector<std::string> {*v}]
-namespace |= namespace(=ns) "::" varname(v) {
+namespace |= csymbol(v) [new std::vector<std::string> {*v}]
+namespace |= namespace(=ns) "::" csymbol(v) {
ns->push_back(*v);
return ns;
}
@@ -149,5 +149,5 @@ symbol |= term(=v) [v]
term |= SYMBOL_UC(v) [new symbol_t(symbol_t::make_term(*v))]
term |= CHAR(v) [new symbol_t(symbol_t::make_char(v))]
-varname |= SYMBOL_UC(=v) [v]
-varname |= SYMBOL(=v) [v]
+csymbol |= SYMBOL_UC(=v) [v]
+csymbol |= SYMBOL(=v) [v]