MCPcopy Create free account
hub / github.com/beefytech/Beef / RestoreScoreState_LocalVariables

Method RestoreScoreState_LocalVariables

IDEHelper/Compiler/BfModule.cpp:2015–2041  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2013}
2014
2015void BfModule::RestoreScoreState_LocalVariables(int localVarStart)
2016{
2017 while (localVarStart < (int)mCurMethodState->mLocals.size())
2018 {
2019 auto localVar = mCurMethodState->mLocals.back();
2020 LocalVariableDone(localVar, false);
2021 mCurMethodState->mLocals.pop_back();
2022
2023 if (localVar->mShadowedLocal != NULL)
2024 {
2025 BfLocalVarEntry* localVarEntryPtr;
2026 if (mCurMethodState->mLocalVarSet.TryGet(BfLocalVarEntry(localVar), &localVarEntryPtr))
2027 {
2028 localVarEntryPtr->mLocalVar = localVar->mShadowedLocal;
2029 }
2030 }
2031 else
2032 {
2033 mCurMethodState->mLocalVarSet.Remove(BfLocalVarEntry(localVar));
2034 }
2035
2036 if (localVar->mIsBumpAlloc)
2037 localVar->~BfLocalVariable();
2038 else
2039 delete localVar;
2040 }
2041}
2042
2043void BfModule::RestoreScopeState()
2044{

Callers 1

ResolveArgValuesMethod · 0.80

Calls 6

BfLocalVarEntryClass · 0.85
sizeMethod · 0.45
backMethod · 0.45
pop_backMethod · 0.45
TryGetMethod · 0.45
RemoveMethod · 0.45

Tested by

no test coverage detected