forked from qt-creator/qt-creator
C++: Add Token::isStringLiteral and Token::isCharLiteral
It will be particularly handy when introducing the new C++11 string/char literals: U"abc", u"abc", u8"abc", U'a', u'a'. Change-Id: Ic250f5a7b999da322debb24fc0171aaef333f356 Reviewed-by: hjk <qthjk@ovi.com>
This commit is contained in:
14
src/libs/3rdparty/cplusplus/Token.h
vendored
14
src/libs/3rdparty/cplusplus/Token.h
vendored
@@ -37,12 +37,16 @@ enum Kind {
|
||||
|
||||
T_FIRST_LITERAL,
|
||||
T_NUMERIC_LITERAL = T_FIRST_LITERAL,
|
||||
T_CHAR_LITERAL,
|
||||
T_FIRST_CHAR_LITERAL,
|
||||
T_CHAR_LITERAL = T_FIRST_CHAR_LITERAL,
|
||||
T_WIDE_CHAR_LITERAL,
|
||||
T_STRING_LITERAL,
|
||||
T_LAST_CHAR_LITERAL = T_WIDE_CHAR_LITERAL,
|
||||
T_FIRST_STRING_LITERAL,
|
||||
T_STRING_LITERAL = T_FIRST_STRING_LITERAL,
|
||||
T_WIDE_STRING_LITERAL,
|
||||
T_AT_STRING_LITERAL,
|
||||
T_ANGLE_STRING_LITERAL,
|
||||
T_LAST_STRING_LITERAL = T_ANGLE_STRING_LITERAL,
|
||||
T_LAST_LITERAL = T_ANGLE_STRING_LITERAL,
|
||||
|
||||
T_FIRST_OPERATOR,
|
||||
@@ -287,6 +291,12 @@ public:
|
||||
inline bool isLiteral() const
|
||||
{ return f.kind >= T_FIRST_LITERAL && f.kind <= T_LAST_LITERAL; }
|
||||
|
||||
inline bool isCharLiteral() const
|
||||
{ return f.kind >= T_FIRST_CHAR_LITERAL && f.kind <= T_LAST_CHAR_LITERAL; }
|
||||
|
||||
inline bool isStringLiteral() const
|
||||
{ return f.kind >= T_FIRST_STRING_LITERAL && f.kind <= T_LAST_STRING_LITERAL; }
|
||||
|
||||
inline bool isOperator() const
|
||||
{ return f.kind >= T_FIRST_OPERATOR && f.kind <= T_LAST_OPERATOR; }
|
||||
|
||||
|
Reference in New Issue
Block a user