текущий номер строки в Lua

Делает поддержку Lua что-то как C __LINE__ макрос, который возвращает количество текущей строки кода? Я знаю, что Lua имеет специальную встроенную названную переменную _G, но я не вижу номера строки там...

36
задан prideout 31 March 2010 в 20:34
поделиться

1 ответ

Из Lua с использованием debug.getinfo, например

local line = debug.getinfo(1).currentline

Из C с использованием lua_getinfo (это вернет номер полотна внутри кода lua)

  lua_Debug ar;
  lua_getstack(L, 1, &ar);
  lua_getinfo(L, "nSl", &ar);
  int line = ar.currentline   

http://www.lua.org/manual/5.1/manual.html#lua_getinfo

http://www.lua.org/manual/5.1/manual.html#pdf-debug.getinfo

50
ответ дан 27 November 2019 в 06:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: