newtype-zoo-1.2.1.0: Newtype Wrapper Zoo
Safe HaskellNone
LanguageHaskell2010

NewtypeZoo.Valid

Description

Indicate that something is Valid.

Documentation

newtype Valid a Source #

Constructors

Valid a 

Instances

Instances details
Monad Valid Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

(>>=) :: Valid a -> (a -> Valid b) -> Valid b #

(>>) :: Valid a -> Valid b -> Valid b #

return :: a -> Valid a #

Functor Valid Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

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

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

MonadFix Valid Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

mfix :: (a -> Valid a) -> Valid a #

Applicative Valid Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

pure :: a -> Valid a #

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

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

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

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

Foldable Valid Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

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

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

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

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

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

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

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

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

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

toList :: Valid a -> [a] #

null :: Valid a -> Bool #

length :: Valid a -> Int #

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

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

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

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

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

Traversable Valid Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

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

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

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

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

Eq1 Valid Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

liftEq :: (a -> b -> Bool) -> Valid a -> Valid b -> Bool #

Ord1 Valid Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

liftCompare :: (a -> b -> Ordering) -> Valid a -> Valid b -> Ordering #

Read1 Valid Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (Valid a) #

liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [Valid a] #

liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (Valid a) #

liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [Valid a] #

Show1 Valid Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Valid a -> ShowS #

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Valid a] -> ShowS #

MonadZip Valid Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

mzip :: Valid a -> Valid b -> Valid (a, b) #

mzipWith :: (a -> b -> c) -> Valid a -> Valid b -> Valid c #

munzip :: Valid (a, b) -> (Valid a, Valid b) #

Pointed Valid Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

point :: a -> Valid a #

Copointed Valid Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

copoint :: Valid a -> a #

Bounded a => Bounded (Valid a) Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

minBound :: Valid a #

maxBound :: Valid a #

Enum a => Enum (Valid a) Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

succ :: Valid a -> Valid a #

pred :: Valid a -> Valid a #

toEnum :: Int -> Valid a #

fromEnum :: Valid a -> Int #

enumFrom :: Valid a -> [Valid a] #

enumFromThen :: Valid a -> Valid a -> [Valid a] #

enumFromTo :: Valid a -> Valid a -> [Valid a] #

enumFromThenTo :: Valid a -> Valid a -> Valid a -> [Valid a] #

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

Defined in NewtypeZoo.Valid

Methods

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

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

Floating a => Floating (Valid a) Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

pi :: Valid a #

exp :: Valid a -> Valid a #

log :: Valid a -> Valid a #

sqrt :: Valid a -> Valid a #

(**) :: Valid a -> Valid a -> Valid a #

logBase :: Valid a -> Valid a -> Valid a #

sin :: Valid a -> Valid a #

cos :: Valid a -> Valid a #

tan :: Valid a -> Valid a #

asin :: Valid a -> Valid a #

acos :: Valid a -> Valid a #

atan :: Valid a -> Valid a #

sinh :: Valid a -> Valid a #

cosh :: Valid a -> Valid a #

tanh :: Valid a -> Valid a #

asinh :: Valid a -> Valid a #

acosh :: Valid a -> Valid a #

atanh :: Valid a -> Valid a #

log1p :: Valid a -> Valid a #

expm1 :: Valid a -> Valid a #

log1pexp :: Valid a -> Valid a #

log1mexp :: Valid a -> Valid a #

Fractional a => Fractional (Valid a) Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

(/) :: Valid a -> Valid a -> Valid a #

recip :: Valid a -> Valid a #

fromRational :: Rational -> Valid a #

Integral a => Integral (Valid a) Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

quot :: Valid a -> Valid a -> Valid a #

rem :: Valid a -> Valid a -> Valid a #

div :: Valid a -> Valid a -> Valid a #

mod :: Valid a -> Valid a -> Valid a #

quotRem :: Valid a -> Valid a -> (Valid a, Valid a) #

divMod :: Valid a -> Valid a -> (Valid a, Valid a) #

toInteger :: Valid a -> Integer #

Num a => Num (Valid a) Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

(+) :: Valid a -> Valid a -> Valid a #

(-) :: Valid a -> Valid a -> Valid a #

(*) :: Valid a -> Valid a -> Valid a #

negate :: Valid a -> Valid a #

abs :: Valid a -> Valid a #

signum :: Valid a -> Valid a #

fromInteger :: Integer -> Valid a #

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

Defined in NewtypeZoo.Valid

Methods

compare :: Valid a -> Valid a -> Ordering #

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

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

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

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

max :: Valid a -> Valid a -> Valid a #

min :: Valid a -> Valid a -> Valid a #

Read a => Read (Valid a) Source # 
Instance details

Defined in NewtypeZoo.Valid

Real a => Real (Valid a) Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

