本文整理汇总了C++中NFA::isEmpty方法的典型用法代码示例。如果您正苦于以下问题:C++ NFA::isEmpty方法的具体用法?C++ NFA::isEmpty怎么用?C++ NFA::isEmpty使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类NFA
的用法示例。
在下文中一共展示了NFA::isEmpty方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: parsePiece
NFA RE2NFA::parseBranch()
{
NFA value = parsePiece();
if (!hasNext())
return value;
NFA next;
do {
next = parsePiece();
if (!next.isEmpty())
value = NFA::createConcatenatingNFA(value, next);
} while (!next.isEmpty() && hasNext());
return value;
}
示例2: parseMaybeQuantifier
NFA RE2NFA::parsePiece()
{
NFA atom = parseAtom();
if (atom.isEmpty() || !hasNext())
return atom;
return parseMaybeQuantifier(atom);
}
示例3: createStringNFA
NFA NFA::createStringNFA(const QByteArray &str)
{
NFA result;
foreach (char c, str) {
NFA ch = NFA::createSingleInputNFA(c);
if (result.isEmpty())
result = ch;
else
result = NFA::createConcatenatingNFA(result, ch);
}
示例4: NFA
NFA RE2NFA::parse(const QString &expression, int *errCol)
{
tokenize(expression);
if (symbols.isEmpty())
return NFA();
index = 0;
NFA result = parseExpr();
if (result.isEmpty()) {
if (errCol)
*errCol = errorColumn;
}
return result;
}