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

Function createargtable

libraries/AP_Scripting/lua/src/lua.c:227–237  ·  view source on GitHub ↗

** Create the 'arg' table, which stores all arguments from the ** command line ('argv'). It should be aligned so that, at index 0, ** it has 'argv[script]', which is the script name. The arguments ** to the script (everything after 'script') go to positive indices; ** other arguments (before the script name) go to negative indices. ** If there is no script name, assume interpreter's name as base.

Source from the content-addressed store, hash-verified

225** If there is no script name, assume interpreter's name as base.
226*/
227static void createargtable (lua_State *L, char **argv, int argc, int script) {
228 int i, narg;
229 if (script == argc) script = 0; /* no script name? */
230 narg = argc - (script + 1); /* number of positive indices */
231 lua_createtable(L, narg, script + 1);
232 for (i = 0; i < argc; i++) {
233 lua_pushstring(L, argv[i]);
234 lua_rawseti(L, -2, i - script);
235 }
236 lua_setglobal(L, "arg");
237}
238
239
240static int dochunk (lua_State *L, int status) {

Callers 1

pmainFunction · 0.85

Calls 4

lua_createtableFunction · 0.85
lua_pushstringFunction · 0.85
lua_rawsetiFunction · 0.85
lua_setglobalFunction · 0.85

Tested by

no test coverage detected