summaryrefslogtreecommitdiff
path: root/src/shared/cplusplus/Parser.h
diff options
context:
space:
mode:
authorcon <qtc-committer@nokia.com>2009-10-26 13:51:56 +0100
committercon <qtc-committer@nokia.com>2009-10-26 13:51:56 +0100
commit441ece365aba579eeb66acb509df466f5029c580 (patch)
treeb4f8ac51e0203bad62c301f0c891b9246a15ad6a /src/shared/cplusplus/Parser.h
parent4504aec7deb2f0abcd6a71e094bbcfb4edd5154d (diff)
parent3c0ca8c18881bc26fd8946bc2651fa89b10a1329 (diff)
downloadqt-creator-441ece365aba579eeb66acb509df466f5029c580.tar.gz
Merge commit 'origin/1.3'
Conflicts: src/plugins/cpptools/cppcodecompletion.h src/plugins/debugger/gdb/gdbengine.cpp src/plugins/qmleditor/QmlEditor.pluginspec
Diffstat (limited to 'src/shared/cplusplus/Parser.h')
-rw-r--r--src/shared/cplusplus/Parser.h17
1 files changed, 16 insertions, 1 deletions
diff --git a/src/shared/cplusplus/Parser.h b/src/shared/cplusplus/Parser.h
index 3ca3371d81..d9ccf6ab49 100644
--- a/src/shared/cplusplus/Parser.h
+++ b/src/shared/cplusplus/Parser.h
@@ -54,7 +54,6 @@
#include "Token.h"
#include "TranslationUnit.h"
-
namespace CPlusPlus {
class CPLUSPLUS_EXPORT Parser
@@ -287,6 +286,17 @@ private:
inline void rewind(unsigned cursor)
{ _tokenIndex = cursor; }
+ struct TemplateArgumentListEntry {
+ unsigned index;
+ unsigned cursor;
+ TemplateArgumentListAST *ast;
+
+ TemplateArgumentListEntry(unsigned index = 0, unsigned cursor = 0, TemplateArgumentListAST *ast = 0)
+ : index(index), cursor(cursor), ast(ast) {}
+ };
+
+ TemplateArgumentListEntry *templateArgumentListEntry(unsigned tokenIndex);
+
private:
TranslationUnit *_translationUnit;
Control *_control;
@@ -298,6 +308,11 @@ private:
bool _inFunctionBody: 1;
bool _inObjCImplementationContext: 1;
+ Array<TemplateArgumentListEntry> _templateArgumentList;
+
+ class Rewind;
+ friend class Rewind;
+
private:
Parser(const Parser& source);
void operator =(const Parser& source);