trace-calls.lua

来自「著名的LUA脚本语言的解释器源码,该源码为5.1.2版本,详情参看其中的src」· LUA 代码 · 共 33 行

LUA
33
字号
-- trace calls-- example: lua -ltrace-calls bisect.lualocal level=0local function hook(event) local t=debug.getinfo(3) io.write(level," >>> ",string.rep(" ",level)) if t~=nil and t.currentline>=0 then io.write(t.short_src,":",t.currentline," ") end t=debug.getinfo(2) if event=="call" then  level=level+1 else  level=level-1 if level<0 then level=0 end end if t.what=="main" then  if event=="call" then   io.write("begin ",t.short_src)  else   io.write("end ",t.short_src)  end elseif t.what=="Lua" then-- table.foreach(t,print)  io.write(event," ",t.name or "(Lua)"," <",t.linedefined,":",t.short_src,">") else io.write(event," ",t.name or "(C)"," [",t.what,"] ") end io.write("\n")enddebug.sethook(hook,"cr")level=0

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?