Hoogle Search
Within LTS Haskell 22.21 (ghc-9.6.5)
Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.
-
row-types Data.Row A Variant with no options is uninhabited.
-
row-types Data.Row.Variants A Variant with no options is uninhabited.
-
data-diverse Data.Diverse.Which Analogous to absurd. Renamed impossible to avoid conflicts. Since 'Which '[]' values logically don't exist, this witnesses the logical reasoning tool of "ex falso quodlibet", ie "from falsehood, anything follows". A 'Which '[]' is a Which with no alternatives, which may occur as a Left-over from trialing a Which '[x] with one type. It is an uninhabited type, just like Void
-
data-diverse Data.Diverse.Which.Internal Analogous to absurd. Renamed impossible to avoid conflicts. Since 'Which '[]' values logically don't exist, this witnesses the logical reasoning tool of "ex falso quodlibet", ie "from falsehood, anything follows". A 'Which '[]' is a Which with no alternatives, which may occur as a Left-over from trialing a Which '[x] with one type. It is an uninhabited type, just like Void
impossible :: HasCallStack => ImpossibleAgda Agda.Utils.Impossible No documentation available.
-
An interface for reporting "impossible" errors
-
Agda Agda.Utils.Impossible "Impossible" errors, annotated with a file name and a line number corresponding to the source code location of the error.
Impossible :: CallStack -> ImpossibleAgda Agda.Utils.Impossible We reached a program point which should be unreachable.
class Disallowed "
Impossible " => Impossible ttrivial-constraint Data.Constraint.Trivial This constraint can never be fulfilled. One application in which this can be useful is as a default for a class-associated constraint; this basically disables any method with that constraint: so it can safely be left undefined. We provide the nope method as a special form of undefined, which actually guarantees it is safe through the type system. For instance, the old monad class with its controversial fail method could be changed to
class Applicative m => Monad m where (return,(>>=)) :: ... type FailableResult m :: * -> Constraint type FailableResult m = Impossible -- fail disabled by default fail :: FailableResult m a => String -> m a fail = nope
This would turn any use of fail in a “pure” monad (which does not actually define fail) into a type error. Meanwhile, “safe” uses of fail, such as in the IO monad, could be kept as-is, by making the instanceinstance Monad IO where (return,(>>=)) = ... type FailableResult m = Unconstrained fail = throwErrow
Other instances could support the fail method only selectively for particular result types, again by picking a suitable FailableResult constraint (e.g. Monoid).impossibleConstraintError :: Addr# -> abase Control.Exception.Base No documentation available.
Page 1 of many | Next