Data.Monoid
| Авторские права | (c) Andy Gill 2001 (c) Oregon Graduate Institute of Science and Technology 2001 |
|---|---|
| Лицензия | в стиле BSD (см. файл libraries/base/LICENSE) |
| Сопровождающий | libraries@haskell.org |
| Стабильность | стабильный |
| Переносимость | переносимый |
| Безопасный Haskell | Безопасный |
| Язык | Haskell2010 |
Описание
Тип a является Monoid, если он предоставляет ассоциативную функцию (<>), позволяющую объединить любые два значения типа a в одно, а также нейтральный элемент (mempty), такой что
a <> mempty == mempty <> a == a
Monoid — это Semigroup с дополнительным требованием наличия нейтрального элемента. Таким образом, любой Monoid является Semigroup, но не наоборот.
Примеры
Моноид Sum определяется оператором сложения чисел и `0` в качестве нейтрального элемента:
>>> import Data.Int
>>> mempty :: Sum Int
Sum {getSum = 0}
>>> Sum 1 <> Sum 2 <> Sum 3 <> Sum 4 :: Sum Int
Sum {getSum = 10}
С помощью функции mconcat можно объединить несколько значений списка в одно значение. Обратите внимание, что здесь необходимо указать тип, поскольку Int является моноидом относительно нескольких различных операций:
>>> mconcat [1,2,3,4] :: Sum Int
Sum {getSum = 10}
>>> mconcat [] :: Sum Int
Sum {getSum = 0}
Другим допустимым экземпляром моноида для Int является Product. Он определяется умножением и `1` в качестве нейтрального элемента:
>>> Product 1 <> Product 2 <> Product 3 <> Product 4 :: Product Int
Product {getProduct = 24}
>>> mconcat [1,2,3,4] :: Product Int
Product {getProduct = 24}
>>> mconcat [] :: Product Int
Product {getProduct = 1}
Класс типов Monoid
class Semigroup a => Monoid a where Исходный код
Класс моноидов (типов с ассоциативной бинарной операцией, имеющей нейтральный элемент). Экземпляры должны удовлетворять следующим законам:
- Правый нейтральный элемент
x <> mempty = x- Левый нейтральный элемент
mempty <> x = x- Ассоциативность
-
x <> (y <> z) = (x <> y) <> z(законSemigroup) - Конкатенация
mconcat = foldr (<>) mempty
Вместо mempty можно определить mconcat; в этом случае действуют следующие законы:
- Единица
mconcat (pure x) = x- Умножение
mconcat (join xss) = mconcat (fmap mconcat xss)- Подкласс
mconcat (toList xs) = sconcat xs
Названия методов отсылают к моноиду списков с конкатенацией, однако существует множество других экземпляров.
Некоторые типы можно рассматривать как моноид несколькими способами, например, используя сложение и умножение чисел. В таких случаях мы часто определяем newtypeы и делаем их экземплярами Monoid, например Sum и Product.
ПРИМЕЧАНИЕ: Semigroup является суперклассом Monoid начиная с base-4.11.0.0.
Методы
mempty :: a Исходный код
Нейтральный элемент для mappend
Примеры
>>> "Hello world" <> mempty "Hello world"
>>> mempty <> [1, 2, 3] [1,2,3]
mappend :: a -> a -> a Исходный код
Ассоциативная операция
ПРИМЕЧАНИЕ: Этот метод избыточен и начиная с base-4.11.0.0 имеет реализацию по умолчанию mappend = (<>). Если метод реализуется вручную, поскольку mappend является синонимом (<>), ожидается, что обе функции будут определены одинаково. В одном из будущих выпусков GHC mappend будет удалён из Monoid.
mconcat :: [a] -> a Исходный код
Свёртка списка с использованием моноида.
Для большинства типов будет использоваться определение mconcat по умолчанию, однако эта функция включена в определение класса, чтобы для конкретных типов можно было предоставить оптимизированную версию.
>>> mconcat ["Hello", " ", "Haskell", "!"] "Hello Haskell!"
Экземпляры
| Monoid ByteArray Источник | Начиная с: base-4.17.0.0 |
| Monoid All Источник | Начиная с: base-2.1 |
| Monoid Any Источник | Начиная с: base-2.1 |
| Monoid Event Источник | Начиная с: base-4.4.0.0 |
| Monoid EventLifetime Источник | Начиная с: base-4.8.0.0 |
| Monoid Lifetime Источник |
Начиная с: base-4.8.0.0 |
| Monoid ExceptionContext Источник | |
Определён в GHC.Internal.Exception.Context Методыmempty :: ExceptionContext Источник mappend :: ExceptionContext -> ExceptionContext -> ExceptionContext Источник | |
| Monoid Ordering Источник | Начиная с: base-2.1 |
| Monoid () Источник | Начиная с: base-2.1 |
| Monoid (Comparison a) Источник |
mempty :: Comparison a mempty = Comparison _ _ -> EQ |
Определён в Data.Functor.Contravariant Методыmempty :: Comparison a Источник mappend :: Comparison a -> Comparison a -> Comparison a Источник mconcat :: [Comparison a] -> Comparison a Источник | |
| Monoid (Equivalence a) Источник |
mempty :: Equivalence a mempty = Equivalence _ _ -> True |
Определён в Data.Functor.Contravariant Методыmempty :: Equivalence a Источник mappend :: Equivalence a -> Equivalence a -> Equivalence a Источник mconcat :: [Equivalence a] -> Equivalence a Источник | |
| Monoid (Predicate a) Источник |
mempty :: Predicate a mempty = _ -> True |
| (Ord a, Bounded a) => Monoid (Max a) Источник | Начиная с: base-4.9.0.0 |
| (Ord a, Bounded a) => Monoid (Min a) Источник | Начиная с: base-4.9.0.0 |
| Monoid m => Monoid (WrappedMonoid m) Источник | Начиная с: base-4.9.0.0 |
Определён в Data.Semigroup Методыmempty :: WrappedMonoid m Источник mappend :: WrappedMonoid m -> WrappedMonoid m -> WrappedMonoid m Источник mconcat :: [WrappedMonoid m] -> WrappedMonoid m Источник | |
| Monoid a => Monoid (STM a) Источник | Начиная с: base-4.17.0.0 |
| FiniteBits a => Monoid (And a) Источник |
Это ограничение можно считать излишне строгим. Однако, поскольку для некоторых типов (например, Начиная с: base-4.16 |
Определён в GHC.Internal.TH.Syntax Методыmempty :: Q a Исходный код mappend :: Q a -> Q a -> Q a Исходный код mconcat :: [Q a] -> Q a Исходный код | |
| Monoid a => Monoid (IO a) Исходный код | Начиная с: base-4.9.0.0 |
Определён в GHC.Internal.Base Методыmempty :: IO a Исходный код mappend :: IO a -> IO a -> IO a Исходный код mconcat :: [IO a] -> IO a Исходный код | |
| Semigroup a => Monoid (Maybe a) Исходный код |
Поднимите полугруппу в Начиная с 4.11.0: ограничение на внутреннее значение Начиная с: base-2.1 |
Определён в GHC.Internal.Base Методыmempty :: Maybe a Исходный код mappend :: Maybe a -> Maybe a -> Maybe a Исходный код mconcat :: [Maybe a] -> Maybe a Исходный код | |
| Monoid a => Monoid (Solo a) Исходный код | Начиная с: base-4.15 |
Определён в GHC.Internal.Base Методыmempty :: Solo a Исходный код mappend :: Solo a -> Solo a -> Solo a Исходный код mconcat :: [Solo a] -> Solo a Исходный код | |
| Monoid [a] Исходный код | Начиная с: base-2.1 |
Определён в GHC.Internal.Base Методыmempty :: [a] Исходный код mappend :: [a] -> [a] -> [a] Исходный код mconcat :: [[a]] -> [a] Исходный код | |
| Monoid a => Monoid (Op a b) Исходный код |
mempty :: Op a b mempty = Op _ -> mempty |
Определён в Data.Functor.Contravariant Методыmempty :: Op a b Исходный код mappend :: Op a b -> Op a b -> Op a b Исходный код mconcat :: [Op a b] -> Op a b Исходный код | |
| Monoid (Proxy s) Исходный код | Начиная с: base-4.7.0.0 |
Определён в GHC.Internal.Data.Proxy Методыmempty :: Proxy s Исходный код mappend :: Proxy s -> Proxy s -> Proxy s Исходный код mconcat :: [Proxy s] -> Proxy s Исходный код | |
| Monoid (U1 p) Исходный код | Начиная с: base-4.12.0.0 |
Определён в GHC.Internal.Generics Методыmempty :: U1 p Исходный код mappend :: U1 p -> U1 p -> U1 p Исходный код mconcat :: [U1 p] -> U1 p Исходный код | |
| Monoid a => Monoid (ST s a) Исходный код | Начиная с: base-4.11.0.0 |
Определён в GHC.Internal.ST Методыmempty :: ST s a Исходный код mappend :: ST s a -> ST s a -> ST s a Исходный код mconcat :: [ST s a] -> ST s a Исходный код | |
| (Monoid a, Monoid b) => Monoid (a, b) Исходный код | Начиная с: base-2.1 |
Определён в GHC.Internal.Base Методыmempty :: (a, b) Исходный код mappend :: (a, b) -> (a, b) -> (a, b) Исходный код mconcat :: [(a, b)] -> (a, b) Исходный код | |
| Monoid b => Monoid (a -> b) Исходный код | Начиная с: base-2.1 |
Определён в GHC.Internal.Base Методыmempty :: a -> b Исходный код mappend :: (a -> b) -> (a -> b) -> a -> b Исходный код mconcat :: [a -> b] -> a -> b Исходный код | |
| Monoid a => Monoid (Const a b) Исходный код | Начиная с: base-4.9.0.0 |
Определён в GHC.Internal.Data.Functor.Const Методыmempty :: Const a b Исходный код mappend :: Const a b -> Const a b -> Const a b Исходный код mconcat :: [Const a b] -> Const a b Исходный код | |
| (Applicative f, Monoid a) => Monoid (Ap f a) Исходный код | Начиная с: base-4.12.0.0 |
Определён в GHC.Internal.Data.Monoid Методыmempty :: Ap f a Исходный код mappend :: Ap f a -> Ap f a -> Ap f a Исходный код mconcat :: [Ap f a] -> Ap f a Исходный код | |
| Alternative f => Monoid (Alt f a) Исходный код | Начиная с: base-4.8.0.0 |
Определён в GHC.Internal.Data.Semigroup.Internal Методыmempty :: Alt f a Исходный код mappend :: Alt f a -> Alt f a -> Alt f a Исходный код mconcat :: [Alt f a] -> Alt f a Исходный код | |
| Monoid (f p) => Monoid (Rec1 f p) Исходный код | Начиная с: base-4.12.0.0 |
Определён в GHC.Internal.Generics Методыmempty :: Rec1 f p Исходный код mappend :: Rec1 f p -> Rec1 f p -> Rec1 f p Исходный код mconcat :: [Rec1 f p] -> Rec1 f p Исходный код | |
| (Monoid a, Monoid b, Monoid c) => Monoid (a, b, c) Исходный код | Начиная с: base-2.1 |
Определён в GHC.Internal.Base Методыmempty :: (a, b, c) Исходный код mappend :: (a, b, c) -> (a, b, c) -> (a, b, c) Исходный код mconcat :: [(a, b, c)] -> (a, b, c) Исходный код | |
| (Monoid (f a), Monoid (g a)) => Monoid (Product f g a) Исходный код | Начиная с: base-4.16.0.0 |
Определён в Data.Functor.Product Методыmempty :: Product f g a Исходный код mappend :: Product f g a -> Product f g a -> Product f g a Исходный код mconcat :: [Product f g a] -> Product f g a Исходный код | |
| (Monoid (f p), Monoid (g p)) => Monoid ((f :*: g) p) Источник | Начиная с: base-4.12.0.0 |
| Monoid c => Monoid (K1 i c p) Источник | Начиная с: base-4.12.0.0 |
| (Monoid a, Monoid b, Monoid c, Monoid d) => Monoid (a, b, c, d) Источник | Начиная с: base-2.1 |
| Monoid (f (g a)) => Monoid (Compose f g a) Источник | Начиная с: base-4.16.0.0 |
| Monoid (f (g p)) => Monoid ((f :.: g) p) Источник | Начиная с: base-4.12.0.0 |
| Monoid (f p) => Monoid (M1 i c f p) Источник | Начиная с: base-4.12.0.0 |
| (Monoid a, Monoid b, Monoid c, Monoid d, Monoid e) => Monoid (a, b, c, d, e) Источник | Начиная с: base-2.1 |
(<>) :: Semigroup a => a -> a -> a infixr 6 Источник
Ассоциативная операция.
Примеры
>>> [1,2,3] <> [4,5,6] [1,2,3,4,5,6]
>>> Just [1, 2, 3] <> Just [4, 5, 6] Just [1,2,3,4,5,6]
>>> putStr "Hello, " <> putStrLn "World!" Hello, World!
Двойственный объект к Monoid, полученный перестановкой аргументов (<>).
Dual a <> Dual b == Dual (b <> a)
Примеры
>>> Dual "Hello" <> Dual "World"
Dual {getDual = "WorldHello"}
>>> Dual (Dual "Hello") <> Dual (Dual "World")
Dual {getDual = Dual {getDual = "HelloWorld"}}
Экземпляры
| Ord a => Ord (Dual a) Источник | Начиная с: base-2.1 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal | |||||
| Data a => Data (Dual a) Источник | Начиная с: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Data Методыgfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Dual a -> c (Dual a) Источник gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Dual a) Источник toConstr :: Dual a -> Constr Источник dataTypeOf :: Dual a -> DataType Источник dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Dual a)) Источник dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Dual a)) Источник gmapT :: (forall b. Data b => b -> b) -> Dual a -> Dual a Источник gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Dual a -> r Источник gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Dual a -> r Источник gmapQ :: (forall d. Data d => d -> u) -> Dual a -> [u] Источник gmapQi :: Int -> (forall d. Data d => d -> u) -> Dual a -> u Источник gmapM :: Monad m => (forall d. Data d => d -> m d) -> Dual a -> m (Dual a) Источник gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Dual a -> m (Dual a) Источник gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Dual a -> m (Dual a) Источник | |||||
| Bounded a => Bounded (Dual a) Источник | Начиная с: base-2.1 |
||||
| Generic (Dual a) Источник | |||||
Определено в GHC.Internal.Data.Semigroup.Internal Связанные типы
| |||||
| Read a => Read (Dual a) Источник | Начиная с: base-2.1 |
||||
| Show a => Show (Dual a) Источник | Начиная с: base-2.1 |
||||
| type Rep1 Dual Источник | Начиная с: base-4.7.0.0 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal | |||||
| type Rep (Dual a) Источник | Начиная с: base-4.7.0.0 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal | |||||
Моноид эндоморфизмов относительно композиции.
Endo f <> Endo g == Endo (f . g)
Примеры
>>> let computation = Endo ("Hello, " ++) <> Endo (++ "!")
>>> appEndo computation "Haskell"
"Hello, Haskell!"
>>> let computation = Endo (*3) <> Endo (+1) >>> appEndo computation 1 6
Экземпляры
| Monoid (Endo a) Исходный код | С версии: base-2.1 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal Методыmempty :: Endo a Исходный код mappend :: Endo a -> Endo a -> Endo a Исходный код mconcat :: [Endo a] -> Endo a Исходный код | |||||
| Semigroup (Endo a) Исходный код | С версии: base-4.9.0.0 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal Методы(<>) :: Endo a -> Endo a -> Endo a Исходный код sconcat :: NonEmpty (Endo a) -> Endo a Исходный код stimes :: Integral b => b -> Endo a -> Endo a Исходный код | |||||
| Generic (Endo a) Исходный код | |||||
Определено в GHC.Internal.Data.Semigroup.Internal Ассоциированные типы
| |||||
| type Rep (Endo a) Исходный код | С версии: base-4.7.0.0 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal | |||||
Обёртки для Bool
newtype All Исходный код
Булев моноид относительно конъюнкции (&&).
All x <> All y = All (x && y)
Примеры
>>> All True <> mempty <> All False)
All {getAll = False}
>>> mconcat (map (\x -> All (even x)) [2,4,6,7,8])
All {getAll = False}
>>> All True <> mempty
All {getAll = True}
Экземпляры
| Monoid All Источник | Начиная с: base-2.1 |
||||
| Semigroup All Источник | Начиная с: base-4.9.0.0 |
||||
| Eq All Источник | Начиная с: base-2.1 |
||||
| Ord All Источник | Начиная с: base-2.1 |
||||
Определён в GHC.Internal.Data.Semigroup.Internal | |||||
| Data All Источник | Начиная с: base-4.8.0.0 |
||||
Определён в GHC.Internal.Data.Data Методыgfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> All -> c All Источник gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c All Источник toConstr :: All -> Constr Источник dataTypeOf :: All -> DataType Источник dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c All) Источник dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c All) Источник gmapT :: (forall b. Data b => b -> b) -> All -> All Источник gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> All -> r Источник gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> All -> r Источник gmapQ :: (forall d. Data d => d -> u) -> All -> [u] Источник gmapQi :: Int -> (forall d. Data d => d -> u) -> All -> u Источник gmapM :: Monad m => (forall d. Data d => d -> m d) -> All -> m All Источник gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> All -> m All Источник gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> All -> m All Источник | |||||
| Bounded All Источник | Начиная с: base-2.1 |
||||
| Generic All Источник | |||||
Определён в GHC.Internal.Data.Semigroup.Internal Ассоциированные типы
| |||||
| Read All Источник | Начиная с: base-2.1 |
||||
| Show All Источник | Начиная с: base-2.1 |
||||
| type Rep All Источник | Начиная с: base-4.7.0.0 |
||||
Определён в GHC.Internal.Data.Semigroup.Internal | |||||
Булев моноид относительно дизъюнкции (||).
Any x <> Any y = Any (x || y)
Примеры
>>> Any True <> mempty <> Any False
Any {getAny = True}
>>> mconcat (map (\x -> Any (even x)) [2,4,6,7,8])
Any {getAny = True}
>>> Any False <> mempty
Any {getAny = False}
Экземпляры
| Monoid Any Источник | Начиная с: base-2.1 |
||||
| Semigroup Any Источник | Начиная с: base-4.9.0.0 |
||||
| Eq Any Источник | Начиная с: base-2.1 |
||||
| Ord Any Источник | Начиная с: base-2.1 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal | |||||
| Data Any Источник | Начиная с: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Data Методыgfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Any -> c Any Источник gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Any Источник toConstr :: Any -> Constr Источник dataTypeOf :: Any -> DataType Источник dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Any) Источник dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Any) Источник gmapT :: (forall b. Data b => b -> b) -> Any -> Any Источник gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Any -> r Источник gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Any -> r Источник gmapQ :: (forall d. Data d => d -> u) -> Any -> [u] Источник gmapQi :: Int -> (forall d. Data d => d -> u) -> Any -> u Источник gmapM :: Monad m => (forall d. Data d => d -> m d) -> Any -> m Any Источник gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Any -> m Any Источник gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Any -> m Any Источник | |||||
| Bounded Any Источник | Начиная с: base-2.1 |
||||
| Generic Any Источник | |||||
Определено в GHC.Internal.Data.Semigroup.Internal Связанные типы
| |||||
| Read Any Источник | Начиная с: base-2.1 |
||||
| Show Any Источник | Начиная с: base-2.1 |
||||
| type Rep Any Источник | Начиная с: base-4.7.0.0 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal | |||||
Обёртки Num
Моноид относительно сложения.
Sum a <> Sum b = Sum (a + b)
Примеры
>>> Sum 1 <> Sum 2 <> mempty
Sum {getSum = 3}
>>> mconcat [ Sum n | n <- [3 .. 9]]
Sum {getSum = 42}
Экземпляры
| Foldable1 Sum Исходный код | С версии: base-4.18.0.0 |
||||
Определено в Data.Foldable1 Методыfold1 :: Semigroup m => Sum m -> m Исходный код foldMap1 :: Semigroup m => (a -> m) -> Sum a -> m Исходный код foldMap1' :: Semigroup m => (a -> m) -> Sum a -> m Исходный код toNonEmpty :: Sum a -> NonEmpty a Исходный код maximum :: Ord a => Sum a -> a Исходный код minimum :: Ord a => Sum a -> a Исходный код head :: Sum a -> a Исходный код last :: Sum a -> a Исходный код foldrMap1 :: (a -> b) -> (a -> b -> b) -> Sum a -> b Исходный код foldlMap1' :: (a -> b) -> (b -> a -> b) -> Sum a -> b Исходный код foldlMap1 :: (a -> b) -> (b -> a -> b) -> Sum a -> b Исходный код foldrMap1' :: (a -> b) -> (a -> b -> b) -> Sum a -> b Исходный код | |||||
| Applicative Sum Исходный код | С версии: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal Методыpure :: a -> Sum a Исходный код (<*>) :: Sum (a -> b) -> Sum a -> Sum b Исходный код liftA2 :: (a -> b -> c) -> Sum a -> Sum b -> Sum c Исходный код (*>) :: Sum a -> Sum b -> Sum b Исходный код (<*) :: Sum a -> Sum b -> Sum a Исходный код | |||||
| Functor Sum Исходный код | С версии: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal | |||||
| Monad Sum Исходный код | С версии: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal Методы(>>=) :: Sum a -> (a -> Sum b) -> Sum b Исходный код (>>) :: Sum a -> Sum b -> Sum b Исходный код return :: a -> Sum a Исходный код | |||||
| MonadFix Sum Исходный код | С версии: base-4.8.0.0 |
||||
Определено в GHC.Internal.Control.Monad.Fix Методыmfix :: (a -> Sum a) -> Sum a Исходный код | |||||
| MonadZip Sum Исходный код | С версии: ghc-internal-4.8.0.0 |
||||
Определено в GHC.Internal.Control.Monad.Zip Методыmzip :: Sum a -> Sum b -> Sum (a, b) Исходный код mzipWith :: (a -> b -> c) -> Sum a -> Sum b -> Sum c Исходный код munzip :: Sum (a, b) -> (Sum a, Sum b) Исходный код | |||||
| Foldable Sum Исходный код | С версии: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Foldable Методыfold :: Monoid m => Sum m -> m Исходный код foldMap :: Monoid m => (a -> m) -> Sum a -> m Исходный код foldMap' :: Monoid m => (a -> m) -> Sum a -> m Исходный код foldr :: (a -> b -> b) -> b -> Sum a -> b Исходный код foldr' :: (a -> b -> b) -> b -> Sum a -> b Исходный код foldl :: (b -> a -> b) -> b -> Sum a -> b Исходный код foldl' :: (b -> a -> b) -> b -> Sum a -> b Исходный код foldr1 :: (a -> a -> a) -> Sum a -> a Исходный код foldl1 :: (a -> a -> a) -> Sum a -> a Исходный код toList :: Sum a -> [a] Исходный код null :: Sum a -> Bool Исходный код length :: Sum a -> Int Исходный код elem :: Eq a => a -> Sum a -> Bool Исходный код maximum :: Ord a => Sum a -> a Исходный код minimum :: Ord a => Sum a -> a Исходный код sum :: Num a => Sum a -> a Исходный код product :: Num a => Sum a -> a Исходный код | |||||
| Traversable Sum Исходный код | С версии: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Traversable Методыtraverse :: Applicative f => (a -> f b) -> Sum a -> f (Sum b) Исходный код sequenceA :: Applicative f => Sum (f a) -> f (Sum a) Исходный код mapM :: Monad m => (a -> m b) -> Sum a -> m (Sum b) Исходный код sequence :: Monad m => Sum (m a) -> m (Sum a) Исходный код | |||||
| Generic1 Sum Исходный код | |||||
Определено в GHC.Internal.Data.Semigroup.Internal Связанные типы
| |||||
| Num a => Monoid (Sum a) Исходный код | С версии: base-2.1 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal Методыmempty :: Sum a Исходный код mappend :: Sum a -> Sum a -> Sum a Исходный код mconcat :: [Sum a] -> Sum a Исходный код | |||||
| Num a => Semigroup (Sum a) Исходный код | С версии: base-4.9.0.0 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal Методы(<>) :: Sum a -> Sum a -> Sum a Исходный код sconcat :: NonEmpty (Sum a) -> Sum a Исходный код stimes :: Integral b => b -> Sum a -> Sum a Исходный код | |||||
| Eq a => Eq (Sum a) Исходный код | С версии: base-2.1 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal | |||||
| Ord a => Ord (Sum a) Исходный код | С версии: base-2.1 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal Методыcompare :: Sum a -> Sum a -> Ordering Исходный код (<) :: Sum a -> Sum a -> Bool Исходный код (<=) :: Sum a -> Sum a -> Bool Исходный код (>) :: Sum a -> Sum a -> Bool Исходный код (>=) :: Sum a -> Sum a -> Bool Исходный код max :: Sum a -> Sum a -> Sum a Исходный код min :: Sum a -> Sum a -> Sum a Исходный код | |||||
| Data a => Data (Sum a) Исходный код | С версии: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Data Методыgfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Sum a -> c (Sum a) Исходный код gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Sum a) Исходный код toConstr :: Sum a -> Constr Исходный код dataTypeOf :: Sum a -> DataType Исходный код dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Sum a)) Исходный код dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Sum a)) Исходный код gmapT :: (forall b. Data b => b -> b) -> Sum a -> Sum a Исходный код gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Sum a -> r Исходный код gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Sum a -> r Исходный код gmapQ :: (forall d. Data d => d -> u) -> Sum a -> [u] Исходный код gmapQi :: Int -> (forall d. Data d => d -> u) -> Sum a -> u Исходный код gmapM :: Monad m => (forall d. Data d => d -> m d) -> Sum a -> m (Sum a) Исходный код gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Sum a -> m (Sum a) Исходный код gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Sum a -> m (Sum a) Исходный код | |||||
| Bounded a => Bounded (Sum a) Исходный код | С версии: base-2.1 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal | |||||
| Generic (Sum a) Исходный код | |||||
Определено в GHC.Internal.Data.Semigroup.Internal Связанные типы
| |||||
| Num a => Num (Sum a) Исходный код | С версии: base-4.7.0.0 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal Методы(+) :: Sum a -> Sum a -> Sum a Исходный код (-) :: Sum a -> Sum a -> Sum a Исходный код (*) :: Sum a -> Sum a -> Sum a Исходный код negate :: Sum a -> Sum a Исходный код abs :: Sum a -> Sum a Исходный код signum :: Sum a -> Sum a Исходный код fromInteger :: Integer -> Sum a Исходный код | |||||
| Read a => Read (Sum a) Исходный код | С версии: base-2.1 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal МетодыreadsPrec :: Int -> ReadS (Sum a) Исходный код readList :: ReadS [Sum a] Исходный код readPrec :: ReadPrec (Sum a) Исходный код readListPrec :: ReadPrec [Sum a] Исходный код | |||||
| Show a => Show (Sum a) Исходный код | С версии: base-2.1 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal МетодыshowsPrec :: Int -> Sum a -> ShowS Исходный код show :: Sum a -> String Исходный код showList :: [Sum a] -> ShowS Исходный код | |||||
| type Rep1 Sum Исходный код | С версии: base-4.7.0.0 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal | |||||
| type Rep (Sum a) Исходный код | С версии: base-4.7.0.0 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal | |||||
newtype Product a Исходный код
Моноид относительно умножения.
Product x <> Product y == Product (x * y)
Примеры
>>> Product 3 <> Product 4 <> mempty
Product {getProduct = 12}
>>> mconcat [ Product n | n <- [2 .. 10]]
Product {getProduct = 3628800}
Конструкторы
| Product | |
Поля
| |
Экземпляры
| Foldable1 Product Источник | С версии: base-4.18.0.0 |
||||
Определено в Data.Foldable1 Методыfold1 :: Semigroup m => Product m -> m Источник foldMap1 :: Semigroup m => (a -> m) -> Product a -> m Источник foldMap1' :: Semigroup m => (a -> m) -> Product a -> m Источник toNonEmpty :: Product a -> NonEmpty a Источник maximum :: Ord a => Product a -> a Источник minimum :: Ord a => Product a -> a Источник head :: Product a -> a Источник last :: Product a -> a Источник foldrMap1 :: (a -> b) -> (a -> b -> b) -> Product a -> b Источник foldlMap1' :: (a -> b) -> (b -> a -> b) -> Product a -> b Источник foldlMap1 :: (a -> b) -> (b -> a -> b) -> Product a -> b Источник foldrMap1' :: (a -> b) -> (a -> b -> b) -> Product a -> b Источник | |||||
| Applicative Product Источник | С версии: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal | |||||
| Functor Product Источник | С версии: base-4.8.0.0 |
||||
| Monad Product Источник | С версии: base-4.8.0.0 |
||||
| MonadFix Product Источник | С версии: base-4.8.0.0 |
||||
Определено в GHC.Internal.Control.Monad.Fix | |||||
| MonadZip Product Источник | С версии: ghc-internal-4.8.0.0 |
||||
| Foldable Product Источник | С версии: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Foldable Методыfold :: Monoid m => Product m -> m Источник foldMap :: Monoid m => (a -> m) -> Product a -> m Источник foldMap' :: Monoid m => (a -> m) -> Product a -> m Источник foldr :: (a -> b -> b) -> b -> Product a -> b Источник foldr' :: (a -> b -> b) -> b -> Product a -> b Источник foldl :: (b -> a -> b) -> b -> Product a -> b Источник foldl' :: (b -> a -> b) -> b -> Product a -> b Источник foldr1 :: (a -> a -> a) -> Product a -> a Источник foldl1 :: (a -> a -> a) -> Product a -> a Источник toList :: Product a -> [a] Источник null :: Product a -> Bool Источник length :: Product a -> Int Источник elem :: Eq a => a -> Product a -> Bool Источник maximum :: Ord a => Product a -> a Источник minimum :: Ord a => Product a -> a Источник | |||||
| Traversable Product Источник | С версии: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Traversable | |||||
| Generic1 Product Источник | |||||
Определено в GHC.Internal.Data.Semigroup.Internal Связанные типы
| |||||
| Num a => Monoid (Product a) Источник | С версии: base-2.1 |
||||
| Num a => Semigroup (Product a) Источник | С версии: base-4.9.0.0 |
||||
| Eq a => Eq (Product a) Источник | С версии: base-2.1 |
||||
| Ord a => Ord (Product a) Источник | Начиная с: base-2.1 |
||||
Определён в GHC.Internal.Data.Semigroup.Internal Методыcompare :: Product a -> Product a -> Ordering Источник (<) :: Product a -> Product a -> Bool Источник (<=) :: Product a -> Product a -> Bool Источник (>) :: Product a -> Product a -> Bool Источник (>=) :: Product a -> Product a -> Bool Источник | |||||
| Data a => Data (Product a) Источник | Начиная с: base-4.8.0.0 |
||||
Определён в GHC.Internal.Data.Data Методыgfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Product a -> c (Product a) Источник gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Product a) Источник toConstr :: Product a -> Constr Источник dataTypeOf :: Product a -> DataType Источник dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Product a)) Источник dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Product a)) Источник gmapT :: (forall b. Data b => b -> b) -> Product a -> Product a Источник gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Product a -> r Источник gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Product a -> r Источник gmapQ :: (forall d. Data d => d -> u) -> Product a -> [u] Источник gmapQi :: Int -> (forall d. Data d => d -> u) -> Product a -> u Источник gmapM :: Monad m => (forall d. Data d => d -> m d) -> Product a -> m (Product a) Источник gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Product a -> m (Product a) Источник gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Product a -> m (Product a) Источник | |||||
| Bounded a => Bounded (Product a) Источник | Начиная с: base-2.1 |
||||
| Generic (Product a) Источник | |||||
Определён в GHC.Internal.Data.Semigroup.Internal Ассоциированные типы
| |||||
| Num a => Num (Product a) Источник | Начиная с: base-4.7.0.0 |
||||
Определён в GHC.Internal.Data.Semigroup.Internal Методы(+) :: Product a -> Product a -> Product a Источник (-) :: Product a -> Product a -> Product a Источник (*) :: Product a -> Product a -> Product a Источник negate :: Product a -> Product a Источник abs :: Product a -> Product a Источник signum :: Product a -> Product a Источник fromInteger :: Integer -> Product a Источник | |||||
| Read a => Read (Product a) Источник | Начиная с: base-2.1 |
||||
| Show a => Show (Product a) Источник | Начиная с: base-2.1 |
||||
| type Rep1 Product Источник | Начиная с: base-4.7.0.0 |
||||
Определён в GHC.Internal.Data.Semigroup.Internal | |||||
| type Rep (Product a) Источник | Начиная с: base-4.7.0.0 |
||||
Определён в GHC.Internal.Data.Semigroup.Internal | |||||
Обёртки Maybe
Моноид Maybe, возвращающий крайнее слева значение, отличное от Nothing.
First a изоморфен Alt Maybe a, но исторически появился раньше него.
Обратите внимание: Data.Monoid.First отличается от Data.Semigroup.First. Первый возвращает первое значение, отличное от Nothing, то есть Data.Monoid.First Nothing <> x = x. Второй просто возвращает первое значение, то есть Data.Semigroup.First Nothing <> x = Data.Semigroup.First Nothing.
Примеры
>>> First (Just "hello") <> First Nothing <> First (Just "world")
First {getFirst = Just "hello"}
>>> First Nothing <> mempty
First {getFirst = Nothing}
Экземпляры
| Applicative First Исходный код | Начиная с: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Monoid Методыpure :: a -> First a Исходный код (<*>) :: First (a -> b) -> First a -> First b Исходный код liftA2 :: (a -> b -> c) -> First a -> First b -> First c Исходный код (*>) :: First a -> First b -> First b Исходный код (<*) :: First a -> First b -> First a Исходный код | |||||
| Functor First Исходный код | Начиная с: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Monoid Методыfmap :: (a -> b) -> First a -> First b Исходный код (<$) :: a -> First b -> First a Исходный код | |||||
| Monad First Исходный код | Начиная с: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Monoid Методы(>>=) :: First a -> (a -> First b) -> First b Исходный код (>>) :: First a -> First b -> First b Исходный код return :: a -> First a Исходный код | |||||
| MonadFix First Исходный код | Начиная с: base-4.8.0.0 |
||||
Определено в GHC.Internal.Control.Monad.Fix Методыmfix :: (a -> First a) -> First a Исходный код | |||||
| MonadZip First Исходный код | Начиная с: ghc-internal-4.8.0.0 |
||||
Определено в GHC.Internal.Control.Monad.Zip Методыmzip :: First a -> First b -> First (a, b) Исходный код mzipWith :: (a -> b -> c) -> First a -> First b -> First c Исходный код munzip :: First (a, b) -> (First a, First b) Исходный код | |||||
| Foldable First Исходный код | Начиная с: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Foldable Методыfold :: Monoid m => First m -> m Исходный код foldMap :: Monoid m => (a -> m) -> First a -> m Исходный код foldMap' :: Monoid m => (a -> m) -> First a -> m Исходный код foldr :: (a -> b -> b) -> b -> First a -> b Исходный код foldr' :: (a -> b -> b) -> b -> First a -> b Исходный код foldl :: (b -> a -> b) -> b -> First a -> b Исходный код foldl' :: (b -> a -> b) -> b -> First a -> b Исходный код foldr1 :: (a -> a -> a) -> First a -> a Исходный код foldl1 :: (a -> a -> a) -> First a -> a Исходный код toList :: First a -> [a] Исходный код null :: First a -> Bool Исходный код length :: First a -> Int Исходный код elem :: Eq a => a -> First a -> Bool Исходный код maximum :: Ord a => First a -> a Исходный код minimum :: Ord a => First a -> a Исходный код sum :: Num a => First a -> a Исходный код product :: Num a => First a -> a Исходный код | |||||
| Traversable First Исходный код | Начиная с: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Traversable Методыtraverse :: Applicative f => (a -> f b) -> First a -> f (First b) Исходный код sequenceA :: Applicative f => First (f a) -> f (First a) Исходный код mapM :: Monad m => (a -> m b) -> First a -> m (First b) Исходный код sequence :: Monad m => First (m a) -> m (First a) Исходный код | |||||
| Generic1 First Исходный код | |||||
Определено в GHC.Internal.Data.Monoid Связанные типы
| |||||
| Monoid (First a) Исходный код | Начиная с: base-2.1 |
||||
Определено в GHC.Internal.Data.Monoid Методыmempty :: First a Исходный код mappend :: First a -> First a -> First a Исходный код mconcat :: [First a] -> First a Исходный код | |||||
| Semigroup (First a) Исходный код | Начиная с: base-4.9.0.0 |
||||
Определено в GHC.Internal.Data.Monoid Методы(<>) :: First a -> First a -> First a Исходный код sconcat :: NonEmpty (First a) -> First a Исходный код stimes :: Integral b => b -> First a -> First a Исходный код | |||||
| Eq a => Eq (First a) Исходный код | Начиная с: base-2.1 |
||||
Определено в GHC.Internal.Data.Monoid Методы(==) :: First a -> First a -> Bool Исходный код (/=) :: First a -> First a -> Bool Исходный код | |||||
| Ord a => Ord (First a) Исходный код | Начиная с: base-2.1 |
||||
Определено в GHC.Internal.Data.Monoid Методыcompare :: First a -> First a -> Ordering Исходный код (<) :: First a -> First a -> Bool Исходный код (<=) :: First a -> First a -> Bool Исходный код (>) :: First a -> First a -> Bool Исходный код (>=) :: First a -> First a -> Bool Исходный код max :: First a -> First a -> First a Исходный код min :: First a -> First a -> First a Исходный код | |||||
| Data a => Data (First a) Исходный код | Начиная с: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Data Методыgfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> First a -> c (First a) Источник gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (First a) Источник toConstr :: First a -> Constr Источник dataTypeOf :: First a -> DataType Источник dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (First a)) Источник dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (First a)) Источник gmapT :: (forall b. Data b => b -> b) -> First a -> First a Источник gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> First a -> r Источник gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> First a -> r Источник gmapQ :: (forall d. Data d => d -> u) -> First a -> [u] Источник gmapQi :: Int -> (forall d. Data d => d -> u) -> First a -> u Источник gmapM :: Monad m => (forall d. Data d => d -> m d) -> First a -> m (First a) Источник gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> First a -> m (First a) Источник gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> First a -> m (First a) Источник | |||||
| Generic (First a) Источник | |||||
Определено в GHC.Internal.Data.Monoid Связанные типы
| |||||
| Read a => Read (First a) Источник | Начиная с: base-2.1 |
||||
| Show a => Show (First a) Источник | Начиная с: base-2.1 |
||||
| type Rep1 First Источник | Начиная с: base-4.7.0.0 |
||||
Определено в GHC.Internal.Data.Monoid | |||||
| type Rep (First a) Источник | Начиная с: base-4.7.0.0 |
||||
Определено в GHC.Internal.Data.Monoid | |||||
Моноид Maybe, возвращающий крайнее справа значение, не являющееся Nothing.
Last a изоморфно Dual (First a) и, следовательно, Dual (Alt Maybe a)
Data.Semigroup.Last. Первый возвращает последнее значение, не являющееся Nothing, поэтому x <> Data.Monoid.Last Nothing = x. Второй просто возвращает последнее значение, следовательно, x <> Data.Semigroup.Last Nothing = Data.Semigroup.Last Nothing.
Примеры
>>> Last (Just "hello") <> Last Nothing <> Last (Just "world")
Last {getLast = Just "world"}
>>> Last Nothing <> mempty
Last {getLast = Nothing}
Экземпляры
| Applicative Last Исходный код | С версии: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Monoid Методыpure :: a -> Last a Исходный код (<*>) :: Last (a -> b) -> Last a -> Last b Исходный код liftA2 :: (a -> b -> c) -> Last a -> Last b -> Last c Исходный код (*>) :: Last a -> Last b -> Last b Исходный код (<*) :: Last a -> Last b -> Last a Исходный код | |||||
| Functor Last Исходный код | С версии: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Monoid | |||||
| Monad Last Исходный код | С версии: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Monoid Методы(>>=) :: Last a -> (a -> Last b) -> Last b Исходный код (>>) :: Last a -> Last b -> Last b Исходный код return :: a -> Last a Исходный код | |||||
| MonadFix Last Исходный код | С версии: base-4.8.0.0 |
||||
Определено в GHC.Internal.Control.Monad.Fix Методыmfix :: (a -> Last a) -> Last a Исходный код | |||||
| MonadZip Last Исходный код | С версии: ghc-internal-4.8.0.0 |
||||
Определено в GHC.Internal.Control.Monad.Zip Методыmzip :: Last a -> Last b -> Last (a, b) Исходный код mzipWith :: (a -> b -> c) -> Last a -> Last b -> Last c Исходный код munzip :: Last (a, b) -> (Last a, Last b) Исходный код | |||||
| Foldable Last Исходный код | С версии: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Foldable Методыfold :: Monoid m => Last m -> m Исходный код foldMap :: Monoid m => (a -> m) -> Last a -> m Исходный код foldMap' :: Monoid m => (a -> m) -> Last a -> m Исходный код foldr :: (a -> b -> b) -> b -> Last a -> b Исходный код foldr' :: (a -> b -> b) -> b -> Last a -> b Исходный код foldl :: (b -> a -> b) -> b -> Last a -> b Исходный код foldl' :: (b -> a -> b) -> b -> Last a -> b Исходный код foldr1 :: (a -> a -> a) -> Last a -> a Исходный код foldl1 :: (a -> a -> a) -> Last a -> a Исходный код toList :: Last a -> [a] Исходный код null :: Last a -> Bool Исходный код length :: Last a -> Int Исходный код elem :: Eq a => a -> Last a -> Bool Исходный код maximum :: Ord a => Last a -> a Исходный код minimum :: Ord a => Last a -> a Исходный код sum :: Num a => Last a -> a Исходный код product :: Num a => Last a -> a Исходный код | |||||
| Traversable Last Исходный код | С версии: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Traversable Методыtraverse :: Applicative f => (a -> f b) -> Last a -> f (Last b) Исходный код sequenceA :: Applicative f => Last (f a) -> f (Last a) Исходный код mapM :: Monad m => (a -> m b) -> Last a -> m (Last b) Исходный код sequence :: Monad m => Last (m a) -> m (Last a) Исходный код | |||||
| Generic1 Last Исходный код | |||||
Определено в GHC.Internal.Data.Monoid Ассоциированные типы
| |||||
| Monoid (Last a) Исходный код | С версии: base-2.1 |
||||
Определено в GHC.Internal.Data.Monoid Методыmempty :: Last a Исходный код mappend :: Last a -> Last a -> Last a Исходный код mconcat :: [Last a] -> Last a Исходный код | |||||
| Semigroup (Last a) Исходный код | С версии: base-4.9.0.0 |
||||
Определено в GHC.Internal.Data.Monoid Методы(<>) :: Last a -> Last a -> Last a Исходный код sconcat :: NonEmpty (Last a) -> Last a Исходный код stimes :: Integral b => b -> Last a -> Last a Исходный код | |||||
| Eq a => Eq (Last a) Исходный код | С версии: base-2.1 |
||||
Определено в GHC.Internal.Data.Monoid | |||||
| Ord a => Ord (Last a) Исходный код | С версии: base-2.1 |
||||
Определено в GHC.Internal.Data.Monoid Методыcompare :: Last a -> Last a -> Ordering Исходный код (<) :: Last a -> Last a -> Bool Исходный код (<=) :: Last a -> Last a -> Bool Исходный код (>) :: Last a -> Last a -> Bool Исходный код (>=) :: Last a -> Last a -> Bool Исходный код max :: Last a -> Last a -> Last a Исходный код min :: Last a -> Last a -> Last a Исходный код | |||||
| Data a => Data (Last a) Исходный код | С версии: base-4.8.0.0 |
||||
Определён в GHC.Internal.Data.Data Методыgfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Last a -> c (Last a) Источник gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Last a) Источник toConstr :: Last a -> Constr Источник dataTypeOf :: Last a -> DataType Источник dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Last a)) Источник dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Last a)) Источник gmapT :: (forall b. Data b => b -> b) -> Last a -> Last a Источник gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Last a -> r Источник gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Last a -> r Источник gmapQ :: (forall d. Data d => d -> u) -> Last a -> [u] Источник gmapQi :: Int -> (forall d. Data d => d -> u) -> Last a -> u Источник gmapM :: Monad m => (forall d. Data d => d -> m d) -> Last a -> m (Last a) Источник gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Last a -> m (Last a) Источник gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Last a -> m (Last a) Источник | |||||
| Generic (Last a) Источник | |||||
Определён в GHC.Internal.Data.Monoid Связанные типы
| |||||
| Read a => Read (Last a) Источник | Начиная с: base-2.1 |
||||
| Show a => Show (Last a) Источник | Начиная с: base-2.1 |
||||
| type Rep1 Last Источник | Начиная с: base-4.7.0.0 |
||||
Определён в GHC.Internal.Data.Monoid | |||||
| type Rep (Last a) Источник | Начиная с: base-4.7.0.0 |
||||
Определён в GHC.Internal.Data.Monoid | |||||
Обёртка для альтернативы
newtype Alt (f :: k -> Type) (a :: k) Источник
Моноид относительно <|>.
Alt l <> Alt r == Alt (l <|> r)
Примеры
>>> Alt (Just 12) <> Alt (Just 24)
Alt {getAlt = Just 12}
>>> Alt Nothing <> Alt (Just 24)
Alt {getAlt = Just 24}
Начиная с: base-4.8.0.0
Экземпляры
| Generic1 (Alt f :: k -> Type) Исходный код | |||||
Определено в GHC.Internal.Data.Semigroup.Internal Ассоциированные типы
Методыfrom1 :: forall (a :: k). Alt f a -> Rep1 (Alt f) a Исходный код to1 :: forall (a :: k). Rep1 (Alt f) a -> Alt f a Исходный код | |||||
| Foldable1 f => Foldable1 (Alt f) Исходный код | Since: base-4.18.0.0 |
||||
Определено в Data.Foldable1 Методыfold1 :: Semigroup m => Alt f m -> m Исходный код foldMap1 :: Semigroup m => (a -> m) -> Alt f a -> m Исходный код foldMap1' :: Semigroup m => (a -> m) -> Alt f a -> m Исходный код toNonEmpty :: Alt f a -> NonEmpty a Исходный код maximum :: Ord a => Alt f a -> a Исходный код minimum :: Ord a => Alt f a -> a Исходный код head :: Alt f a -> a Исходный код last :: Alt f a -> a Исходный код foldrMap1 :: (a -> b) -> (a -> b -> b) -> Alt f a -> b Исходный код foldlMap1' :: (a -> b) -> (b -> a -> b) -> Alt f a -> b Исходный код foldlMap1 :: (a -> b) -> (b -> a -> b) -> Alt f a -> b Исходный код foldrMap1' :: (a -> b) -> (a -> b -> b) -> Alt f a -> b Исходный код | |||||
| Contravariant f => Contravariant (Alt f) Исходный код | |||||
Определено в Data.Functor.Contravariant Методыcontramap :: (a' -> a) -> Alt f a -> Alt f a' Исходный код (>$) :: b -> Alt f b -> Alt f a Исходный код | |||||
| Alternative f => Alternative (Alt f) Исходный код | Since: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal Методыempty :: Alt f a Исходный код (<|>) :: Alt f a -> Alt f a -> Alt f a Исходный код some :: Alt f a -> Alt f [a] Исходный код many :: Alt f a -> Alt f [a] Исходный код | |||||
| Applicative f => Applicative (Alt f) Исходный код | Since: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal Методыpure :: a -> Alt f a Исходный код (<*>) :: Alt f (a -> b) -> Alt f a -> Alt f b Исходный код liftA2 :: (a -> b -> c) -> Alt f a -> Alt f b -> Alt f c Исходный код (*>) :: Alt f a -> Alt f b -> Alt f b Исходный код (<*) :: Alt f a -> Alt f b -> Alt f a Исходный код | |||||
| Functor f => Functor (Alt f) Исходный код | Since: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal Методыfmap :: (a -> b) -> Alt f a -> Alt f b Исходный код (<$) :: a -> Alt f b -> Alt f a Исходный код | |||||
| Monad f => Monad (Alt f) Исходный код | Since: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal Методы(>>=) :: Alt f a -> (a -> Alt f b) -> Alt f b Исходный код (>>) :: Alt f a -> Alt f b -> Alt f b Исходный код return :: a -> Alt f a Исходный код | |||||
| MonadPlus f => MonadPlus (Alt f) Исходный код | Since: base-4.8.0.0 |
||||
Определено в GHC.Internal.Data.Semigroup.Internal | |||||
| MonadFix f => MonadFix (Alt f) Исходный код | Since: base-4.8.0.0 |
||||
Определено в GHC.Internal.Control.Monad.Fix Методыmfix :: (a -> Alt f a) -> Alt f a Исходный код | |||||
| MonadZip f => MonadZip (Alt f) Исходный код | Since: ghc-internal-4.8.0.0 |
||||
Определено в GHC.Internal.Control.Monad.Zip Методыmzip :: Alt f a -> Alt f b -> Alt f (a, b) Исходный код mzipWith :: (a -> b -> c) -> Alt f a -> Alt f b -> Alt f c Исходный код munzip :: Alt f (a, b) -> (Alt f a, Alt f b) Исходный код | |||||
| Foldable f => Foldable (Alt f) Исходный код | Since: base-4.12.0.0 |
||||
Определено в GHC.Internal.Data.Foldable Методыfold :: Monoid m => Alt f m -> m Исходный код foldMap :: Monoid m => (a -> m) -> Alt f a -> m Исходный код foldMap' :: Monoid m => (a -> m) -> Alt f a -> m Исходный код foldr :: (a -> b -> b) -> b -> Alt f a -> b Исходный код foldr' :: (a -> b -> b) -> b -> Alt f a -> b Исходный код foldl :: (b -> a -> b) -> b -> Alt f a -> b Исходный код foldl' :: (b -> a -> b) -> b -> Alt f a -> b Исходный код foldr1 :: (a -> a -> a) -> Alt f a -> a Исходный код foldl1 :: (a -> a -> a) -> Alt f a -> a Исходный код toList :: Alt f a -> [a] Исходный код null :: Alt f a -> Bool Исходный код length :: Alt f a -> Int Исходный код elem :: Eq a => a -> Alt f a -> Bool Исходный код maximum :: Ord a => Alt f a -> a Исходный код minimum :: Ord a => Alt f a -> a Исходный код sum :: Num a => Alt f a -> a Исходный код product :: Num a => Alt f a -> a Исходный код | |||||
| Traversable f => Traversable (Alt f) Исходный код | Since: base-4.12.0.0 |
||||
Определён в GHC.Internal.Data.Traversable | |||||
| Alternative f => Monoid (Alt f a) Источник | Начиная с: base-4.8.0.0 |
||||
| Alternative f => Semigroup (Alt f a) Источник | Начиная с: base-4.9.0.0 |
||||
| Eq (f a) => Eq (Alt f a) Источник | Начиная с: base-4.8.0.0 |
||||
| Ord (f a) => Ord (Alt f a) Источник | Начиная с: base-4.8.0.0 |
||||
Определён в GHC.Internal.Data.Semigroup.Internal | |||||
| (Data (f a), Data a, Typeable f) => Data (Alt f a) Источник | Начиная с: base-4.8.0.0 |
||||
Определён в GHC.Internal.Data.Data Методыgfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Alt f a -> c (Alt f a) Источник gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Alt f a) Источник toConstr :: Alt f a -> Constr Источник dataTypeOf :: Alt f a -> DataType Источник dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Alt f a)) Источник dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Alt f a)) Источник gmapT :: (forall b. Data b => b -> b) -> Alt f a -> Alt f a Источник gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Alt f a -> r Источник gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Alt f a -> r Источник gmapQ :: (forall d. Data d => d -> u) -> Alt f a -> [u] Источник gmapQi :: Int -> (forall d. Data d => d -> u) -> Alt f a -> u Источник gmapM :: Monad m => (forall d. Data d => d -> m d) -> Alt f a -> m (Alt f a) Источник gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Alt f a -> m (Alt f a) Источник gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Alt f a -> m (Alt f a) Источник | |||||
| Enum (f a) => Enum (Alt f a) Источник | Начиная с: base-4.8.0.0 |
||||
Определён в GHC.Internal.Data.Semigroup.Internal Методыsucc :: Alt f a -> Alt f a Источник pred :: Alt f a -> Alt f a Источник toEnum :: Int -> Alt f a Источник fromEnum :: Alt f a -> Int Источник enumFrom :: Alt f a -> [Alt f a] Источник enumFromThen :: Alt f a -> Alt f a -> [Alt f a] Источник enumFromTo :: Alt f a -> Alt f a -> [Alt f a] Источник enumFromThenTo :: Alt f a -> Alt f a -> Alt f a -> [Alt f a] Источник | |||||
| Generic (Alt f a) Источник | |||||
Определён в GHC.Internal.Data.Semigroup.Internal Связанные типы
| |||||
| Num (f a) => Num (Alt f a) Источник | Начиная с: base-4.8.0.0 |
||||
Определён в GHC.Internal.Data.Semigroup.Internal | |||||
| Read (f a) => Read (Alt f a) Источник | Начиная с: base-4.8.0.0 |
||||
Обёртка Applicative
newtype Ap (f :: k -> Type) (a :: k) Источник
Этот тип данных представляет поточечное поднятие Monoid в Applicative.
Примеры
>>> Ap (Just [1, 2, 3]) <> Ap Nothing
Ap {getAp = Nothing}
>>> Ap [Sum 10, Sum 20] <> Ap [Sum 1, Sum 2]
Ap {getAp = [Sum {getSum = 11},Sum {getSum = 12},Sum {getSum = 21},Sum {getSum = 22}]}
С версии: base-4.12.0.0
Экземпляры
| Generic1 (Ap f :: k -> Type) Исходный код | |||||
Определён в GHC.Internal.Data.Monoid Ассоциированные типы
Методыfrom1 :: forall (a :: k). Ap f a -> Rep1 (Ap f) a Исходный код to1 :: forall (a :: k). Rep1 (Ap f) a -> Ap f a Исходный код | |||||
| Foldable1 f => Foldable1 (Ap f) Исходный код | Начиная с: base-4.18.0.0 |
||||
Определён в Data.Foldable1 Методыfold1 :: Semigroup m => Ap f m -> m Исходный код foldMap1 :: Semigroup m => (a -> m) -> Ap f a -> m Исходный код foldMap1' :: Semigroup m => (a -> m) -> Ap f a -> m Исходный код toNonEmpty :: Ap f a -> NonEmpty a Исходный код maximum :: Ord a => Ap f a -> a Исходный код minimum :: Ord a => Ap f a -> a Исходный код head :: Ap f a -> a Исходный код last :: Ap f a -> a Исходный код foldrMap1 :: (a -> b) -> (a -> b -> b) -> Ap f a -> b Исходный код foldlMap1' :: (a -> b) -> (b -> a -> b) -> Ap f a -> b Исходный код foldlMap1 :: (a -> b) -> (b -> a -> b) -> Ap f a -> b Исходный код foldrMap1' :: (a -> b) -> (a -> b -> b) -> Ap f a -> b Исходный код | |||||
| Alternative f => Alternative (Ap f) Исходный код | Начиная с: base-4.12.0.0 |
||||
Определён в GHC.Internal.Data.Monoid Методыempty :: Ap f a Исходный код (<|>) :: Ap f a -> Ap f a -> Ap f a Исходный код some :: Ap f a -> Ap f [a] Исходный код many :: Ap f a -> Ap f [a] Исходный код | |||||
| Applicative f => Applicative (Ap f) Исходный код | Начиная с: base-4.12.0.0 |
||||
Определён в GHC.Internal.Data.Monoid Методыpure :: a -> Ap f a Исходный код (<*>) :: Ap f (a -> b) -> Ap f a -> Ap f b Исходный код liftA2 :: (a -> b -> c) -> Ap f a -> Ap f b -> Ap f c Исходный код (*>) :: Ap f a -> Ap f b -> Ap f b Исходный код (<*) :: Ap f a -> Ap f b -> Ap f a Исходный код | |||||
| Functor f => Functor (Ap f) Исходный код | Начиная с: base-4.12.0.0 |
||||
Определён в GHC.Internal.Data.Monoid | |||||
| Monad f => Monad (Ap f) Исходный код | Начиная с: base-4.12.0.0 |
||||
Определён в GHC.Internal.Data.Monoid Методы(>>=) :: Ap f a -> (a -> Ap f b) -> Ap f b Исходный код (>>) :: Ap f a -> Ap f b -> Ap f b Исходный код return :: a -> Ap f a Исходный код | |||||
| MonadPlus f => MonadPlus (Ap f) Исходный код | Начиная с: base-4.12.0.0 |
||||
Определён в GHC.Internal.Data.Monoid | |||||
| MonadFail f => MonadFail (Ap f) Исходный код | Начиная с: base-4.12.0.0 |
||||
Определён в GHC.Internal.Data.Monoid Методыfail :: HasCallStack => String -> Ap f a Исходный код | |||||
| MonadFix f => MonadFix (Ap f) Исходный код | Начиная с: base-4.12.0.0 |
||||
Определён в GHC.Internal.Control.Monad.Fix Методыmfix :: (a -> Ap f a) -> Ap f a Исходный код | |||||
| Foldable f => Foldable (Ap f) Исходный код | Начиная с: base-4.12.0.0 |
||||
Определён в GHC.Internal.Data.Foldable Методыfold :: Monoid m => Ap f m -> m Исходный код foldMap :: Monoid m => (a -> m) -> Ap f a -> m Исходный код foldMap' :: Monoid m => (a -> m) -> Ap f a -> m Исходный код foldr :: (a -> b -> b) -> b -> Ap f a -> b Исходный код foldr' :: (a -> b -> b) -> b -> Ap f a -> b Исходный код foldl :: (b -> a -> b) -> b -> Ap f a -> b Исходный код foldl' :: (b -> a -> b) -> b -> Ap f a -> b Исходный код foldr1 :: (a -> a -> a) -> Ap f a -> a Исходный код foldl1 :: (a -> a -> a) -> Ap f a -> a Исходный код toList :: Ap f a -> [a] Исходный код null :: Ap f a -> Bool Исходный код length :: Ap f a -> Int Исходный код elem :: Eq a => a -> Ap f a -> Bool Исходный код maximum :: Ord a => Ap f a -> a Исходный код minimum :: Ord a => Ap f a -> a Исходный код sum :: Num a => Ap f a -> a Исходный код product :: Num a => Ap f a -> a Исходный код | |||||
| Traversable f => Traversable (Ap f) Исходный код | Начиная с: base-4.12.0.0 |
||||
Определён в GHC.Internal.Data.Traversable Методыtraverse :: Applicative f0 => (a -> f0 b) -> Ap f a -> f0 (Ap f b) Исходный код sequenceA :: Applicative f0 => Ap f (f0 a) -> f0 (Ap f a) Исходный код mapM :: Monad m => (a -> m b) -> Ap f a -> m (Ap f b) Исходный код sequence :: Monad m => Ap f (m a) -> m (Ap f a) Исходный код | |||||
| (Applicative f, Monoid a) => Monoid (Ap f a) Исходный код | Начиная с: base-4.12.0.0 |
||||
Определён в GHC.Internal.Data.Monoid Методыmempty :: Ap f a Исходный код mappend :: Ap f a -> Ap f a -> Ap f a Исходный код mconcat :: [Ap f a] -> Ap f a Исходный код | |||||
| (Applicative f, Semigroup a) => Semigroup (Ap f a) Исходный код | Начиная с: base-4.12.0.0 |
||||
Определён в GHC.Internal.Data.Monoid Методы(<>) :: Ap f a -> Ap f a -> Ap f a Исходный код sconcat :: NonEmpty (Ap f a) -> Ap f a Исходный код stimes :: Integral b => b -> Ap f a -> Ap f a Исходный код | |||||
| Eq (f a) => Eq (Ap f a) Исходный код | Начиная с: base-4.12.0.0 |
||||
Определён в GHC.Internal.Data.Monoid | |||||
| Ord (f a) => Ord (Ap f a) Исходный код | Начиная с: base-4.12.0.0 |
||||
Определён в GHC.Internal.Data.Monoid Методыcompare :: Ap f a -> Ap f a -> Ordering Исходный код (<) :: Ap f a -> Ap f a -> Bool Исходный код (<=) :: Ap f a -> Ap f a -> Bool Исходный код (>) :: Ap f a -> Ap f a -> Bool Исходный код (>=) :: Ap f a -> Ap f a -> Bool Исходный код max :: Ap f a -> Ap f a -> Ap f a Исходный код min :: Ap f a -> Ap f a -> Ap f a Исходный код | |||||
| (Data (f a), Data a, Typeable f) => Data (Ap f a) Исходный код | Начиная с: base-4.12.0.0 |
||||
Определён в GHC.Internal.Data.Data Методыgfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Ap f a -> c (Ap f a) Исходный код gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Ap f a) Исходный код toConstr :: Ap f a -> Constr Исходный код dataTypeOf :: Ap f a -> DataType Исходный код dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Ap f a)) Исходный код dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Ap f a)) Исходный код gmapT :: (forall b. Data b => b -> b) -> Ap f a -> Ap f a Исходный код gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Ap f a -> r Исходный код gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Ap f a -> r Исходный код gmapQ :: (forall d. Data d => d -> u) -> Ap f a -> [u] Исходный код gmapQi :: Int -> (forall d. Data d => d -> u) -> Ap f a -> u Исходный код gmapM :: Monad m => (forall d. Data d => d -> m d) -> Ap f a -> m (Ap f a) Исходный код gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Ap f a -> m (Ap f a) Исходный код gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Ap f a -> m (Ap f a) Исходный код | |||||
| (Applicative f, Bounded a) => Bounded (Ap f a) Исходный код | Начиная с: base-4.12.0.0 |
||||
Определён в GHC.Internal.Data.Monoid | |||||
| Enum (f a) => Enum (Ap f a) Исходный код | Начиная с: base-4.12.0.0 |
||||
Определён в GHC.Internal.Data.Monoid Методыsucc :: Ap f a -> Ap f a Исходный код pred :: Ap f a -> Ap f a Исходный код toEnum :: Int -> Ap f a Исходный код fromEnum :: Ap f a -> Int Исходный код enumFrom :: Ap f a -> [Ap f a] Исходный код enumFromThen :: Ap f a -> Ap f a -> [Ap f a] Исходный код enumFromTo :: Ap f a -> Ap f a -> [Ap f a] Исходный код enumFromThenTo :: Ap f a -> Ap f a -> Ap f a -> [Ap f a] Исходный код | |||||
| Generic (Ap f a) Исходный код | |||||
Определён в GHC.Internal.Data.Monoid Связанные типы
| |||||
| (Applicative f, Num a) => Num (Ap f a) Исходный код |
Обратите внимание: даже если экземпляры Коммутативность: >>> Ap [10,20] + Ap [1,2]
Ap {getAp = [11,12,21,22]}
>>> Ap [1,2] + Ap [10,20]
Ap {getAp = [11,21,12,22]}
Аддитивная обратная величина: >>> Ap [] + negate (Ap [])
Ap {getAp = []}
>>> fromInteger 0 :: Ap [] Int
Ap {getAp = [0]}
Дистрибутивность: >>> Ap [1,2] * (3 + 4)
Ap {getAp = [7,14]}
>>> (Ap [1,2] * 3) + (Ap [1,2] * 4)
Ap {getAp = [7,11,10,14]}
Начиная с: base-4.12.0.0 |
||||
Определён в GHC.Internal.Data.Monoid Методы(+) :: Ap f a -> Ap f a -> Ap f a Исходный код (-) :: Ap f a -> Ap f a -> Ap f a Исходный код (*) :: Ap f a -> Ap f a -> Ap f a Исходный код negate :: Ap f a -> Ap f a Исходный код abs :: Ap f a -> Ap f a Исходный код signum :: Ap f a -> Ap f a Исходный код fromInteger :: Integer -> Ap f a Исходный код | |||||
| Read (f a) => Read (Ap f a) Исходный код | Начиная с: base-4.12.0.0 |
||||
Определён в GHC.Internal.Data.Monoid МетодыreadsPrec :: Int -> ReadS (Ap f a) Исходный код readList :: ReadS [Ap f a] Исходный код readPrec :: ReadPrec (Ap f a) Исходный код readListPrec :: ReadPrec [Ap f a] Исходный код | |||||
| Show (f a) => Show (Ap f a) Исходный код | Начиная с: base-4.12.0.0 |
||||
Определён в GHC.Internal.Data.Monoid МетодыshowsPrec :: Int -> Ap f a -> ShowS Исходный код show :: Ap f a -> String Исходный код showList :: [Ap f a] -> ShowS Исходный код | |||||
| type Rep1 (Ap f :: k -> Type) Источник | С версии: base-4.12.0.0 |
Определено в GHC.Internal.Data.Monoid | |
| type Rep (Ap f a) Источник | С версии: base-4.12.0.0 |
Определено в GHC.Internal.Data.Monoid | |
© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/9.14.1/docs/libraries/base-4.22.0.0-66f8/Data-Monoid.html