toRational :: Valid a -> Rational #

RealFloat a => RealFloat (Valid a) Source # 
Instance details

Defined in NewtypeZoo.Valid

RealFrac a => RealFrac (Valid a) Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

properFraction :: Integral b => Valid a -> (b, Valid a) #

truncate :: Integral b => Valid a -> b #

round :: Integral b => Valid a -> b #

ceiling :: Integral b => Valid a -> b #

floor :: Integral b => Valid a -> b #

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

Defined in NewtypeZoo.Valid

Methods

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

show :: Valid a -> String #

showList :: [Valid a] -> ShowS #

Ix a => Ix (Valid a) Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

range :: (Valid a, Valid a) -> [Valid a] #

index :: (Valid a, Valid a) -> Valid a -> Int #

unsafeIndex :: (Valid a, Valid a) -> Valid a -> Int #

inRange :: (Valid a, Valid a) -> Valid a -> Bool #

rangeSize :: (Valid a, Valid a) -> Int #

unsafeRangeSize :: (Valid a, Valid a) -> Int #

IsString a => IsString (Valid a) Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

fromString :: String -> Valid a #

Generic (Valid a) Source # 
Instance details

Defined in NewtypeZoo.Valid

Associated Types

type Rep (Valid a) :: Type -> Type #

Methods

from :: Valid a -> Rep (Valid a) x #

to :: Rep (Valid a) x -> Valid a #

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

Defined in NewtypeZoo.Valid

Methods

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

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

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

Monoid a => Monoid (Valid a) Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

mempty :: Valid a #

mappend :: Valid a -> Valid a -> Valid a #

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

Arbitrary a => Arbitrary (Valid a) Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

arbitrary :: Gen (Valid a) #

shrink :: Valid a -> [Valid a] #

Bits a => Bits (Valid a) Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

(.&.) :: Valid a -> Valid a -> Valid a #

(.|.) :: Valid a -> Valid a -> Valid a #

xor :: Valid a -> Valid a -> Valid a #

complement :: Valid a -> Valid a #

shift :: Valid a -> Int -> Valid a #

rotate :: Valid a -> Int -> Valid a #

zeroBits :: Valid a #

bit :: Int -> Valid a #

setBit :: Valid a -> Int -> Valid a #

clearBit :: Valid a -> Int -> Valid a #

complementBit :: Valid a -> Int -> Valid a #

testBit :: Valid a -> Int -> Bool #

bitSizeMaybe :: Valid a -> Maybe Int #

bitSize :: Valid a -> Int #

isSigned :: Valid a -> Bool #

shiftL :: Valid a -> Int -> Valid a #

unsafeShiftL :: Valid a -> Int -> Valid a #

shiftR :: Valid a -> Int -> Valid a #

unsafeShiftR :: Valid a -> Int -> Valid a #

rotateL :: Valid a -> Int -> Valid a #

rotateR :: Valid a -> Int -> Valid a #

popCount :: Valid a -> Int #

FiniteBits a => FiniteBits (Valid a) Source # 
Instance details

Defined in NewtypeZoo.Valid

Default a => Default (Valid a) Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

def :: Valid a #

NFData a => NFData (Valid a) Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

rnf :: Valid a -> () #

Random a => Random (Valid a) Source # 
Instance details

Defined in NewtypeZoo.Valid

Methods

randomR :: RandomGen g => (Valid a, Valid a) -> g -> (Valid a, g) #

random :: RandomGen g => g -> (Valid a, g) #

randomRs :: RandomGen g => (Valid a, Valid a) -> g -> [Valid a] #

randoms :: RandomGen g => g -> [Valid a] #

Generic1 Valid Source # 
Instance details

Defined in NewtypeZoo.Valid

Associated Types

type Rep1 Valid :: k -> Type #

Methods

from1 :: forall (a :: k). Valid a -> Rep1 Valid a #

to1 :: forall (a :: k). Rep1 Valid a -> Valid a #

type Rep (Valid a) Source # 
Instance details

Defined in NewtypeZoo.Valid

type Rep (Valid a) = D1 ('MetaData "Valid" "NewtypeZoo.Valid" "newtype-zoo-1.2.1.0-Km8yne3Tled57gA1FTjiYK" 'True) (C1 ('MetaCons "Valid" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))
type Rep1 Valid Source # 
Instance details

Defined in NewtypeZoo.Valid

type Rep1 Valid = D1 ('MetaData "Valid" "NewtypeZoo.Valid" "newtype-zoo-1.2.1.0-Km8yne3Tled57gA1FTjiYK" 'True) (C1 ('MetaCons "Valid" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1))

theValid :: forall a b p f. (Profunctor p, Functor f) => p a (f b) -> p (Valid a) (f (Valid b)) Source #