From d6952266575eeff7f0f985a0db701310a19014f2 Mon Sep 17 00:00:00 2001 From: Brian Fiete Date: Thu, 21 Nov 2024 04:58:59 -0500 Subject: [PATCH] Properly add ref operators in override fixit --- IDEHelper/Compiler/BfAutoComplete.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/IDEHelper/Compiler/BfAutoComplete.cpp b/IDEHelper/Compiler/BfAutoComplete.cpp index 2c540670..fccb5bdf 100644 --- a/IDEHelper/Compiler/BfAutoComplete.cpp +++ b/IDEHelper/Compiler/BfAutoComplete.cpp @@ -2548,7 +2548,7 @@ bool BfAutoComplete::GetMethodInfo(BfMethodInstance* methodInst, StringImpl* sho if (methodInst->GetParamKind(paramIdx) == BfParamKind_Params) methodName += "params "; - + methodName += mModule->TypeToString(methodInst->GetParamType(paramIdx), nameFlags); methodName += " "; methodName += methodDef->mParams[paramIdx]->mName; @@ -2565,6 +2565,16 @@ bool BfAutoComplete::GetMethodInfo(BfMethodInstance* methodInst, StringImpl* sho if (methodInst->GetParamKind(paramIdx) == BfParamKind_Params) impString += "params "; + auto paramType = methodInst->GetParamType(paramIdx); + if (paramType->IsRef()) + { + auto refType = (BfRefType*)paramType; + if (refType->mRefKind == BfRefType::RefKind_Ref) + impString += "ref "; + if (refType->mRefKind == BfRefType::RefKind_Out) + impString += "out "; + } + impString += methodDef->mParams[paramIdx]->mName; } }