diff options
author | Roberto Raggi <roberto.raggi@nokia.com> | 2009-09-29 11:34:11 +0200 |
---|---|---|
committer | Roberto Raggi <roberto.raggi@nokia.com> | 2009-09-29 11:35:43 +0200 |
commit | e40cd82f8c12ca3d0a3b0e9c89737acf940def44 (patch) | |
tree | b5a4688f2213166dde97d575d2afbd0d7935aa23 /src/shared/cplusplus | |
parent | 1ce92c0ed6fad332c1ef7a1eb1d770fbd23932fb (diff) | |
download | qt-creator-e40cd82f8c12ca3d0a3b0e9c89737acf940def44.tar.gz |
Introduced T_CPP_COMMENT and T_CPP_DOXY_COMMENT to handle C++-style comments and improved CPPEditor::isInComment to handle the newly introduced tokens.
As side effect,this change should fix the regression we introduced in the "automagically" quote/brace insertion.
Diffstat (limited to 'src/shared/cplusplus')
-rw-r--r-- | src/shared/cplusplus/Lexer.cpp | 2 | ||||
-rw-r--r-- | src/shared/cplusplus/Token.cpp | 1 | ||||
-rw-r--r-- | src/shared/cplusplus/Token.h | 5 |
3 files changed, 6 insertions, 2 deletions
diff --git a/src/shared/cplusplus/Lexer.cpp b/src/shared/cplusplus/Lexer.cpp index a9ef6cce3f..79c9bf4af1 100644 --- a/src/shared/cplusplus/Lexer.cpp +++ b/src/shared/cplusplus/Lexer.cpp @@ -428,7 +428,7 @@ void Lexer::scan_helper(Token *tok) if (! f._scanCommentTokens) goto _Lagain; - tok->f.kind = doxy ? T_DOXY_COMMENT : T_COMMENT; + tok->f.kind = doxy ? T_CPP_DOXY_COMMENT : T_CPP_COMMENT; } else if (_yychar == '*') { yyinp(); diff --git a/src/shared/cplusplus/Token.cpp b/src/shared/cplusplus/Token.cpp index 14a62f3db3..547849b1cc 100644 --- a/src/shared/cplusplus/Token.cpp +++ b/src/shared/cplusplus/Token.cpp @@ -54,6 +54,7 @@ CPLUSPLUS_BEGIN_NAMESPACE static const char *token_names[] = { (""), ("<error>"), + ("<C++ comment>"), ("<C++ doxy comment>"), ("<comment>"), ("<doxy comment>"), ("<identifier>"), ("<numeric literal>"), ("<char literal>"), diff --git a/src/shared/cplusplus/Token.h b/src/shared/cplusplus/Token.h index 861c21da27..00d42b7f89 100644 --- a/src/shared/cplusplus/Token.h +++ b/src/shared/cplusplus/Token.h @@ -59,6 +59,8 @@ enum Kind { T_EOF_SYMBOL = 0, T_ERROR, + T_CPP_COMMENT, + T_CPP_DOXY_COMMENT, T_COMMENT, T_DOXY_COMMENT, T_IDENTIFIER, @@ -297,7 +299,8 @@ public: { return f.kind >= T_FIRST_KEYWORD && f.kind < T_FIRST_QT_KEYWORD; } inline bool isComment() const - { return f.kind == T_COMMENT || f.kind == T_DOXY_COMMENT; } + { return f.kind == T_COMMENT || f.kind == T_DOXY_COMMENT || + f.kind == T_CPP_COMMENT || f.kind == T_CPP_DOXY_COMMENT; } inline bool isObjCAtKeyword() const { return f.kind >= T_FIRST_OBJC_AT_KEYWORD && f.kind <= T_LAST_OBJC_AT_KEYWORD; } |