текущий номер строки в Lua - PullRequest
36 голосов
/ 31 марта 2010

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

1 Ответ

50 голосов
/ 31 марта 2010

Из 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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...