MCPcopy Create free account
hub / github.com/ArduPilot/ardupilot / lua_setupvalue

Function lua_setupvalue

libraries/AP_Scripting/lua/src/lapi.c:1238–1256  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1236
1237
1238LUA_API const char *lua_setupvalue (lua_State *L, int funcindex, int n) {
1239 const char *name;
1240 TValue *val = NULL; /* to avoid warnings */
1241 CClosure *owner = NULL;
1242 UpVal *uv = NULL;
1243 StkId fi;
1244 lua_lock(L);
1245 fi = index2addr(L, funcindex);
1246 api_checknelems(L, 1);
1247 name = aux_upvalue(fi, n, &val, &owner, &uv);
1248 if (name) {
1249 L->top--;
1250 setobj(L, val, L->top);
1251 if (owner) { luaC_barrier(L, owner, L->top); }
1252 else if (uv) { luaC_upvalbarrier(L, uv); }
1253 }
1254 lua_unlock(L);
1255 return name;
1256}
1257
1258
1259static UpVal **getupvalref (lua_State *L, int fidx, int n, LClosure **pf) {

Callers 5

load_scriptMethod · 0.85
load_auxFunction · 0.85
ll_requireFunction · 0.85
set_envFunction · 0.85
auxupvalueFunction · 0.85

Calls 2

index2addrFunction · 0.85
aux_upvalueFunction · 0.85

Tested by

no test coverage detected