diff options
author | Roberto Raggi <roberto.raggi@nokia.com> | 2010-03-17 14:35:48 +0100 |
---|---|---|
committer | Roberto Raggi <roberto.raggi@nokia.com> | 2010-03-17 14:37:55 +0100 |
commit | 2d45bb807086e4f59e6c60f403f6f4f8b99fde34 (patch) | |
tree | f8287b70d572498d488eb8e299cecaa94dfded0d /src/shared/cplusplus/ASTMatcher.cpp | |
parent | bfaf247abd1c3265a6822af934a921d59fbaef18 (diff) | |
download | qt-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.cpp | 42 |
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; |