MCPcopy Create free account
hub / github.com/EmmyLua/EmmyLuaDebugger / unroll

Function unroll

third-party/lua-5.5.0/src/ldo.c:866–877  ·  view source on GitHub ↗

** Executes "full continuation" (everything in the stack) of a ** previously interrupted coroutine until the stack is empty (or another ** interruption long-jumps out of the loop). */

Source from the content-addressed store, hash-verified

864** interruption long-jumps out of the loop).
865*/
866static void unroll (lua_State *L, void *ud) {
867 CallInfo *ci;
868 UNUSED(ud);
869 while ((ci = L->ci) != &L->base_ci) { /* something in the stack */
870 if (!isLua(ci)) /* C function? */
871 finishCcall(L, ci); /* complete its execution */
872 else { /* Lua function */
873 luaV_finishOp(L); /* finish interrupted instruction */
874 luaV_execute(L, ci); /* execute down to higher C 'boundary' */
875 }
876 }
877}
878
879
880/*

Callers 1

resumeFunction · 0.70

Calls 3

finishCcallFunction · 0.70
luaV_finishOpFunction · 0.70
luaV_executeFunction · 0.70

Tested by

no test coverage detected