本文整理汇总了C++中Lexer::addTest方法的典型用法代码示例。如果您正苦于以下问题:C++ Lexer::addTest方法的具体用法?C++ Lexer::addTest怎么用?C++ Lexer::addTest使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Lexer
的用法示例。
在下文中一共展示了Lexer::addTest方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: addNumberTest
void addNumberTest(Lexer& lexr)
{
// TODO: add support for decimal point and negative sign
lexr.addTest(
[] (Scanner& sc) {
std::cout << "Running Number test...\n";
char c = sc.getCurrentChar();
if (NUMBER_CHARS.find(c) != std::string::npos) {
int lineNumber = sc.getLineNumber();
int columnNumber = sc.getColumnNumber();
std::string tokenString(1, c);
while (NUMBER_CHARS.find(sc.fetchNextChar()) != std::string::npos) {
tokenString += sc.moveToNextChar();
}
return Token(lineNumber, columnNumber, tokenString, TType::Values::Number);
}
return Token();
}
);
}