summaryrefslogtreecommitdiff
path: root/src/shared/cplusplus/ASTClone.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/ASTClone.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/ASTClone.cpp')
-rw-r--r--src/shared/cplusplus/ASTClone.cpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/shared/cplusplus/ASTClone.cpp b/src/shared/cplusplus/ASTClone.cpp
index 1e58c3f692..7920644c43 100644
--- a/src/shared/cplusplus/ASTClone.cpp
+++ b/src/shared/cplusplus/ASTClone.cpp
@@ -155,6 +155,31 @@ AccessDeclarationAST *AccessDeclarationAST::clone(MemoryPool *pool) const
return ast;
}
+QtObjectTagAST *QtObjectTagAST::clone(MemoryPool *pool) const
+{
+ QtObjectTagAST *ast = new (pool) QtObjectTagAST;
+ ast->q_object_token = q_object_token;
+ return ast;
+}
+
+QtPrivateSlotAST *QtPrivateSlotAST::clone(MemoryPool *pool) const
+{
+ QtPrivateSlotAST *ast = new (pool) QtPrivateSlotAST;
+ ast->q_private_slot_token = q_private_slot_token;
+ ast->lparen_token = lparen_token;
+ ast->dptr_token = dptr_token;
+ ast->dptr_lparen_token = dptr_lparen_token;
+ ast->dptr_rparen_token = dptr_rparen_token;
+ ast->comma_token = comma_token;
+ for (SpecifierListAST *iter = type_specifiers, **ast_iter = &ast->type_specifiers;
+ iter; iter = iter->next, ast_iter = &(*ast_iter)->next)
+ *ast_iter = new (pool) SpecifierListAST((iter->value) ? iter->value->clone(pool) : 0);
+ if (declarator)
+ ast->declarator = declarator->clone(pool);
+ ast->rparen_token = rparen_token;
+ return ast;
+}
+
QtPropertyDeclarationItemAST *QtPropertyDeclarationItemAST::clone(MemoryPool *pool) const
{
QtPropertyDeclarationItemAST *ast = new (pool) QtPropertyDeclarationItemAST;