Go语言 在调试期间,是否可以github.com/shopspring/decimal在VSCode中预览www.example.com值?

bvjxkvbb  于 2023-05-11  发布在  Go
关注(0)|答案(1)|浏览(110)

这是在调试期间在vscode中的Go中的普通int64/float64变量的预览。

这是使用Decimal库中的变量时的外观。

如果这是可能的,那么调试将容易得多。现在,没有日志是不可能成为值的,如果没有日志,您需要重建并重新启动项目。
有什么想法可以实现它-也许是一个插件或某种表达式?或者也许有人知道如何为它编写插件/扩展?
基本上是为了查看我们需要调用的值。var.String()函数,但在viscose调试期间无法调用函数。或者我只是不知道怎么做。
我一直在使用这个称为Decimal(https://github.com/shopspring/decimal)的任意精度包多年,这是一个痛苦,我终于想让它工作。
是的,在这个例子中,你可以点击扩展3次,然后取值2345454,取exp:-3,然后在你的头上放一个点,得到2345.453,但这并不理想,我认为它并不总是工作,特别是在零以下的值。

idfiyjo8

idfiyjo81#

展开@icza的评论。
call fff.String()不适用于我的计算机上的github.com/shopspring/decimal。它的错误为:

(dlv) call t.String()
> main.main() ./main.go:20 (PC: 0x49ecbf)
Command failed: write out of bounds

我的系统是linux/amd64。我认为它并不适用于所有64位系统。
当前版本的dlv(1.20.2)中存在一个错误。我刚刚提交了一个bug report并发送了一个fix
如果你想让它现在工作,你可以克隆my fork, checkout call-var-padding分支,然后从源代码(go install ./cmd/dlv)安装。
以下是修补后的dlv的结果:

相关问题