module Darcs.Patch.Witnesses.Unsafe ( unsafeCoerceP , unsafeCoercePStart , unsafeCoercePEnd , unsafeCoerceP1 ) where import Unsafe.Coerce unsafeCoerceP :: a wX wY -> a wB wC unsafeCoerceP :: forall (a :: * -> * -> *) wX wY wB wC. a wX wY -> a wB wC unsafeCoerceP = a wX wY -> a wB wC forall a b. a -> b unsafeCoerce unsafeCoercePStart :: a wX1 wY -> a wX2 wY unsafeCoercePStart :: forall (a :: * -> * -> *) wX1 wY wX2. a wX1 wY -> a wX2 wY unsafeCoercePStart = a wX1 wY -> a wX2 wY forall a b. a -> b unsafeCoerce unsafeCoercePEnd :: a wX wY1 -> a wX wY2 unsafeCoercePEnd :: forall (a :: * -> * -> *) wX wY1 wY2. a wX wY1 -> a wX wY2 unsafeCoercePEnd = a wX wY1 -> a wX wY2 forall a b. a -> b unsafeCoerce unsafeCoerceP1 :: a wX -> a wY unsafeCoerceP1 :: forall (a :: * -> *) wX wY. a wX -> a wY unsafeCoerceP1 = a wX -> a wY forall a b. a -> b unsafeCoerce