2014-10-17 179 views
3

我使用mongodb並構建了許多像這樣的bson類型。Haskell ExtendedDefaultRules。更改默認值?

[ "group" =: "default" , "views" =: 0 ] 

指定確切的類型真的很煩人。 我必須像這樣構造它,除非它可以被扣除。

[ "group" =: ("default" :: Text) , "views" =: (1 :: Int) ] 

所以給{-# LANGUAGE ExtendedDefaultRules #-}編譯修復它,但不理想的類型。它默認爲Integer,這對於性能方面的原因並不是很好,對於不符合一致性原因的String也是如此。

是否有可能更改默認值並使其默認爲說明Int和Text,而無需始終手動限定類型?

謝謝。

+3

您是否嘗試過'默認(智力,雙人間)'靠近你的源文件的頂部?無需擴展。此默認值僅適用於Integral和Floating類型。對於文本,你可能可以使用OverloadedStrings,但我懷疑你已經。 – bheklilr 2014-10-17 02:16:30

回答

1

隨着OverloadedStrings,您可以使用default (Int, Text)