Home

Awesome

co-log-polysemy

Co-logo

GitHub CI Hackage MPL-2.0 license

co-log-polysemy package is a implementation of the co-log-core logging based on the polysemy extensible effects library.

How to use

co-log-polysemy is compatible with the following GHC versions - supported versions

In order to start using co-log-polysemy in your project, you will need to set it up with these easy steps:

  1. Add the dependency on co-log-polysemy in your project's .cabal file. For this, you should modify the build-depends section according to the below section:

    build-depends: base ^>= LATEST_SUPPORTED_BASE
                 , co-log-core ^>= LATEST_VERSION
                 , polysemy ^>= LATEST_VERSION
    
  2. To use this package, refer to the below example

    module Main (main) where
    
    import Prelude hiding (log)
    
    import Polysemy (Member, Sem, runM)
    
    import Colog.Core.IO (logStringStdout)
    import Colog.Polysemy (Log, log, runLogAction)
    
    
    example :: Member (Log String) r => Sem r ()
    example = do
         log @String "First message..."
         log @String "Second message..."
    
    main :: IO ()
    main = runM $ runLogAction @IO logStringStdout example