{-# LANGUAGE DeriveDataTypeable #-}

module Burrito.Internal.Type.MaxLength
  ( MaxLength(..)
  ) where

import qualified Data.Data as Data

newtype MaxLength = MaxLength
  { MaxLength -> Int
count :: Int
  } deriving (Typeable MaxLength
DataType
Constr
Typeable MaxLength
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g) -> MaxLength -> c MaxLength)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r) -> Constr -> c MaxLength)
-> (MaxLength -> Constr)
-> (MaxLength -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d)) -> Maybe (c MaxLength))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c MaxLength))
-> ((forall b. Data b => b -> b) -> MaxLength -> MaxLength)
-> (forall r r'.
    (r -> r' -> r)
    -> r -> (forall d. Data d => d -> r') -> MaxLength -> r)
-> (forall r r'.
    (r' -> r -> r)
    -> r -> (forall d. Data d => d -> r') -> MaxLength -> r)
-> (forall u. (forall d. Data d => d -> u) -> MaxLength -> [u])
-> (forall u.
    Int -> (forall d. Data d => d -> u) -> MaxLength -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d) -> MaxLength -> m MaxLength)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> MaxLength -> m MaxLength)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> MaxLength -> m MaxLength)
-> Data MaxLength
MaxLength -> DataType
MaxLength -> Constr
(forall b. Data b => b -> b) -> MaxLength -> MaxLength
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MaxLength -> c MaxLength
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MaxLength
forall a.
Typeable a
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
    (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
    (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u. Int -> (forall d. Data d => d -> u) -> MaxLength -> u
forall u. (forall d. Data d => d -> u) -> MaxLength -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MaxLength -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MaxLength -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> MaxLength -> m MaxLength
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> MaxLength -> m MaxLength
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MaxLength
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MaxLength -> c MaxLength
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c MaxLength)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c MaxLength)
$cMaxLength :: Constr
$tMaxLength :: DataType
gmapMo :: (forall d. Data d => d -> m d) -> MaxLength -> m MaxLength
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> MaxLength -> m MaxLength
gmapMp :: (forall d. Data d => d -> m d) -> MaxLength -> m MaxLength
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> MaxLength -> m MaxLength
gmapM :: (forall d. Data d => d -> m d) -> MaxLength -> m MaxLength
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> MaxLength -> m MaxLength
gmapQi :: Int -> (forall d. Data d => d -> u) -> MaxLength -> u
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> MaxLength -> u
gmapQ :: (forall d. Data d => d -> u) -> MaxLength -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> MaxLength -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MaxLength -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MaxLength -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MaxLength -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MaxLength -> r
gmapT :: (forall b. Data b => b -> b) -> MaxLength -> MaxLength
$cgmapT :: (forall b. Data b => b -> b) -> MaxLength -> MaxLength
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c MaxLength)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c MaxLength)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c MaxLength)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c MaxLength)
dataTypeOf :: MaxLength -> DataType
$cdataTypeOf :: MaxLength -> DataType
toConstr :: MaxLength -> Constr
$ctoConstr :: MaxLength -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MaxLength
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MaxLength
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MaxLength -> c MaxLength
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MaxLength -> c MaxLength
$cp1Data :: Typeable MaxLength
Data.Data, MaxLength -> MaxLength -> Bool
(MaxLength -> MaxLength -> Bool)
-> (MaxLength -> MaxLength -> Bool) -> Eq MaxLength
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: MaxLength -> MaxLength -> Bool
$c/= :: MaxLength -> MaxLength -> Bool
== :: MaxLength -> MaxLength -> Bool
$c== :: MaxLength -> MaxLength -> Bool
Eq, Eq MaxLength
Eq MaxLength
-> (MaxLength -> MaxLength -> Ordering)
-> (MaxLength -> MaxLength -> Bool)
-> (MaxLength -> MaxLength -> Bool)
-> (MaxLength -> MaxLength -> Bool)
-> (MaxLength -> MaxLength -> Bool)
-> (MaxLength -> MaxLength -> MaxLength)
-> (MaxLength -> MaxLength -> MaxLength)
-> Ord MaxLength
MaxLength -> MaxLength -> Bool
MaxLength -> MaxLength -> Ordering
MaxLength -> MaxLength -> MaxLength
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 :: MaxLength -> MaxLength -> MaxLength
$cmin :: MaxLength -> MaxLength -> MaxLength
max :: MaxLength -> MaxLength -> MaxLength
$cmax :: MaxLength -> MaxLength -> MaxLength
>= :: MaxLength -> MaxLength -> Bool
$c>= :: MaxLength -> MaxLength -> Bool
> :: MaxLength -> MaxLength -> Bool
$c> :: MaxLength -> MaxLength -> Bool
<= :: MaxLength -> MaxLength -> Bool
$c<= :: MaxLength -> MaxLength -> Bool
< :: MaxLength -> MaxLength -> Bool
$c< :: MaxLength -> MaxLength -> Bool
compare :: MaxLength -> MaxLength -> Ordering
$ccompare :: MaxLength -> MaxLength -> Ordering
$cp1Ord :: Eq MaxLength
Ord, Int -> MaxLength -> ShowS
[MaxLength] -> ShowS
MaxLength -> String
(Int -> MaxLength -> ShowS)
-> (MaxLength -> String)
-> ([MaxLength] -> ShowS)
-> Show MaxLength
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [MaxLength] -> ShowS
$cshowList :: [MaxLength] -> ShowS
show :: MaxLength -> String
$cshow :: MaxLength -> String
showsPrec :: Int -> MaxLength -> ShowS
$cshowsPrec :: Int -> MaxLength -> ShowS
Show)