{-# LANGUAGE DeriveDataTypeable #-} module Burrito.Internal.Type.Character (Character(..)) where import qualified Burrito.Internal.Type.Digit as Digit import qualified Data.Data as Data data Character tag = Encoded Digit.Digit Digit.Digit | Unencoded Char deriving (Typeable (Character tag) DataType Constr Typeable (Character tag) -> (forall (c :: * -> *). (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Character tag -> c (Character tag)) -> (forall (c :: * -> *). (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Character tag)) -> (Character tag -> Constr) -> (Character tag -> DataType) -> (forall (t :: * -> *) (c :: * -> *). Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Character tag))) -> (forall (t :: * -> * -> *) (c :: * -> *). Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Character tag))) -> ((forall b. Data b => b -> b) -> Character tag -> Character tag) -> (forall r r'. (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Character tag -> r) -> (forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Character tag -> r) -> (forall u. (forall d. Data d => d -> u) -> Character tag -> [u]) -> (forall u. Int -> (forall d. Data d => d -> u) -> Character tag -> u) -> (forall (m :: * -> *). Monad m => (forall d. Data d => d -> m d) -> Character tag -> m (Character tag)) -> (forall (m :: * -> *). MonadPlus m => (forall d. Data d => d -> m d) -> Character tag -> m (Character tag)) -> (forall (m :: * -> *). MonadPlus m => (forall d. Data d => d -> m d) -> Character tag -> m (Character tag)) -> Data (Character tag) Character tag -> DataType Character tag -> Constr (forall d. Data d => c (t d)) -> Maybe (c (Character tag)) (forall b. Data b => b -> b) -> Character tag -> Character tag (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Character tag -> c (Character tag) (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Character tag) forall tag. Data tag => Typeable (Character tag) forall tag. Data tag => Character tag -> DataType forall tag. Data tag => Character tag -> Constr forall tag. Data tag => (forall b. Data b => b -> b) -> Character tag -> Character tag forall tag u. Data tag => Int -> (forall d. Data d => d -> u) -> Character tag -> u forall tag u. Data tag => (forall d. Data d => d -> u) -> Character tag -> [u] forall tag r r'. Data tag => (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Character tag -> r forall tag r r'. Data tag => (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Character tag -> r forall tag (m :: * -> *). (Data tag, Monad m) => (forall d. Data d => d -> m d) -> Character tag -> m (Character tag) forall tag (m :: * -> *). (Data tag, MonadPlus m) => (forall d. Data d => d -> m d) -> Character tag -> m (Character tag) forall tag (c :: * -> *). Data tag => (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Character tag) forall tag (c :: * -> *). Data tag => (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Character tag -> c (Character tag) forall tag (t :: * -> *) (c :: * -> *). (Data tag, Typeable t) => (forall d. Data d => c (t d)) -> Maybe (c (Character tag)) forall tag (t :: * -> * -> *) (c :: * -> *). (Data tag, Typeable t) => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Character tag)) 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) -> Character tag -> u forall u. (forall d. Data d => d -> u) -> Character tag -> [u] forall r r'. (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Character tag -> r forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Character tag -> r forall (m :: * -> *). Monad m => (forall d. Data d => d -> m d) -> Character tag -> m (Character tag) forall (m :: * -> *). MonadPlus m => (forall d. Data d => d -> m d) -> Character tag -> m (Character tag) forall (c :: * -> *). (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Character tag) forall (c :: * -> *). (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Character tag -> c (Character tag) forall (t :: * -> *) (c :: * -> *). Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Character tag)) forall (t :: * -> * -> *) (c :: * -> *). Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Character tag)) $cUnencoded :: Constr $cEncoded :: Constr $tCharacter :: DataType gmapMo :: (forall d. Data d => d -> m d) -> Character tag -> m (Character tag) $cgmapMo :: forall tag (m :: * -> *). (Data tag, MonadPlus m) => (forall d. Data d => d -> m d) -> Character tag -> m (Character tag) gmapMp :: (forall d. Data d => d -> m d) -> Character tag -> m (Character tag) $cgmapMp :: forall tag (m :: * -> *). (Data tag, MonadPlus m) => (forall d. Data d => d -> m d) -> Character tag -> m (Character tag) gmapM :: (forall d. Data d => d -> m d) -> Character tag -> m (Character tag) $cgmapM :: forall tag (m :: * -> *). (Data tag, Monad m) => (forall d. Data d => d -> m d) -> Character tag -> m (Character tag) gmapQi :: Int -> (forall d. Data d => d -> u) -> Character tag -> u $cgmapQi :: forall tag u. Data tag => Int -> (forall d. Data d => d -> u) -> Character tag -> u gmapQ :: (forall d. Data d => d -> u) -> Character tag -> [u] $cgmapQ :: forall tag u. Data tag => (forall d. Data d => d -> u) -> Character tag -> [u] gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Character tag -> r $cgmapQr :: forall tag r r'. Data tag => (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Character tag -> r gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Character tag -> r $cgmapQl :: forall tag r r'. Data tag => (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Character tag -> r gmapT :: (forall b. Data b => b -> b) -> Character tag -> Character tag $cgmapT :: forall tag. Data tag => (forall b. Data b => b -> b) -> Character tag -> Character tag dataCast2 :: (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Character tag)) $cdataCast2 :: forall tag (t :: * -> * -> *) (c :: * -> *). (Data tag, Typeable t) => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Character tag)) dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c (Character tag)) $cdataCast1 :: forall tag (t :: * -> *) (c :: * -> *). (Data tag, Typeable t) => (forall d. Data d => c (t d)) -> Maybe (c (Character tag)) dataTypeOf :: Character tag -> DataType $cdataTypeOf :: forall tag. Data tag => Character tag -> DataType toConstr :: Character tag -> Constr $ctoConstr :: forall tag. Data tag => Character tag -> Constr gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Character tag) $cgunfold :: forall tag (c :: * -> *). Data tag => (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Character tag) gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Character tag -> c (Character tag) $cgfoldl :: forall tag (c :: * -> *). Data tag => (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Character tag -> c (Character tag) $cp1Data :: forall tag. Data tag => Typeable (Character tag) Data.Data, Character tag -> Character tag -> Bool (Character tag -> Character tag -> Bool) -> (Character tag -> Character tag -> Bool) -> Eq (Character tag) forall tag. Character tag -> Character tag -> Bool forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a /= :: Character tag -> Character tag -> Bool $c/= :: forall tag. Character tag -> Character tag -> Bool == :: Character tag -> Character tag -> Bool $c== :: forall tag. Character tag -> Character tag -> Bool Eq, Eq (Character tag) Eq (Character tag) -> (Character tag -> Character tag -> Ordering) -> (Character tag -> Character tag -> Bool) -> (Character tag -> Character tag -> Bool) -> (Character tag -> Character tag -> Bool) -> (Character tag -> Character tag -> Bool) -> (Character tag -> Character tag -> Character tag) -> (Character tag -> Character tag -> Character tag) -> Ord (Character tag) Character tag -> Character tag -> Bool Character tag -> Character tag -> Ordering Character tag -> Character tag -> Character tag forall tag. Eq (Character tag) 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 forall tag. Character tag -> Character tag -> Bool forall tag. Character tag -> Character tag -> Ordering forall tag. Character tag -> Character tag -> Character tag min :: Character tag -> Character tag -> Character tag $cmin :: forall tag. Character tag -> Character tag -> Character tag max :: Character tag -> Character tag -> Character tag $cmax :: forall tag. Character tag -> Character tag -> Character tag >= :: Character tag -> Character tag -> Bool $c>= :: forall tag. Character tag -> Character tag -> Bool > :: Character tag -> Character tag -> Bool $c> :: forall tag. Character tag -> Character tag -> Bool <= :: Character tag -> Character tag -> Bool $c<= :: forall tag. Character tag -> Character tag -> Bool < :: Character tag -> Character tag -> Bool $c< :: forall tag. Character tag -> Character tag -> Bool compare :: Character tag -> Character tag -> Ordering $ccompare :: forall tag. Character tag -> Character tag -> Ordering $cp1Ord :: forall tag. Eq (Character tag) Ord, Int -> Character tag -> ShowS [Character tag] -> ShowS Character tag -> String (Int -> Character tag -> ShowS) -> (Character tag -> String) -> ([Character tag] -> ShowS) -> Show (Character tag) forall tag. Int -> Character tag -> ShowS forall tag. [Character tag] -> ShowS forall tag. Character tag -> String forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a showList :: [Character tag] -> ShowS $cshowList :: forall tag. [Character tag] -> ShowS show :: Character tag -> String $cshow :: forall tag. Character tag -> String showsPrec :: Int -> Character tag -> ShowS $cshowsPrec :: forall tag. Int -> Character tag -> ShowS Show)