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

Function sort_comp

third-party/lua-5.4.6/src/ltablib.c:275–288  ·  view source on GitHub ↗

** Return true iff value at stack index 'a' is less than the value at ** index 'b' (according to the order of the sort). */

Source from the content-addressed store, hash-verified

273** index 'b' (according to the order of the sort).
274*/
275static int sort_comp (lua_State *L, int a, int b) {
276 if (lua_isnil(L, 2)) /* no function? */
277 return lua_compare(L, a, b, LUA_OPLT); /* a < b */
278 else { /* function */
279 int res;
280 lua_pushvalue(L, 2); /* push function */
281 lua_pushvalue(L, a-1); /* -1 to compensate function */
282 lua_pushvalue(L, b-2); /* -2 to compensate function and 'a' */
283 lua_call(L, 2, 1); /* call function */
284 res = lua_toboolean(L, -1); /* get result */
285 lua_pop(L, 1); /* pop result */
286 return res;
287 }
288}
289
290
291/*

Callers 2

partitionFunction · 0.70
auxsortFunction · 0.70

Calls 4

lua_compareFunction · 0.70
lua_pushvalueFunction · 0.70
lua_tobooleanFunction · 0.70
lua_callFunction · 0.50

Tested by

no test coverage detected