ouroboros-network-framework-0.13.1.0: Ouroboros network framework
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.Wedge

Description

This module is a simplified version of https://hackage.haskell.org/package/smash/docs/Data-Wedge.html#t:Wedge, which is copyrighted by Emily Pillmore and originally pulished using BSD-3-Clause license.

copyright: Emily Pillmore 2020-2021, iohk 2021

Synopsis

Documentation

data Wedge a b Source #

Constructors

Nowhere 
Here a 
There b 

Instances

Instances details
Bifoldable Wedge Source # 
Instance details

Defined in Data.Wedge

Methods

bifoldMonoid m ⇒ Wedge m m → m #

bifoldMapMonoid m ⇒ (a → m) → (b → m) → Wedge a b → m #

bifoldr ∷ (a → c → c) → (b → c → c) → c → Wedge a b → c #

bifoldl ∷ (c → a → c) → (c → b → c) → c → Wedge a b → c #

Bifunctor Wedge Source # 
Instance details

Defined in Data.Wedge

Methods

bimap ∷ (a → b) → (c → d) → Wedge a c → Wedge b d #

first ∷ (a → b) → Wedge a c → Wedge b c #

second ∷ (b → c) → Wedge a b → Wedge a c #

Bitraversable Wedge Source # 
Instance details

Defined in Data.Wedge

Methods

bitraverseApplicative f ⇒ (a → f c) → (b → f d) → Wedge a b → f (Wedge c d) #

Foldable (Wedge a) Source # 
Instance details

Defined in Data.Wedge

Methods

foldMonoid m ⇒ Wedge a m → m #

foldMapMonoid m ⇒ (a0 → m) → Wedge a a0 → m #

foldMap'Monoid m ⇒ (a0 → m) → Wedge a a0 → m #

foldr ∷ (a0 → b → b) → b → Wedge a a0 → b #

foldr' ∷ (a0 → b → b) → b → Wedge a a0 → b #

foldl ∷ (b → a0 → b) → b → Wedge a a0 → b #

foldl' ∷ (b → a0 → b) → b → Wedge a a0 → b #

foldr1 ∷ (a0 → a0 → a0) → Wedge a a0 → a0 #

foldl1 ∷ (a0 → a0 → a0) → Wedge a a0 → a0 #

toListWedge a a0 → [a0] #

nullWedge a a0 → Bool #

lengthWedge a a0 → Int #

elemEq a0 ⇒ a0 → Wedge a a0 → Bool #

maximumOrd a0 ⇒ Wedge a a0 → a0 #

minimumOrd a0 ⇒ Wedge a a0 → a0 #

sumNum a0 ⇒ Wedge a a0 → a0 #

productNum a0 ⇒ Wedge a a0 → a0 #

Applicative (Wedge a) Source # 
Instance details

Defined in Data.Wedge

Methods

pure ∷ a0 → Wedge a a0 #

(<*>)Wedge a (a0 → b) → Wedge a a0 → Wedge a b #

liftA2 ∷ (a0 → b → c) → Wedge a a0 → Wedge a b → Wedge a c #

(*>)Wedge a a0 → Wedge a b → Wedge a b #

(<*)Wedge a a0 → Wedge a b → Wedge a a0 #

Functor (Wedge a) Source # 
Instance details

Defined in Data.Wedge

Methods

fmap ∷ (a0 → b) → Wedge a a0 → Wedge a b #

(<$) ∷ a0 → Wedge a b → Wedge a a0 #

Monad (Wedge a) Source # 
Instance details

Defined in Data.Wedge

Methods

(>>=)Wedge a a0 → (a0 → Wedge a b) → Wedge a b #

(>>)Wedge a a0 → Wedge a b → Wedge a b #

return ∷ a0 → Wedge a a0 #

(Show a, Show b) ⇒ Show (Wedge a b) Source # 
Instance details

Defined in Data.Wedge

Methods

showsPrecIntWedge a b → ShowS #

showWedge a b → String #

showList ∷ [Wedge a b] → ShowS #

(Eq a, Eq b) ⇒ Eq (Wedge a b) Source # 
Instance details

Defined in Data.Wedge

Methods

(==)Wedge a b → Wedge a b → Bool #

(/=)Wedge a b → Wedge a b → Bool #

(Ord a, Ord b) ⇒ Ord (Wedge a b) Source # 
Instance details

Defined in Data.Wedge

Methods

compareWedge a b → Wedge a b → Ordering #

(<)Wedge a b → Wedge a b → Bool #

(<=)Wedge a b → Wedge a b → Bool #

(>)Wedge a b → Wedge a b → Bool #

(>=)Wedge a b → Wedge a b → Bool #

maxWedge a b → Wedge a b → Wedge a b #

minWedge a b → Wedge a b → Wedge a b #