Haskell 的Test.QuickCheck模塊 exports pattern Fn,我一直在使用。
當我匯入它時:
import Test.QuickCheck
它作業正常。但是,當我使用以下命令匯入它時:
import Test.QuickCheck (Fn)
我收到一個錯誤:Module ‘Test.QuickCheck’ does not export ‘Fn’。我也嘗試過import Test.QuickCheck (Fun(Fn)),但是這樣做會出現類似的錯誤。
如前所述,一攬子匯入有效,但在這里我更喜歡使用顯式匯入,以便我可以輕松查看每個匯入術語的來源。是否可以明確匯入此類“模式”?
uj5u.com熱心網友回復:
您不能這樣做import Test.QuickCheck (Fun(Fn)),因為盡管Fn確實構造了一個Fun值,但它實際上并不是這種型別的關聯建構式之一。相反,它是一個獨立的模式同義詞。因此,您需要相應的擴展來顯式匯入它:
{-# LANGUAGE PatternSynonyms #-}
import Test.QuickCheck (pattern Fn)
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/493307.html
上一篇:令人困惑的ReaderT定義
