ghc-9.13: The GHC API
Safe HaskellNone
LanguageGHC2021

GHC.Data.Strict

Documentation

data Maybe a Source #

Constructors

Nothing 
Just !a 

Instances

Instances details
Alternative Maybe Source # 
Instance details

Defined in GHC.Data.Strict

Methods

empty :: Maybe a #

(<|>) :: Maybe a -> Maybe a -> Maybe a #

some :: Maybe a -> Maybe [a] #

many :: Maybe a -> Maybe [a] #

Applicative Maybe Source # 
Instance details

Defined in GHC.Data.Strict

Methods

pure :: a -> Maybe a #

(<*>) :: Maybe (a -> b) -> Maybe a -> Maybe b #

liftA2 :: (a -> b -> c) -> Maybe a -> Maybe b -> Maybe c #

(*>) :: Maybe a -> Maybe b -> Maybe b #

(<*) :: Maybe a -> Maybe b -> Maybe a #

Functor Maybe Source # 
Instance details

Defined in GHC.Data.Strict

Methods

fmap :: (a -> b) -> Maybe a -> Maybe b #

(<$) :: a -> Maybe b -> Maybe a #

Foldable Maybe Source # 
Instance details

Defined in GHC.Data.Strict

Methods

fold :: Monoid m => Maybe m -> m #

foldMap :: Monoid m => (a -> m) -> Maybe a -> m #

foldMap' :: Monoid m => (a -> m) -> Maybe a -> m #

foldr :: (a -> b -> b) -> b -> Maybe a -> b #

foldr' :: (a -> b -> b) -> b -> Maybe a -> b #

foldl :: (b -> a -> b) -> b -> Maybe a -> b #

foldl' :: (b -> a -> b) -> b -> Maybe a -> b #

foldr1 :: (a -> a -> a) -> Maybe a -> a #

foldl1 :: (a -> a -> a) -> Maybe a -> a #

toList :: Maybe a -> [a] #

null :: Maybe a -> Bool #

length :: Maybe a -> Int #

elem :: Eq a => a -> Maybe a -> Bool #

maximum :: Ord a => Maybe a -> a #

minimum :: Ord a => Maybe a -> a #

sum :: Num a => Maybe a -> a #

product :: Num a => Maybe a -> a #

Traversable Maybe Source # 
Instance details

Defined in GHC.Data.Strict

Methods

traverse :: Applicative f => (a -> f b) -> Maybe a -> f (Maybe b) #

sequenceA :: Applicative f => Maybe (f a) -> f (Maybe a) #

mapM :: Monad m => (a -> m b) -> Maybe a -> m (Maybe b) #

sequence :: Monad m => Maybe (m a) -> m (Maybe a) #

Binary a => Binary (Maybe a) Source # 
Instance details

Defined in GHC.Utils.Binary

Semigroup a => Monoid (Maybe a) Source # 
Instance details

Defined in GHC.Data.Strict

Methods

mempty :: Maybe a #

mappend :: Maybe a -> Maybe a -> Maybe a #

mconcat :: [Maybe a] -> Maybe a #

Semigroup a => Semigroup (Maybe a) Source # 
Instance details

Defined in GHC.Data.Strict

Methods

(<>) :: Maybe a -> Maybe a -> Maybe a #

sconcat :: NonEmpty (Maybe a) -> Maybe a #

stimes :: Integral b => b -> Maybe a -> Maybe a #

Data a => Data (Maybe a) Source # 
Instance details

Defined in GHC.Data.Strict

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Maybe a -> c (Maybe a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Maybe a) #

toConstr :: Maybe a -> Constr #

dataTypeOf :: Maybe a -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Maybe a)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Maybe a)) #

gmapT :: (forall b. Data b => b -> b) -> Maybe a -> Maybe a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Maybe a -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Maybe a -> r #

