aardio 文档

debug 库模块帮助文档

debug 成员列表 #

调试函数库,
debug 属于内置库,但必须使用 import debug 导入才能使用

debug.callcount() #

函数调用栈深度

debug.debug() #

插入断点
执行到该位置时打开控制台进入调试环境,
发布后程序忽略此函数不执行

debug.getfunction(调用级) #

返回函数对象

debug.getlocalvar(纤程,调用级,索引) #

返回局部变量名,变量值

debug.getlocalvar(调用级,索引) #

返回局部变量名,变量值

debug.getnamespace(对象) #

返回对象的名字空间

debug.getupvar(函数对象,索引) #

返回函数闭包局部变量,变量值
注意只有该函数引用的外层函数局部变量才能获取

debug.hook() #

返回对象:debugHookObject

debug.hook(可选参数:可在此输入协程对象) #

创建调试钩子

debug.queryinfo() #

返回对象:debugInfoObject

debug.queryinfo(2,"select source") #

= 查询调用椎栈源码相关信息
参数一可以是函数名、或调用级别
1表示当前函数,2表示调用当前函数的函数

debug.queryinfo(2,"select source,function,upvars,name,currentline,activelines") #

查询调用椎栈信息
参数一可以是函数名、或调用级别
1表示当前函数,2表示调用当前函数的函数

debug.setlocalvar(纤程,调用级,索引,新值) #

修改局部变量值

debug.setlocalvar(调用级,索引,新值) #

修改局部变量值

debug.setupvar(函数对象,索引,值) #

设置函数闭包局部变量,变量值

debug.traceback #

返回活动栈跟踪信息
通常用于global.onError函数或catch语句中

debug.traceback(纤程,"标题",调用级别) #

返回活动栈跟踪信息
所有参数为可选参数,
调用级别为1指当前函数,2为调用当前函数的函数,数值越大调用级别越高

debugHookObject 成员列表 #

debugHookObject.call #

debugHookObject.call=function(){  
/*调用函数触发此回调*/  
}

debugHookObject.close() #

关闭调试钩子

debugHookObject.line #

debugHookObject.line=function(line){  
/*每行代码触发此回调*/  
}

debugHookObject.return #

debugHookObject.return=function(line){  
/*return 语句触发此回调*/  
}

debugHookObject.tailreturn #

debugHookObject.tailreturn=function(line){  
/*尾定义触发此回调,  
必须同时定义 return 语句回调函数,  
如果仅指定 tailreturn 则不会被触发*/  
}

debugInfoObject 成员列表 #

debugInfoObject.activelines #

函数的有效代码行列表
无效行指的是空行或注释等

debugInfoObject.currentline #

当前行

debugInfoObject.function #

当前函数对象

debugInfoObject.name #

函数名字

debugInfoObject.name_where #

global(全局变量)、
self(当前名字空间成员变量)、
var(局部变量)、
upvar(上层语句块局部闭包变量)

debugInfoObject.upvars #

引用的上层函数闭包变量数目

debugInfoObject.source 成员列表 #

源码相关信息

debugInfoObject.source.beginline #

开始定义行

debugInfoObject.source.code #

源码

debugInfoObject.source.endline #

结束;定义行

debugInfoObject.source.file #

文件名

debugInfoObject.source.kind #

类型
"kernel"表示内核函数
"function"
表示普通函数
"main"主函数
"tail"尾调用

debugInfoObject.source.src #

源码或文件名缩略信息

Markdown 格式