Agda-2.4.2.2: A dependently typed functional programming language and proof assistant

Safe HaskellNone
LanguageHaskell98

Agda.Utils.Null

Contents

Description

Overloaded null and empty for collections and sequences.

Synopsis

Documentation

class Null a where Source

Methods

empty :: a Source

null :: a -> Bool Source

Satisfying null empty == True.

Instances

Null () 
Null ByteString 
Null ProblemRest 
Null [a] 
Null (IntMap a) 
Null (Set a) 
Null (Seq a) 
Null (Bag a) 
Null (Range' a) 
Null a => Null (SizedThing a) 
Null (Tele a) 
Null a => Null (Problem' a) 
(Null a, Null b) => Null (a, b) 
Null (Map k a) 

Testing for null.

ifNull :: Null a => a -> b -> (a -> b) -> b Source

ifNullM :: (Monad m, Null a) => m a -> m b -> (a -> m b) -> m b Source

whenNull :: (Monad m, Null a) => a -> m () -> m () Source

unlessNull :: (Monad m, Null a) => a -> (a -> m ()) -> m () Source

whenNullM :: (Monad m, Null a) => m a -> m () -> m () Source

unlessNullM :: (Monad m, Null a) => m a -> (a -> m ()) -> m () Source