Nim: Force regular expression optimization on first usage

Change-Id: I33fb19ee04740de78eaa810f7263cbf133a8541f
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
Filippo Cucchetto
2017-01-31 23:37:44 +01:00
parent 5a7ba9a541
commit 6b8cbb5a63

View File

@@ -199,13 +199,15 @@ NimLexer::Token NimLexer::readNumber()
bool NimLexer::matchIdentifierOrKeywordStart() bool NimLexer::matchIdentifierOrKeywordStart()
{ {
static QRegularExpression isLetter("[a-zA-Z\x80-\xFF]"); static QRegularExpression isLetter("[a-zA-Z\x80-\xFF]",
QRegularExpression::OptimizeOnFirstUsageOption);
return isLetter.match(m_stream.peek()).hasMatch(); return isLetter.match(m_stream.peek()).hasMatch();
} }
NimLexer::Token NimLexer::readIdentifierOrKeyword() NimLexer::Token NimLexer::readIdentifierOrKeyword()
{ {
static QRegularExpression isLetter("[a-zA-Z\x80-\xFF]"); static QRegularExpression isLetter("[a-zA-Z\x80-\xFF]",
QRegularExpression::OptimizeOnFirstUsageOption);
static QSet<QString> keywords = { static QSet<QString> keywords = {
"addr", "and", "as", "asm", "atomic", "addr", "and", "as", "asm", "atomic",
"bind", "block", "break", "bind", "block", "break",