ribosome-0.9.9.9: lib/Ribosome/Interpreter/UserError.hs
-- |Interpreters for 'UserError'.
module Ribosome.Interpreter.UserError where
import Log (Severity (Info))
import Ribosome.Data.PluginName (PluginName)
import Ribosome.Host.Effect.UserError (UserError (UserError))
import Ribosome.PluginName (pluginNamePrefixed)
-- |Interpret 'UserError' by prefixing messages with the plugin name.
interpretUserErrorPrefixed ::
Member (Reader PluginName) r =>
InterpreterFor UserError r
interpretUserErrorPrefixed =
interpret \case
UserError e severity | severity >= Info ->
Just . pure <$> pluginNamePrefixed e
UserError _ _ ->
pure Nothing