UnconditionalJump
Contents
label
data Label a Source #
Defined in UnconditionalJump
Methods
contramap :: (a' -> a) -> Label a -> Label a' #
(>$) :: b -> Label b -> Label a #
label :: (Label a -> IO a) -> IO a Source #
Create a label.
goto :: Label a -> a -> IO notreached Source #
Go to a label.
labelWith :: (a -> c) -> (b -> c) -> (Label a -> IO b) -> IO c Source #
labelWith f g h = label (fmap g . h . contramap f)
labelE :: (Label a -> IO b) -> IO (Either a b) Source #
labelE = labelWith Left Right