forked from qt-creator/qt-creator
Parse C++ 0x argument packs.
This commit is contained in:
@@ -162,6 +162,7 @@ public:
|
||||
virtual BaseSpecifierAST *asBaseSpecifier() { return 0; }
|
||||
virtual BinaryExpressionAST *asBinaryExpression() { return 0; }
|
||||
virtual BoolLiteralAST *asBoolLiteral() { return 0; }
|
||||
virtual BracedInitializerAST *asBracedInitializer() { return 0; }
|
||||
virtual BreakStatementAST *asBreakStatement() { return 0; }
|
||||
virtual CallAST *asCall() { return 0; }
|
||||
virtual CaptureAST *asCapture() { return 0; }
|
||||
@@ -2895,6 +2896,7 @@ public:
|
||||
public:
|
||||
SizeofExpressionAST()
|
||||
: sizeof_token(0)
|
||||
, dot_dot_dot_token(0)
|
||||
, lparen_token(0)
|
||||
, expression(0)
|
||||
, rparen_token(0)
|
||||
@@ -4265,6 +4267,33 @@ protected:
|
||||
virtual bool match0(AST *, ASTMatcher *);
|
||||
};
|
||||
|
||||
class BracedInitializerAST: public ExpressionAST
|
||||
{
|
||||
public:
|
||||
unsigned lbrace_token;
|
||||
ExpressionListAST *expression_list;
|
||||
unsigned comma_token;
|
||||
unsigned rbrace_token;
|
||||
|
||||
public:
|
||||
BracedInitializerAST()
|
||||
: lbrace_token(0)
|
||||
, expression_list(0)
|
||||
, comma_token(0)
|
||||
, rbrace_token(0)
|
||||
{}
|
||||
|
||||
virtual BracedInitializerAST *asBracedInitializer() { return this; }
|
||||
virtual unsigned firstToken() const;
|
||||
virtual unsigned lastToken() const;
|
||||
|
||||
virtual BracedInitializerAST *clone(MemoryPool *pool) const;
|
||||
|
||||
protected:
|
||||
virtual void accept0(ASTVisitor *visitor);
|
||||
virtual bool match0(AST *, ASTMatcher *);
|
||||
};
|
||||
|
||||
} // end of namespace CPlusPlus
|
||||
|
||||
#endif // CPLUSPLUS_AST_H
|
||||
|
Reference in New Issue
Block a user