1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-08 19:48:20 +02:00

More const eval progress

This commit is contained in:
Brian Fiete 2020-12-19 14:19:33 -08:00
parent a3ea79cd62
commit 9b80c26d0a
26 changed files with 1673 additions and 460 deletions

View file

@ -567,6 +567,29 @@ BfMethodInstance::~BfMethodInstance()
delete mMethodInfoEx;
}
void BfMethodInstance::CopyFrom(BfMethodInstance* methodInstance)
{
*this = *methodInstance;
if (mMethodInfoEx != NULL)
{
mMethodInfoEx = new BfMethodInfoEx();
*mMethodInfoEx = *(methodInstance->mMethodInfoEx);
for (auto genericParam : mMethodInfoEx->mGenericParams)
genericParam->AddRef();
mMethodInfoEx->mMethodCustomAttributes = NULL;
if (mMethodInfoEx->mClosureInstanceInfo != NULL)
{
mMethodInfoEx->mClosureInstanceInfo = new BfClosureInstanceInfo();
*mMethodInfoEx->mClosureInstanceInfo = *methodInstance->mMethodInfoEx->mClosureInstanceInfo;
}
}
mHasBeenProcessed = false;
mIRFunction = BfIRValue();
mMethodProcessRequest = NULL;
mHotMethod = NULL;
}
BfImportKind BfMethodInstance::GetImportKind()
{
if (mMethodDef->mImportKind != BfImportKind_Import_Unknown)