on b9dfd49 help sign in
25 lines 769 B history raw
1-- Copyright (c) 2019 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved.
2-- SPDX-License-Identifier: Apache-2.0
4{-# LANGUAGE RankNTypes #-}
5-- | This is a compatibility module that abstracts over the
6-- concrete choice of logging framework so users can plug in whatever
7-- framework they want to.
8module Development.IDE.Logger
9 ( Handle(..)
10 , makeNopHandle
11 ) where
13import qualified Data.Text as T
14import GHC.Stack
16data Handle m = Handle {
17 logError :: HasCallStack => T.Text -> m ()
18 , logWarning :: HasCallStack => T.Text -> m ()
19 , logInfo :: HasCallStack => T.Text -> m ()
20 , logDebug :: HasCallStack => T.Text -> m ()
21 }
23makeNopHandle :: Monad m => Handle m
24makeNopHandle = Handle e e e e where
25 e _ = pure ()