へのデータレコードのリストを変換しようとするコードです:は、ハッシュマップここ
import Data.HashMap.Lazy as H
data Connections = Connections { connectionName :: String
, cfgProperty :: !Object
} deriving (Show, Generic)
loadConn :: [Connections] -> HashMap k v
loadConn c = H.fromList $ j c
where j cn = do
let h = foldl (\l -> [(connectionName l, cfgProperty l)]) cn
return h
OK、私は「loadConnは」おそらく近接していないことを知っています。私はいくつかの異なるアイデアを手に入れましたが、どれも解決しませんでした。
アイデア?より多くの情報が必要ですか?あなたがIO
アクションの配列を決定するか、モナドのコードの他の種類を書いていないよう
おかげ
あなたの署名は、私(呼び出し元)が 'k'と' v'の型を選ぶことを示しています。私は新しいタイプの 'Foo'と' Bar'を作り、 'Connections'のリストを' loadConn'に送ります。私は 'HashMap Foo Bar'を出したい。私にそれをしてくれますか?これは、 'loadConn'の型があまりにも一般的であることを示すはずです*。 – crockeea