notzero-0.1: A data type for representing numeric values, except zero.

Safe HaskellSafe
LanguageHaskell2010

Data.AccNotZeroOr

Documentation

data AccNotZeroOr f a x Source #

Constructors

IsAccNotZero (f (NotZero a)) 
OrAccNotZero x 

Instances

Functor f => Functor (AccNotZeroOr f a) Source # 

Methods

fmap :: (a -> b) -> AccNotZeroOr f a a -> AccNotZeroOr f a b #

(<$) :: a -> AccNotZeroOr f a b -> AccNotZeroOr f a a #

Alt f => Applicative (AccNotZeroOr f a) Source # 

Methods

pure :: a -> AccNotZeroOr f a a #

(<*>) :: AccNotZeroOr f a (a -> b) -> AccNotZeroOr f a a -> AccNotZeroOr f a b #

liftA2 :: (a -> b -> c) -> AccNotZeroOr f a a -> AccNotZeroOr f a b -> AccNotZeroOr f a c #

(*>) :: AccNotZeroOr f a a -> AccNotZeroOr f a b -> AccNotZeroOr f a b #

(<*) :: AccNotZeroOr f a a -> AccNotZeroOr f a b -> AccNotZeroOr f a a #

Alt f => Apply (AccNotZeroOr f a) Source # 

Methods

(<.>) :: AccNotZeroOr f a (a -> b) -> AccNotZeroOr f a a -> AccNotZeroOr f a b #

(.>) :: AccNotZeroOr f a a -> AccNotZeroOr f a b -> AccNotZeroOr f a b #

(<.) :: AccNotZeroOr f a a -> AccNotZeroOr f a b -> AccNotZeroOr f a a #

liftF2 :: (a -> b -> c) -> AccNotZeroOr f a a -> AccNotZeroOr f a b -> AccNotZeroOr f a c #

Semigroup (AccNotZeroOr f a x) Source # 

Methods

(<>) :: AccNotZeroOr f a x -> AccNotZeroOr f a x -> AccNotZeroOr f a x #

sconcat :: NonEmpty (AccNotZeroOr f a x) -> AccNotZeroOr f a x #

stimes :: Integral b => b -> AccNotZeroOr f a x -> AccNotZeroOr f a x #

Monoid x => Monoid (AccNotZeroOr f a x) Source # 

Methods

mempty :: AccNotZeroOr f a x #

mappend :: AccNotZeroOr f a x -> AccNotZeroOr f a x -> AccNotZeroOr f a x #

mconcat :: [AccNotZeroOr f a x] -> AccNotZeroOr f a x #

_IsAccNotZero :: Prism (AccNotZeroOr f a x) (AccNotZeroOr f b x) (f (NotZero a)) (f (NotZero b)) Source #

isoAccNotZeroOr :: Iso (AccNotZeroOr f a x) (AccNotZeroOr g a x) (Either (f (NotZero a)) x) (Either (g (NotZero a)) x) Source #