gmapQ :: (forall d. Data d => d -> u) -> Maybe a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Maybe a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Maybe a -> m (Maybe a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Maybe a -> m (Maybe a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Maybe a -> m (Maybe a) #

Show a => Show (Maybe a) Source # 
Instance details

Defined in GHC.Data.Strict

Methods

showsPrec :: Int -> Maybe a -> ShowS #

show :: Maybe a -> String #

showList :: [Maybe a] -> ShowS #

Eq a => Eq (Maybe a) Source # 
Instance details

Defined in GHC.Data.Strict

Methods

(==) :: Maybe a -> Maybe a -> Bool #

(/=) :: Maybe a -> Maybe a -> Bool #

Ord a => Ord (Maybe a) Source # 
Instance details

Defined in GHC.Data.Strict

Methods

compare :: Maybe a -> Maybe a -> Ordering #

(<) :: Maybe a -> Maybe a -> Bool #

(<=) :: Maybe a -> Maybe a -> Bool #

(>) :: Maybe a -> Maybe a -> Bool #

(>=) :: Maybe a -> Maybe a -> Bool #

max :: Maybe a -> Maybe a -> Maybe a #

min :: Maybe a -> Maybe a -> Maybe a #

fromMaybe :: a -> Maybe a -> a Source #

maybe :: b -> (a -> b) -> Maybe a -> b Source #

data Pair a b Source #

Constructors

!a `And` !b 

Instances

Instances details
Functor (Pair a) Source # 
Instance details

Defined in GHC.Data.Strict

Methods

fmap :: (a0 -> b) -> Pair a a0 -> Pair a b #

(<$) :: a0 -> Pair a b -> Pair a a0 #

Foldable (Pair a) Source # 
Instance details

Defined in GHC.Data.Strict

Methods

fold :: Monoid m => Pair a m -> m #

foldMap :: Monoid m => (a0 -> m) -> Pair a a0 -> m #

foldMap' :: Monoid m => (a0 -> m) -> Pair a a0 -> m #

foldr :: (a0 -> b -> b) -> b -> Pair a a0 -> b #

foldr' :: (a0 -> b -> b) -> b -> Pair a a0 -> b #

foldl :: (b -> a0 -> b) -> b -> Pair a a0 -> b #

foldl' :: (b -> a0 -> b) -> b -> Pair a a0 -> b #

foldr1 :: (a0 -> a0 -> a0) -> Pair a a0 -> a0 #

foldl1 :: (a0 -> a0 -> a0) -> Pair a a0 -> a0 #

toList :: Pair a a0 -> [a0] #

null :: Pair a a0 -> Bool #

length :: Pair a a0 -> Int #

elem :: Eq a0 => a0 -> Pair a a0 -> Bool #

maximum :: Ord a0 => Pair a a0 -> a0 #

minimum :: Ord a0 => Pair a a0 -> a0 #

sum :: Num a0 => Pair a a0 -> a0 #

product :: Num a0 => Pair a a0 -> a0 #

Traversable (Pair a) Source # 
Instance details

Defined in GHC.Data.Strict

Methods

traverse :: Applicative f => (a0 -> f b) -> Pair a a0 -> f (Pair a b) #

sequenceA :: Applicative f => Pair a (f a0) -> f (Pair a a0) #

mapM :: Monad m => (a0 -> m b) -> Pair a a0 -> m (Pair a b) #

sequence :: Monad m => Pair a (m a0) -> m (Pair a a0) #

(Data a, Data b) => Data (Pair a b) Source # 
Instance details

Defined in GHC.Data.Strict

Methods

gfoldl :: (forall d b0. Data d => c (d -> b0) -> d -> c b0) -> (forall g. g -> c g) -> Pair a b -> c (Pair a b) #

gunfold :: (forall b0 r. Data b0 => c (b0 -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Pair a b) #

toConstr :: Pair a b -> Constr #

dataTypeOf :: Pair a b -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Pair a b)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Pair a b)) #

gmapT :: (forall b0. Data b0 => b0 -> b0) -> Pair a b -> Pair a b #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Pair a b -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Pair a b -> r #

gmapQ :: (forall d. Data d => d -> u) -> Pair a b -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Pair a b -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Pair a b -> m (Pair a b) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Pair a b -> m (Pair a b) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Pair a b -> m (Pair a b) #

(Show a, Show b) => Show (Pair a b) Source # 
Instance details

Defined in GHC.Data.Strict

Methods

showsPrec :: Int -> Pair a b -> ShowS #

show :: Pair a b -> String #

showList :: [Pair a b] -> ShowS #

(Eq a, Eq b) => Eq (Pair a b) Source # 
Instance details

Defined in GHC.Data.Strict

Methods

(==) :: Pair a b -> Pair a b -> Bool #

(/=) :: Pair a b -> Pair a b -> Bool #

(Ord a, Ord b) => Ord (Pair a b) Source # 
Instance details

Defined in GHC.Data.Strict

Methods

compare :: Pair a b -> Pair a b -> Ordering #

(<) :: Pair a b -> Pair a b -> Bool #

(<=) :: Pair a b -> Pair a b -> Bool #

(>) :: Pair a b -> Pair a b -> Bool #

(>=) :: Pair a b -> Pair a b -> Bool #

max :: Pair a b -> Pair a b -> Pair a b #

min :: Pair a b -> Pair a b -> Pair a b #