module Mpv.Data.AudioId where import Polysemy.Time.Json (json) newtype AudioId = AudioId { AudioId -> Int unAudioId :: Int } deriving stock (AudioId -> AudioId -> Bool (AudioId -> AudioId -> Bool) -> (AudioId -> AudioId -> Bool) -> Eq AudioId forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a /= :: AudioId -> AudioId -> Bool $c/= :: AudioId -> AudioId -> Bool == :: AudioId -> AudioId -> Bool $c== :: AudioId -> AudioId -> Bool Eq, Int -> AudioId -> ShowS [AudioId] -> ShowS AudioId -> String (Int -> AudioId -> ShowS) -> (AudioId -> String) -> ([AudioId] -> ShowS) -> Show AudioId forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a showList :: [AudioId] -> ShowS $cshowList :: [AudioId] -> ShowS show :: AudioId -> String $cshow :: AudioId -> String showsPrec :: Int -> AudioId -> ShowS $cshowsPrec :: Int -> AudioId -> ShowS Show, (forall x. AudioId -> Rep AudioId x) -> (forall x. Rep AudioId x -> AudioId) -> Generic AudioId forall x. Rep AudioId x -> AudioId forall x. AudioId -> Rep AudioId x forall a. (forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a $cto :: forall x. Rep AudioId x -> AudioId $cfrom :: forall x. AudioId -> Rep AudioId x Generic) deriving newtype (Integer -> AudioId AudioId -> AudioId AudioId -> AudioId -> AudioId (AudioId -> AudioId -> AudioId) -> (AudioId -> AudioId -> AudioId) -> (AudioId -> AudioId -> AudioId) -> (AudioId -> AudioId) -> (AudioId -> AudioId) -> (AudioId -> AudioId) -> (Integer -> AudioId) -> Num AudioId forall a. (a -> a -> a) -> (a -> a -> a) -> (a -> a -> a) -> (a -> a) -> (a -> a) -> (a -> a) -> (Integer -> a) -> Num a fromInteger :: Integer -> AudioId $cfromInteger :: Integer -> AudioId signum :: AudioId -> AudioId $csignum :: AudioId -> AudioId abs :: AudioId -> AudioId $cabs :: AudioId -> AudioId negate :: AudioId -> AudioId $cnegate :: AudioId -> AudioId * :: AudioId -> AudioId -> AudioId $c* :: AudioId -> AudioId -> AudioId - :: AudioId -> AudioId -> AudioId $c- :: AudioId -> AudioId -> AudioId + :: AudioId -> AudioId -> AudioId $c+ :: AudioId -> AudioId -> AudioId Num, Num AudioId Ord AudioId Num AudioId -> Ord AudioId -> (AudioId -> Rational) -> Real AudioId AudioId -> Rational forall a. Num a -> Ord a -> (a -> Rational) -> Real a toRational :: AudioId -> Rational $ctoRational :: AudioId -> Rational Real, Int -> AudioId AudioId -> Int AudioId -> [AudioId] AudioId -> AudioId AudioId -> AudioId -> [AudioId] AudioId -> AudioId -> AudioId -> [AudioId] (AudioId -> AudioId) -> (AudioId -> AudioId) -> (Int -> AudioId) -> (AudioId -> Int) -> (AudioId -> [AudioId]) -> (AudioId -> AudioId -> [AudioId]) -> (AudioId -> AudioId -> [AudioId]) -> (AudioId -> AudioId -> AudioId -> [AudioId]) -> Enum AudioId forall a. (a -> a) -> (a -> a) -> (Int -> a) -> (a -> Int) -> (a -> [a]) -> (a -> a -> [a]) -> (a -> a -> [a]) -> (a -> a -> a -> [a]) -> Enum a enumFromThenTo :: AudioId -> AudioId -> AudioId -> [AudioId] $cenumFromThenTo :: AudioId -> AudioId -> AudioId -> [AudioId] enumFromTo :: AudioId -> AudioId -> [AudioId] $cenumFromTo :: AudioId -> AudioId -> [AudioId] enumFromThen :: AudioId -> AudioId -> [AudioId] $cenumFromThen :: AudioId -> AudioId -> [AudioId] enumFrom :: AudioId -> [AudioId] $cenumFrom :: AudioId -> [AudioId] fromEnum :: AudioId -> Int $cfromEnum :: AudioId -> Int toEnum :: Int -> AudioId $ctoEnum :: Int -> AudioId pred :: AudioId -> AudioId $cpred :: AudioId -> AudioId succ :: AudioId -> AudioId $csucc :: AudioId -> AudioId Enum, Enum AudioId Real AudioId Real AudioId -> Enum AudioId -> (AudioId -> AudioId -> AudioId) -> (AudioId -> AudioId -> AudioId) -> (AudioId -> AudioId -> AudioId) -> (AudioId -> AudioId -> AudioId) -> (AudioId -> AudioId -> (AudioId, AudioId)) -> (AudioId -> AudioId -> (AudioId, AudioId)) -> (AudioId -> Integer) -> Integral AudioId AudioId -> Integer AudioId -> AudioId -> (AudioId, AudioId) AudioId -> AudioId -> AudioId forall a. Real a -> Enum a -> (a -> a -> a) -> (a -> a -> a) -> (a -> a -> a) -> (a -> a -> a) -> (a -> a -> (a, a)) -> (a -> a -> (a, a)) -> (a -> Integer) -> Integral a toInteger :: AudioId -> Integer $ctoInteger :: AudioId -> Integer divMod :: AudioId -> AudioId -> (AudioId, AudioId) $cdivMod :: AudioId -> AudioId -> (AudioId, AudioId) quotRem :: AudioId -> AudioId -> (AudioId, AudioId) $cquotRem :: AudioId -> AudioId -> (AudioId, AudioId) mod :: AudioId -> AudioId -> AudioId $cmod :: AudioId -> AudioId -> AudioId div :: AudioId -> AudioId -> AudioId $cdiv :: AudioId -> AudioId -> AudioId rem :: AudioId -> AudioId -> AudioId $crem :: AudioId -> AudioId -> AudioId quot :: AudioId -> AudioId -> AudioId $cquot :: AudioId -> AudioId -> AudioId Integral, Eq AudioId Eq AudioId -> (AudioId -> AudioId -> Ordering) -> (AudioId -> AudioId -> Bool) -> (AudioId -> AudioId -> Bool) -> (AudioId -> AudioId -> Bool) -> (AudioId -> AudioId -> Bool) -> (AudioId -> AudioId -> AudioId) -> (AudioId -> AudioId -> AudioId) -> Ord AudioId AudioId -> AudioId -> Bool AudioId -> AudioId -> Ordering AudioId -> AudioId -> AudioId forall a. Eq a -> (a -> a -> Ordering) -> (a -> a -> Bool) -> (a -> a -> Bool) -> (a -> a -> Bool) -> (a -> a -> Bool) -> (a -> a -> a) -> (a -> a -> a) -> Ord a min :: AudioId -> AudioId -> AudioId $cmin :: AudioId -> AudioId -> AudioId max :: AudioId -> AudioId -> AudioId $cmax :: AudioId -> AudioId -> AudioId >= :: AudioId -> AudioId -> Bool $c>= :: AudioId -> AudioId -> Bool > :: AudioId -> AudioId -> Bool $c> :: AudioId -> AudioId -> Bool <= :: AudioId -> AudioId -> Bool $c<= :: AudioId -> AudioId -> Bool < :: AudioId -> AudioId -> Bool $c< :: AudioId -> AudioId -> Bool compare :: AudioId -> AudioId -> Ordering $ccompare :: AudioId -> AudioId -> Ordering Ord) json ''AudioId