nothing package:universum

Performs default Applicative action if Nothing is given. Otherwise returns content of Just pured to Applicative.
>>> whenNothing Nothing [True, False]
[True,False]

>>> whenNothing (Just True) [True, False]
[True]
Monadic version of whenNothing.
Monadic version of whenNothingM_.
Performs default Applicative action if Nothing is given. Do nothing for Just. Convenient for discarding Just content.
>>> whenNothing_ Nothing $ putTextLn "Nothing!"
Nothing!

>>> whenNothing_ (Just True) $ putTextLn "Nothing!"
The isNothing function returns True iff its argument is Nothing.

Examples

Basic usage:
>>> isNothing (Just 3)
False
>>> isNothing (Just ())
False
>>> isNothing Nothing
True
Only the outer constructor is taken into consideration:
>>> isNothing (Just Nothing)
False