forked from qt-creator/qt-creator
C++: Split designator AST
Change-Id: I9bfed2023624c818c0f35f24476693cffeaf2bbc Reviewed-by: Wang Hoi <wanghoi@126.com> Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
This commit is contained in:
committed by
Nikolai Kosjar
parent
cb079c5319
commit
ea4b4bff40
23
src/libs/3rdparty/cplusplus/ASTMatcher.cpp
vendored
23
src/libs/3rdparty/cplusplus/ASTMatcher.cpp
vendored
@@ -2999,11 +2999,32 @@ bool ASTMatcher::match(BracedInitializerAST *node, BracedInitializerAST *pattern
|
||||
return true;
|
||||
}
|
||||
|
||||
bool ASTMatcher::match(DesignatorAST *node, DesignatorAST *pattern)
|
||||
bool ASTMatcher::match(DotDesignatorAST *node, DotDesignatorAST *pattern)
|
||||
{
|
||||
(void) node;
|
||||
(void) pattern;
|
||||
|
||||
pattern->dot_token = node->dot_token;
|
||||
|
||||
pattern->identifier_token = node->identifier_token;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool ASTMatcher::match(BracketDesignatorAST *node, BracketDesignatorAST *pattern)
|
||||
{
|
||||
(void) node;
|
||||
(void) pattern;
|
||||
|
||||
pattern->lbracket_token = node->lbracket_token;
|
||||
|
||||
if (! pattern->expression)
|
||||
pattern->expression = node->expression;
|
||||
else if (! AST::match(node->expression, pattern->expression, this))
|
||||
return false;
|
||||
|
||||
pattern->rbracket_token = node->rbracket_token;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user