Haskell Haddock-未生成数据记录字段名称

Haskell Haddock-未生成数据记录字段名称,haskell,hackage,haddock,Haskell,Hackage,Haddock,我很难让haddock显示我的数据记录的字段名。我的一些数据类型有许多不同的数值,因此记录名称是关键 数据记录示例: -- | API response container for daily price history data PriceHistoryResponse = PriceHistoryResponse { responseData :: [PriceHistoryResponseData], -- ^ the actual response, list of price en

我很难让haddock显示我的数据记录的字段名。我的一些数据类型有许多不同的数值,因此记录名称是关键

数据记录示例:

-- | API response container for daily price history
data PriceHistoryResponse = PriceHistoryResponse {
  responseData :: [PriceHistoryResponseData], -- ^ the actual response, list of price entries
  timeTo       :: Maybe Integer, -- ^ latest price returned
  timeFrom     :: Maybe Integer -- ^ earliest price returned
} deriving (Show, Generic)
正在导出的数据类型如下所示:

  -- more module exports above ..
  , PriceHistoryResponse(..)
  , PriceHistoryResponseData(..)
  -- more below ...
对于此定义(以及所有其他类似定义),生成的唯一文档是构造函数的类型签名。然而,没有对涉及的价值进行解释

一个可能相关的细节是,我在这个文件中启用了
DuplicateRecordFields

$ stack exec -- haddock --version                                           
Haddock version 2.17.3

我是犯了一个明显的错误,还是遗漏了什么?很高兴提供任何其他有用的信息。

问题确实是
重复记录字段。当我消除歧义并删除扩展名时,字段生成得很好。

这很可能是
DuplicateRecordFields
'错误。基本上,该扩展删除了所有记录标签,并用类方法替换它们,而Haddock似乎无法逆转这一过程。我从来都不喜欢这种延伸;你确定你需要走那条路吗?对具有明确字段名的记录使用
lens
”对我来说似乎更为通用。@leftaroundabout:我正在为第三方JSON API编写包装器,许多请求和响应都具有跨不同端点共享的字段名。我想我可以采用使字段名唯一的方法,这似乎是一种不必要的解决方法。如果我采取消除歧义的方法,使用镜头有什么好处?我目前没有使用任何镜头功能谢谢@leftaroundabout的帮助!你说得对!