diff options
author | Roberto Raggi <roberto.raggi@nokia.com> | 2010-03-24 12:54:25 +0100 |
---|---|---|
committer | Roberto Raggi <roberto.raggi@nokia.com> | 2010-03-24 13:49:02 +0100 |
commit | 8329d7db943bef3f7929d3802fc31f60e314e179 (patch) | |
tree | dabef77315dda11ce9f01250e788a4b5e044a9a4 /src/shared/cplusplus/ASTVisit.cpp | |
parent | 35be3a9f6c916ddb087628d66bb4bb4e76a1daa5 (diff) | |
download | qt-creator-8329d7db943bef3f7929d3802fc31f60e314e179.tar.gz |
Recognize C++0x lambda expressions.
Diffstat (limited to 'src/shared/cplusplus/ASTVisit.cpp')
-rw-r--r-- | src/shared/cplusplus/ASTVisit.cpp | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/src/shared/cplusplus/ASTVisit.cpp b/src/shared/cplusplus/ASTVisit.cpp index 8216f87b48..9e3b249ef3 100644 --- a/src/shared/cplusplus/ASTVisit.cpp +++ b/src/shared/cplusplus/ASTVisit.cpp @@ -1159,3 +1159,57 @@ void ObjCSynchronizedStatementAST::accept0(ASTVisitor *visitor) visitor->endVisit(this); } +void LambdaExpressionAST::accept0(ASTVisitor *visitor) +{ + if (visitor->visit(this)) { + accept(lambda_introducer, visitor); + accept(lambda_declarator, visitor); + accept(statement, visitor); + } + visitor->endVisit(this); +} + +void LambdaIntroducerAST::accept0(ASTVisitor *visitor) +{ + if (visitor->visit(this)) { + accept(lambda_capture, visitor); + } + visitor->endVisit(this); +} + +void LambdaCaptureAST::accept0(ASTVisitor *visitor) +{ + if (visitor->visit(this)) { + accept(capture_list, visitor); + } + visitor->endVisit(this); +} + +void CaptureAST::accept0(ASTVisitor *visitor) +{ + if (visitor->visit(this)) { + } + visitor->endVisit(this); +} + +void LambdaDeclaratorAST::accept0(ASTVisitor *visitor) +{ + if (visitor->visit(this)) { + accept(parameter_declaration_clause, visitor); + accept(attributes, visitor); + accept(exception_specification, visitor); + accept(trailing_return_type, visitor); + } + visitor->endVisit(this); +} + +void TrailingReturnTypeAST::accept0(ASTVisitor *visitor) +{ + if (visitor->visit(this)) { + accept(attributes, visitor); + accept(type_specifiers, visitor); + accept(declarator, visitor); + } + visitor->endVisit(this); +} + |