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.

  1. dimapCodec :: (oldOutput -> newOutput) -> (newInput -> oldInput) -> Codec context oldInput oldOutput -> Codec context newInput newOutput

    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
    

  2. hashMapCodec :: (Eq k, Hashable k, FromJSONKey k, ToJSONKey k) => JSONCodec v -> JSONCodec (HashMap k v)

    autodocodec Autodocodec.Codec

    Encode a HashMap, and decode any HashMap.

    API Note

    This is a forward-compatible version of HashMapCodec.
    hashMapCodec = HashMapCodec
    

  3. 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.

  4. lmapCodec :: (newInput -> oldInput) -> Codec context oldInput output -> Codec context newInput output

    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
    

  5. rmapCodec :: (oldOutput -> newOutput) -> Codec context input oldOutput -> Codec context input newOutput

    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
    

  6. 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.

  7. forkMapM_ :: (a -> IO b) -> [a] -> IO [Maybe SomeException]

    monad-loops Control.Monad.Loops

    like forkMapM but without bothering to keep the return values

  8. 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.

  9. contramapGLogFunc :: (a -> b) -> GLogFunc b -> GLogFunc a

    rio RIO

    A contramap. Use this to wrap sub-loggers via mapRIO. If you are on base > 4.12.0, you can just use contramap.

  10. contramapMaybeGLogFunc :: (a -> Maybe b) -> GLogFunc b -> GLogFunc a

    rio RIO

    A vesion of contramapMaybeGLogFunc which supports filering.

Page 489 of many | Previous | Next