GHC.Data.Strict

ghc-9.10.0.20240328: The GHC API

Safe Haskell | None
Language | GHC2021

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 Methods put_ :: BinHandle -> Maybe a -> IO () Source # put :: BinHandle -> Maybe a -> IO (Bin (Maybe a)) Source # get :: BinHandle -> IO (Maybe a) Source #
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 #

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 #