MCPcopy Create free account
hub / github.com/TorqueGameEngines/Torque3D / popFrame

Method popFrame

Engine/source/console/consoleInternal.cpp:721–748  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

719}
720
721void ExprEvalState::popFrame()
722{
723 AssertFatal(mStackDepth > 0, "ExprEvalState::popFrame - Stack Underflow!");
724
725#ifdef DEBUG_SPEW
726 validate();
727
728 Platform::outputDebugString("[ConsoleInternal] Popping %sframe at %i",
729 getCurrentFrame().isOwner() ? "" : "shared ", mStackDepth - 1);
730#endif
731
732 mStackDepth--;
733 stack[mStackDepth]->reset();
734 currentVariable = NULL;
735
736 const ConsoleValueFrame& frame = localStack.last();
737 localStack.pop_back();
738 if (!frame.isReference)
739 delete[] frame.values;
740
741 currentRegisterArray = localStack.size() ? &localStack.last() : NULL;
742
743 AssertFatal(mStackDepth == localStack.size(), avar("Stack sizes do not match. mStackDepth = %d, localStack = %d", mStackDepth, localStack.size()));
744
745#ifdef DEBUG_SPEW
746 validate();
747#endif
748}
749
750void ExprEvalState::pushFrameRef(S32 stackIndex)
751{

Callers 4

execMethod · 0.45
restoreMethod · 0.45
evaluateExpressionMethod · 0.45
TESTFunction · 0.45

Calls 7

validateFunction · 0.85
avarFunction · 0.85
isOwnerMethod · 0.80
resetMethod · 0.45
lastMethod · 0.45
pop_backMethod · 0.45
sizeMethod · 0.45

Tested by 1

TESTFunction · 0.36