mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-08 03:28:20 +02:00
Fixed colorization of unqualified property access (ie: implicit 'this')
This commit is contained in:
parent
729ca1e8c4
commit
dfdbe7440f
3 changed files with 13 additions and 3 deletions
|
@ -4770,7 +4770,7 @@ BfTypedValue BfExprEvaluator::LookupIdentifier(BfAstNode* refNode, const StringI
|
|||
result = LookupField(identifierNode, thisValue, findName);
|
||||
if ((result) || (mPropDef != NULL))
|
||||
{
|
||||
mModule->SetElementType(identifierNode, BfSourceElementType_Member);
|
||||
mModule->SetHighestElementType(identifierNode, BfSourceElementType_Member);
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
@ -4785,7 +4785,7 @@ BfTypedValue BfExprEvaluator::LookupIdentifier(BfAstNode* refNode, const StringI
|
|||
result = LookupField(identifierNode, thisValue, findName);
|
||||
if ((result) || (mPropDef != NULL))
|
||||
{
|
||||
mModule->SetElementType(identifierNode, BfSourceElementType_Member);
|
||||
mModule->SetHighestElementType(identifierNode, BfSourceElementType_Member);
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
@ -4793,7 +4793,7 @@ BfTypedValue BfExprEvaluator::LookupIdentifier(BfAstNode* refNode, const StringI
|
|||
}
|
||||
else
|
||||
{
|
||||
mModule->SetElementType(identifierNode, BfSourceElementType_Member);
|
||||
mModule->SetHighestElementType(identifierNode, BfSourceElementType_Member);
|
||||
}
|
||||
|
||||
if ((!result) && (identifierNode != NULL))
|
||||
|
|
|
@ -3031,6 +3031,15 @@ void BfModule::SetElementType(BfAstNode* astNode, BfSourceElementType elementTyp
|
|||
}
|
||||
}
|
||||
|
||||
void BfModule::SetHighestElementType(BfAstNode* astNode, BfSourceElementType elementType)
|
||||
{
|
||||
if (mCompiler->mResolvePassData != NULL)
|
||||
{
|
||||
if (auto sourceClassifier = mCompiler->mResolvePassData->GetSourceClassifier(astNode))
|
||||
sourceClassifier->SetHighestElementType(astNode, elementType);
|
||||
}
|
||||
}
|
||||
|
||||
bool BfModule::PreFail()
|
||||
{
|
||||
if (!mIgnoreErrors)
|
||||
|
|
|
@ -1624,6 +1624,7 @@ public:
|
|||
void GetAccessAllowed(BfTypeInstance* checkType, bool& allowProtected, bool& allowPrivate);
|
||||
bool CheckProtection(BfProtectionCheckFlags& flags, BfTypeInstance* memberOwner, BfProject* memberProject, BfProtection memberProtection, BfTypeInstance* lookupStartType);
|
||||
void SetElementType(BfAstNode* astNode, BfSourceElementType elementType);
|
||||
void SetHighestElementType(BfAstNode* astNode, BfSourceElementType elementType);
|
||||
bool PreFail();
|
||||
void SetFail();
|
||||
void VerifyOnDemandMethods();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue