internal virtual bool CheckRuleRefOptions(RuleRefAST elem, GrammarAST ID, GrammarAST valueAST)
{
IToken optionID = ID.Token;
string fileName = optionID.InputStream.SourceName;
// don't care about id<SimpleValue> options
if (valueAST != null && !Grammar.ruleRefOptions.Contains(optionID.Text))
{
g.tool.errMgr.GrammarError(ErrorType.ILLEGAL_OPTION,
fileName,
optionID,
optionID.Text);
return false;
}
// TODO: extra checks depending on rule kind?
return true;
}