summaryrefslogtreecommitdiff
path: root/src/shared/cplusplus/AST.cpp
diff options
context:
space:
mode:
authorErik Verbruggen <erik.verbruggen@nokia.com>2010-03-16 17:29:40 +0100
committerErik Verbruggen <erik.verbruggen@nokia.com>2010-03-17 10:30:17 +0100
commitb4d72a78dbe365a0b5578e453bb9daaeb0260996 (patch)
tree5e4de55006cc0276cce7942a9aa33d2f78ea92b4 /src/shared/cplusplus/AST.cpp
parent61132f260c029c868e1971771424c62f36cef638 (diff)
downloadqt-creator-b4d72a78dbe365a0b5578e453bb9daaeb0260996.tar.gz
Added parser support for Q_INTERFACES.
Diffstat (limited to 'src/shared/cplusplus/AST.cpp')
-rw-r--r--src/shared/cplusplus/AST.cpp39
1 files changed, 38 insertions, 1 deletions
diff --git a/src/shared/cplusplus/AST.cpp b/src/shared/cplusplus/AST.cpp
index f6aebdb688..6da6f08c65 100644
--- a/src/shared/cplusplus/AST.cpp
+++ b/src/shared/cplusplus/AST.cpp
@@ -197,7 +197,7 @@ unsigned QtEnumDeclarationAST::lastToken() const
unsigned QtFlagsDeclarationAST::firstToken() const
{
- return flags_specifier_token + 1;
+ return flags_specifier_token;
}
unsigned QtFlagsDeclarationAST::lastToken() const
@@ -212,6 +212,43 @@ unsigned QtFlagsDeclarationAST::lastToken() const
return flags_specifier_token + 1;
}
+unsigned QtInterfaceNameAST::firstToken() const
+{
+ if (interface_name)
+ return interface_name->firstToken();
+ else if (constraint_list)
+ return constraint_list->firstToken();
+ else
+ return 0;
+}
+
+unsigned QtInterfaceNameAST::lastToken() const
+{
+ if (constraint_list)
+ return constraint_list->lastToken();
+ else if (interface_name)
+ return interface_name->lastToken();
+ else
+ return 0;
+}
+
+unsigned QtInterfacesDeclarationAST::firstToken() const
+{
+ return interfaces_token;
+}
+
+unsigned QtInterfacesDeclarationAST::lastToken() const
+{
+ if (rparen_token)
+ return rparen_token + 1;
+ else if (interface_name_list)
+ return interface_name_list->lastToken();
+ else if (lparen_token)
+ return lparen_token + 1;
+ else
+ return interfaces_token + 1;
+}
+
unsigned ArrayAccessAST::firstToken() const
{
return lbracket_token;