module Mpv.Data.MpvError where

import Polysemy.Time.Json (json)

data MpvError =
  MpvError { MpvError -> Text
error :: Text }
  |
  Fatal { MpvError -> Text
exception :: Text }
  deriving stock (MpvError -> MpvError -> Bool
(MpvError -> MpvError -> Bool)
-> (MpvError -> MpvError -> Bool) -> Eq MpvError
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: MpvError -> MpvError -> Bool
$c/= :: MpvError -> MpvError -> Bool
== :: MpvError -> MpvError -> Bool
$c== :: MpvError -> MpvError -> Bool
Eq, Int -> MpvError -> ShowS
[MpvError] -> ShowS
MpvError -> String
(Int -> MpvError -> ShowS)
-> (MpvError -> String) -> ([MpvError] -> ShowS) -> Show MpvError
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [MpvError] -> ShowS
$cshowList :: [MpvError] -> ShowS
show :: MpvError -> String
$cshow :: MpvError -> String
showsPrec :: Int -> MpvError -> ShowS
$cshowsPrec :: Int -> MpvError -> ShowS
Show)

json ''MpvError