summaryrefslogtreecommitdiff
path: root/src/libs/3rdparty/cplusplus/AST.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/libs/3rdparty/cplusplus/AST.h')
-rw-r--r--src/libs/3rdparty/cplusplus/AST.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/libs/3rdparty/cplusplus/AST.h b/src/libs/3rdparty/cplusplus/AST.h
index 961bc2e1a7..9699ff8e0d 100644
--- a/src/libs/3rdparty/cplusplus/AST.h
+++ b/src/libs/3rdparty/cplusplus/AST.h
@@ -127,6 +127,7 @@ public:
virtual AccessDeclarationAST *asAccessDeclaration() { return 0; }
virtual AliasDeclarationAST *asAliasDeclaration() { return 0; }
virtual AlignofExpressionAST *asAlignofExpression() { return 0; }
+ virtual AnonymousNameAST *asAnonymousName() { return 0; }
virtual ArrayAccessAST *asArrayAccess() { return 0; }
virtual ArrayDeclaratorAST *asArrayDeclarator() { return 0; }
virtual ArrayInitializerAST *asArrayInitializer() { return 0; }
@@ -2267,6 +2268,26 @@ protected:
virtual bool match0(AST *, ASTMatcher *);
};
+class CPLUSPLUS_EXPORT AnonymousNameAST: public NameAST
+{
+public:
+ unsigned class_token;
+public:
+ AnonymousNameAST()
+ : class_token(0)
+ {}
+
+ virtual AnonymousNameAST *asAnonymousName() { return this; }
+ virtual unsigned firstToken() const { return 0; }
+ virtual unsigned lastToken() const { return 0; }
+
+ virtual AnonymousNameAST *clone(MemoryPool *pool) const;
+
+protected:
+ virtual void accept0(ASTVisitor *visitor);
+ virtual bool match0(AST *, ASTMatcher *);
+};
+
class CPLUSPLUS_EXPORT SimpleNameAST: public NameAST
{
public: