Hoogle Search
Within LTS Haskell 24.34 (ghc-9.10.3)
Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.
-
autodocodec Autodocodec.Codec Map both directions of a codec You can use this function to change the type of a codec as long as the two functions are inverses.
HasCodec instance for newtypes
A good use-case is implementing HasCodec for newtypes:newtype MyInt = MyInt { unMyInt :: Int } instance HasCodec MyInt where codec = dimapCodec MyInt unMyInt codec -
autodocodec Autodocodec.Codec Encode a HashMap, and decode any HashMap.
API Note
This is a forward-compatible version of HashMapCodec.hashMapCodec = HashMapCodec
keyMapCodec :: JSONCodec v -> JSONCodec (KeyMap v)autodocodec Autodocodec.Codec Encode a KeyMap, and decode any KeyMap. This chooses hashMapCodec or mapCodec based on ordered-keymap flag in aeson.
-
autodocodec Autodocodec.Codec Map the input part of a codec You can use this function if you only need to map the rendering-side of a codec. This function is probably only useful if the function you map does not change the codec type. WARNING: This can be used to produce a codec that does not roundtrip.
>>> toJSONVia (lmapCodec (*2) (codec :: JSONCodec Int)) 5 Number 10.0
-
autodocodec Autodocodec.Codec Map the output part of a codec You can use this function if you only need to map the parsing-side of a codec. This function is probably only useful if the function you map does not change the codec type. WARNING: This can be used to produce a codec that does not roundtrip.
>>> JSON.parseMaybe (parseJSONVia (rmapCodec (*2) codec)) (Number 5) :: Maybe Int Just 10
forkMapM :: (a -> IO b) -> [a] -> IO [Either SomeException b]monad-loops Control.Monad.Loops Like mapM, but run all the actions in parallel threads, collecting up the results and returning them all. Does not return until all actions finish.
forkMapM_ :: (a -> IO b) -> [a] -> IO [Maybe SomeException]monad-loops Control.Monad.Loops like forkMapM but without bothering to keep the return values
forkMapM__ :: (a -> IO b) -> [a] -> IO ()monad-loops Control.Monad.Loops like forkMapM_ but not even bothering to track success or failure of the child threads. Still waits for them all though.
contramapGLogFunc :: (a -> b) -> GLogFunc b -> GLogFunc ario RIO A contramap. Use this to wrap sub-loggers via mapRIO. If you are on base > 4.12.0, you can just use contramap.
contramapMaybeGLogFunc :: (a -> Maybe b) -> GLogFunc b -> GLogFunc ario RIO A vesion of contramapMaybeGLogFunc which supports filering.