本文整理汇总了C++中Formula::children方法的典型用法代码示例。如果您正苦于以下问题:C++ Formula::children方法的具体用法?C++ Formula::children怎么用?C++ Formula::children使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Formula
的用法示例。
在下文中一共展示了Formula::children方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: rearrange
//
// Push nots down the tree until quantifier or conjunct, rearrange kids
//
void F_Not::rearrange() {
Formula *child = children().front();
Formula *new_child, *f;
switch(child->node_type()) {
case Op_Or:
parent().remove_child(this);
new_child = parent().add_and();
while(!child->children().empty()) {
f = child->children().remove_front();
F_Not *new_not = new_child->add_not();
new_not->add_child(f);
}
delete this;
break;
//case Op_And:
// parent().remove_child(this);
// new_child = parent().add_or();
// while(!child->myChildren.empty()) {
// f = child->myChildren.remove_front();
// F_Not *new_not = new_child->add_not();
// new_not->add_child(f);
// }
// delete this;
// break;
case Op_Not:
parent().remove_child(this);
f = child->children().remove_front();
parent().add_child(f);
delete this;
f->rearrange();
return;
default:
new_child = child;
break;
}
new_child->rearrange();
}