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

Safe HaskellSafe
LanguageHaskell2010

Agda.Utils.Empty

Description

An empty type with some useful instances.

Synopsis

Documentation

data Empty Source #

Instances
Eq Empty Source # 
Instance details

Defined in Agda.Utils.Empty

Methods

(==) :: Empty -> Empty -> Bool

(/=) :: Empty -> Empty -> Bool

Data Empty Source # 
Instance details

Defined in Agda.Utils.Empty

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Empty -> c Empty

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Empty

toConstr :: Empty -> Constr

dataTypeOf :: Empty -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Empty)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Empty)

gmapT :: (forall b. Data b => b -> b) -> Empty -> Empty

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Empty -> r

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Empty -> r

gmapQ :: (forall d. Data d => d -> u) -> Empty -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> Empty -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Empty -> m Empty

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Empty -> m Empty

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Empty -> m Empty

Ord Empty Source # 
Instance details

Defined in Agda.Utils.Empty

Methods

compare :: Empty -> Empty -> Ordering

(<) :: Empty -> Empty -> Bool

(<=) :: Empty -> Empty -> Bool

(>) :: Empty -> Empty -> Bool

(>=) :: Empty -> Empty -> Bool

max :: Empty -> Empty -> Empty

min :: Empty -> Empty -> Empty

Show Empty Source # 
Instance details

Defined in Agda.Utils.Empty

Methods

showsPrec :: Int -> Empty -> ShowS

show :: Empty -> String

showList :: [Empty] -> ShowS

EmbPrj Empty Source # 
Instance details

Defined in Agda.TypeChecking.Serialise.Instances.Common

Methods

icode :: Empty -> S Int32 Source #

icod_ :: Empty -> S Int32 Source #

value :: Int32 -> R Empty Source #

toImpossible :: Empty -> IO Impossible Source #

toImpossible e extracts the Impossible value raised via (throwImpossible (Impossible "srcfullAgdaUtilsEmpty.hs" 33)) to create the element e of type Empty. It proceeds by evaluating e to weak head normal form and catching the exception. We are forced to wrap things in a Maybe because of catchImpossible's type.