本文整理汇总了C++中Grammar::add_rule方法的典型用法代码示例。如果您正苦于以下问题:C++ Grammar::add_rule方法的具体用法?C++ Grammar::add_rule怎么用?C++ Grammar::add_rule使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Grammar
的用法示例。
在下文中一共展示了Grammar::add_rule方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: rule
Grammar *read_rule_set(string file) {
Grammar *grammar = new Grammar();
ifstream in_file;
in_file.open(file.c_str());
if (in_file.is_open()) {
int rule_num;
while (in_file >> rule_num) {
string X, blank, Y, Z;
bool is_unary;
int dir;
in_file >> is_unary;
if (!is_unary) {
in_file >> X >> Y >> Z >> dir;
int nt_X = grammar->to_nonterm(X);
int nt_Y = grammar->to_nonterm(Y);
int nt_Z = grammar->to_nonterm(Z);
BinaryRule rule(rule_num, nt_X, nt_Y, nt_Z, dir);
grammar->add_rule(rule);
} else {