1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-09 03:52:19 +02:00

Added mouseover for let/var fields

This commit is contained in:
Brian Fiete 2020-01-28 10:57:57 -08:00
parent c4a5ab6cd1
commit 0b71897461

View file

@ -3822,20 +3822,31 @@ void BfCompiler::ProcessAutocompleteTempType()
continue; // Don't process auto-generated property fields continue; // Don't process auto-generated property fields
if (fieldDef->mTypeRef != NULL) if (fieldDef->mTypeRef != NULL)
module->ResolveTypeRef(fieldDef->mTypeRef); {
module->ResolveTypeRef(fieldDef->mTypeRef);
}
mResolvePassData->mAutoComplete->CheckTypeRef(fieldDef->mTypeRef, true); mResolvePassData->mAutoComplete->CheckTypeRef(fieldDef->mTypeRef, true);
actualTypeDef->PopulateMemberSets();
BfFieldDef* actualFieldDef = NULL; BfFieldDef* actualFieldDef = NULL;
for (auto checkFieldDef : actualTypeDef->mFields) BfMemberSetEntry* memberSetEntry = NULL;
{ if (actualTypeDef->mFieldSet.TryGetWith(fieldDef->mName, &memberSetEntry))
if ((checkFieldDef->mName == fieldDef->mName) && {
(checkFieldDef->mIsConst == fieldDef->mIsConst) && auto checkFieldDef = (BfFieldDef*)memberSetEntry->mMemberDef;
if ((checkFieldDef->mIsConst == fieldDef->mIsConst) &&
(checkFieldDef->mIsStatic == fieldDef->mIsStatic)) (checkFieldDef->mIsStatic == fieldDef->mIsStatic))
{ {
actualFieldDef = checkFieldDef; actualFieldDef = checkFieldDef;
} }
} }
if (actualFieldDef != NULL)
{
auto fieldInstance = &typeInst->mFieldInstances[actualFieldDef->mIdx];
autoComplete->CheckVarResolution(fieldDef->mTypeRef, fieldInstance->mResolvedType);
}
if (((autoComplete->mIsGetDefinition) || (autoComplete->mResolveType == BfResolveType_GetResultString)) && if (((autoComplete->mIsGetDefinition) || (autoComplete->mResolveType == BfResolveType_GetResultString)) &&
(fieldDef->mFieldDeclaration != NULL) && (autoComplete->IsAutocompleteNode(fieldDef->mFieldDeclaration->mNameNode))) (fieldDef->mFieldDeclaration != NULL) && (autoComplete->IsAutocompleteNode(fieldDef->mFieldDeclaration->mNameNode)))
{ {