使用ghc-mod获取完整类型签名(M-x ghc-show-type)

时间:2015-12-23 10:02:37

标签: haskell haskell-stack ghc-mod

考虑Foo.hs

module Foo where

foo :: Num t => t
foo = 3

在其上运行ghc-mod -type这样只会为t的签名提供类型foo,即使声明已经附加了完整的类型签名:

$ ghc-mod type src/Foo.hs 4 1
4 1 4 8 "t"

当想要使用ghc-mod将类型添加到没有一个声明的声明时,这变得非常有限。

有没有办法从ghc-mod获取完整类型?

或者,可以使用哪些工具代替ghc-mod来实现此目的?这些工具可以与ghc-mod一起使用(例如在Emacs中)吗?

编辑: stack-ide也报告类型仅为t而非完整Num t => t

[nil] -> {"tag":"RequestGetExpTypes","contents":{"spanFilePath":"src\/Foo.hs","spanFromLine":4,"spanFromColumn":1,"spanToLine":4,"spanToColumn":4}}
 <- {"tag":"ResponseGetExpTypes","contents":[["t",{"spanFromLine":4,"spanFilePath":"src/Foo.hs","spanToColumn":4,"spanFromColumn":1,"spanToLine":4}]]}

0 个答案:

没有答案