Added a warnPC function (like diePC) for use with formatCode
This commit is contained in:
parent
ae142a94e1
commit
7f28d3dbe3
|
@ -17,7 +17,9 @@ with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
-}
|
-}
|
||||||
|
|
||||||
-- | Error handling and reporting.
|
-- | Error handling and reporting.
|
||||||
module Errors (addPlainWarning, addWarning, checkJust, Die(..), dieInternal, dieIO, dieP, ErrorReport, showWarnings, Warn(..), WarningReport) where
|
module Errors (addPlainWarning, addWarning, checkJust, Die(..),
|
||||||
|
dieInternal, dieIO, dieP, ErrorReport,
|
||||||
|
showWarnings, Warn(..), WarningReport, warnP) where
|
||||||
|
|
||||||
import Control.Monad.Error
|
import Control.Monad.Error
|
||||||
import Control.Monad.Trans
|
import Control.Monad.Trans
|
||||||
|
@ -45,6 +47,9 @@ type WarningReport = (Maybe Meta, String)
|
||||||
class Monad m => Warn m where
|
class Monad m => Warn m where
|
||||||
warnReport :: WarningReport -> m ()
|
warnReport :: WarningReport -> m ()
|
||||||
|
|
||||||
|
warnP :: Warn m => Meta -> String -> m ()
|
||||||
|
warnP m s = warnReport (Just m,s)
|
||||||
|
|
||||||
--{{{ warnings
|
--{{{ warnings
|
||||||
-- | Add a warning with no source position.
|
-- | Add a warning with no source position.
|
||||||
addPlainWarning :: Warn m => String -> m ()
|
addPlainWarning :: Warn m => String -> m ()
|
||||||
|
|
|
@ -31,7 +31,7 @@ import Data.Set (Set)
|
||||||
import qualified Data.Set as Set
|
import qualified Data.Set as Set
|
||||||
|
|
||||||
import qualified AST as A
|
import qualified AST as A
|
||||||
import Errors (Die, dieP, ErrorReport)
|
import Errors (Die, dieP, ErrorReport, Warn, warnP)
|
||||||
import Metadata
|
import Metadata
|
||||||
|
|
||||||
-- | Modes that Tock can run in.
|
-- | Modes that Tock can run in.
|
||||||
|
@ -301,6 +301,9 @@ makeNonceVariable s m t nt am
|
||||||
diePC :: (CSMR m, Die m) => Meta -> m String -> m a
|
diePC :: (CSMR m, Die m) => Meta -> m String -> m a
|
||||||
diePC m str = str >>= (dieP m)
|
diePC m str = str >>= (dieP m)
|
||||||
|
|
||||||
|
warnPC :: (CSMR m, Warn m) => Meta -> m String -> m ()
|
||||||
|
warnPC m str = str >>= (warnP m)
|
||||||
|
|
||||||
--dieC :: (CSM m, Die m) => m String -> m a
|
--dieC :: (CSM m, Die m) => m String -> m a
|
||||||
--dieC str = str >>= die
|
--dieC str = str >>= die
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user