![](/img/trans.png)
[英]How to override what's printed for lldb po command, for a swift enum?
[英]LLDB alias for Swift command
在我的应用程序中从FMDB调试 SQLite 查询时,我有时会使用命令返回结果集当前行中的所有值:
(lldb) po (0..<result.columnCount()).map{result.object(forColumnIndex: $0)!}
我在整个应用程序中始终使用名称“result”,所以这个命令永远不会改变,显然每次我想使用它时都输入它有点乏味,所以我想创建一个别名,但是当我尝试这样做时(无论是通过 .lldbinit 文件还是直接在 Xcode 控制台中),我都会收到错误消息:
(lldb) command alias poresult po (0..<result.columnCount()).map{result.object(forColumnIndex: $0)!}
error: Unable to create requested alias.
环顾四周,我找不到任何在别名中使用 Swift 代码的实例,但我确实找到了几个使用 Objective-C 的例子,所以我认为这是可能的。
我究竟做错了什么?
在 Swift 项目中, po
是expression -O -l swift --
的别名。 尝试用您自己的别名替换它的定义。
command alias poresult expression -O -l swift -- (0..<result.columnCount()).map{result.object(forColumnIndex: $0)!}
更一般:
command alias ALIAS_NAME expression -O -l swift -- YOUR_CODE_HERE
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.