本文整理汇总了C++中Predicate::accept方法的典型用法代码示例。如果您正苦于以下问题:C++ Predicate::accept方法的具体用法?C++ Predicate::accept怎么用?C++ Predicate::accept使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Predicate
的用法示例。
在下文中一共展示了Predicate::accept方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: if
ProteinList_Filter::Impl::Impl(ProteinListPtr _original, const Predicate& predicate)
: original(_original), getSequence(false)
{
if (!original.get()) throw runtime_error("[ProteinList_Filter] Null pointer");
// iterate through the proteins, using predicate to build the sub-list
for (size_t i=1, end=original->size(); i<=end; ++i)
{
if (predicate.done()) break;
ProteinPtr protein = original->protein(i-1, getSequence);
tribool accepted = predicate.accept(*protein);
if (accepted || getSequence) // if still indeterminate with getSequence = true, it passes the filter by default
{
pushProtein(*protein);
}
else if (!accepted)
{
// do nothing
}
else // indeterminate and !getSequence
{
// try again with getSequence = true
getSequence = true;
--i;
}
}
}