mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-09 20:12:21 +02:00
Fixed parsing case ie: foo[ComponentType<int>.ID]
This commit is contained in:
parent
b662b2ac48
commit
14e79b7949
1 changed files with 7 additions and 3 deletions
|
@ -368,7 +368,7 @@ bool BfReducer::IsTypeReference(BfAstNode* checkNode, BfToken successToken, int*
|
||||||
}
|
}
|
||||||
int chevronDepth = 0;
|
int chevronDepth = 0;
|
||||||
bool identifierExpected = true;
|
bool identifierExpected = true;
|
||||||
bool hadEndBracket = false;
|
int endBracket = -1;
|
||||||
int bracketDepth = 0;
|
int bracketDepth = 0;
|
||||||
int parenDepth = 0;
|
int parenDepth = 0;
|
||||||
bool hadTupleComma = false;
|
bool hadTupleComma = false;
|
||||||
|
@ -388,8 +388,12 @@ bool BfReducer::IsTypeReference(BfAstNode* checkNode, BfToken successToken, int*
|
||||||
auto checkTokenNode = BfNodeDynCast<BfTokenNode>(checkNode);
|
auto checkTokenNode = BfNodeDynCast<BfTokenNode>(checkNode);
|
||||||
if (checkTokenNode != NULL)
|
if (checkTokenNode != NULL)
|
||||||
{
|
{
|
||||||
if (hadEndBracket)
|
if (endBracket != -1)
|
||||||
|
{
|
||||||
|
if (outEndNode)
|
||||||
|
*outEndNode = endBracket;
|
||||||
return false;
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
BfToken checkToken = checkTokenNode->GetToken();
|
BfToken checkToken = checkTokenNode->GetToken();
|
||||||
if (bracketDepth > 0)
|
if (bracketDepth > 0)
|
||||||
|
@ -650,7 +654,7 @@ bool BfReducer::IsTypeReference(BfAstNode* checkNode, BfToken successToken, int*
|
||||||
}
|
}
|
||||||
else if (checkToken == BfToken_RBracket)
|
else if (checkToken == BfToken_RBracket)
|
||||||
{
|
{
|
||||||
hadEndBracket = true;
|
endBracket = checkIdx;
|
||||||
}
|
}
|
||||||
else if ((checkToken == BfToken_Star) || (checkToken == BfToken_Question))
|
else if ((checkToken == BfToken_Star) || (checkToken == BfToken_Question))
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue