summaryrefslogtreecommitdiff
path: root/src/shared/cplusplus/ASTMatcher.cpp
diff options
context:
space:
mode:
authorRoberto Raggi <roberto.raggi@nokia.com>2010-03-17 14:35:48 +0100
committerRoberto Raggi <roberto.raggi@nokia.com>2010-03-17 14:37:55 +0100
commit2d45bb807086e4f59e6c60f403f6f4f8b99fde34 (patch)
treef8287b70d572498d488eb8e299cecaa94dfded0d /src/shared/cplusplus/ASTMatcher.cpp
parentbfaf247abd1c3265a6822af934a921d59fbaef18 (diff)
downloadqt-creator-2d45bb807086e4f59e6c60f403f6f4f8b99fde34.tar.gz
Parse and create AST nodes for the Q_MOC_RUN extensions.
Diffstat (limited to 'src/shared/cplusplus/ASTMatcher.cpp')
-rw-r--r--src/shared/cplusplus/ASTMatcher.cpp42
1 files changed, 42 insertions, 0 deletions
diff --git a/src/shared/cplusplus/ASTMatcher.cpp b/src/shared/cplusplus/ASTMatcher.cpp
index 044f7b1f06..e9734c661f 100644
--- a/src/shared/cplusplus/ASTMatcher.cpp
+++ b/src/shared/cplusplus/ASTMatcher.cpp
@@ -231,6 +231,48 @@ bool ASTMatcher::match(AccessDeclarationAST *node, AccessDeclarationAST *pattern
return true;
}
+bool ASTMatcher::match(QtObjectTagAST *node, QtObjectTagAST *pattern)
+{
+ (void) node;
+ (void) pattern;
+
+ pattern->q_object_token = node->q_object_token;
+
+ return true;
+}
+
+bool ASTMatcher::match(QtPrivateSlotAST *node, QtPrivateSlotAST *pattern)
+{
+ (void) node;
+ (void) pattern;
+
+ pattern->q_private_slot_token = node->q_private_slot_token;
+
+ pattern->lparen_token = node->lparen_token;
+
+ pattern->dptr_token = node->dptr_token;
+
+ pattern->dptr_lparen_token = node->dptr_lparen_token;
+
+ pattern->dptr_rparen_token = node->dptr_rparen_token;
+
+ pattern->comma_token = node->comma_token;
+
+ if (! pattern->type_specifiers)
+ pattern->type_specifiers = node->type_specifiers;
+ else if (! AST::match(node->type_specifiers, pattern->type_specifiers, this))
+ return false;
+
+ if (! pattern->declarator)
+ pattern->declarator = node->declarator;
+ else if (! AST::match(node->declarator, pattern->declarator, this))
+ return false;
+
+ pattern->rparen_token = node->rparen_token;
+
+ return true;
+}
+
bool ASTMatcher::match(QtPropertyDeclarationItemAST *node, QtPropertyDeclarationItemAST *pattern)
{
(void) node;