-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | A typeclass to determine if a given value is null. -- -- A typeclass to determine if a given foldable type (or other) is empty -- ~ null ~ invalid. The definition is intentionally vague, to cover -- types from Either to Text and Sets. @package IsNull @version 0.4.0.0 -- | A typeclass to determine if a given value is null. -- -- Strongly inspired by mono-traversable but with a simpler goal: -- supporting IsNull and nested IsNull operations. -- -- While the isNull function is equivalent to (==) -- mempty for most of the instances, not all -- Foldables are monoids, and not all monoids -- mempty means null: -- -- -- -- This class is suitable for use with -- GeneralizedNewtypeDeriving, thanks to the precious help of -- Ivan Miljenovic. -- -- Bugs, suggestions and comments are most welcomed! -- -- https://github.com/jcristovao/IsNull module Data.IsNull class IsNull a isNull :: IsNull a => a -> Bool -- | the logical negation of isNull notNull :: IsNull a => a -> Bool -- | Nested isNull -- --
--   >>> isNullN (Just "abc")
--   False
--   
-- --
--   >>> isNullN (Just "")
--   True
--   
-- --
--   >>> isNullN (Nothing :: Maybe String)
--   True
--   
isNullN :: (IsNull a, Foldable f) => f a -> Bool -- | Nested isNotNull notNullN :: (IsNull a, Foldable f) => f a -> Bool -- | Monadic isNull -- --
--   >>> isNullM [""]
--   [True]
--   
isNullM :: (IsNull a, Functor m) => m a -> m Bool -- | Monadic Nested isNull isNullNM :: (IsNull a, Functor m, Foldable f) => m (f a) -> m Bool (<\>) :: IsNull a => a -> a -> a instance [overlap ok] Foldable f => IsNull (f a) instance [overlap ok] IsNull IntSet instance [overlap ok] IsNull ByteString instance [overlap ok] IsNull ByteString instance [overlap ok] IsNull Text instance [overlap ok] IsNull Text