Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- liftedCast :: forall source target. (TryCast source target, Lift target, Show source, Typeable source, Typeable target) => source -> Q (TExp target)
- liftedFrom :: forall s target source. (Identity s ~ source, TryCast source target, Lift target, Show source, Typeable source, Typeable target) => source -> Q (TExp target)
- liftedInto :: forall t source target. (Identity t ~ target, TryCast source target, Lift target, Show source, Typeable source, Typeable target) => source -> Q (TExp target)
Documentation
liftedCast :: forall source target. (TryCast source target, Lift target, Show source, Typeable source, Typeable target) => source -> Q (TExp target) Source #
This is like unsafeCast
except that it works at compile time
rather than runtime.
-- Avoid this: unsafeCast "some literal" -- Prefer this: $$(liftedCast "some literal")
liftedFrom :: forall s target source. (Identity s ~ source, TryCast source target, Lift target, Show source, Typeable source, Typeable target) => source -> Q (TExp target) Source #
This is like unsafeFrom
except that it works at compile time
rather than runtime.
-- Avoid this: unsafeFrom @s "some literal" -- Prefer this: $$(liftedFrom @s "some literal")
liftedInto :: forall t source target. (Identity t ~ target, TryCast source target, Lift target, Show source, Typeable source, Typeable target) => source -> Q (TExp target) Source #
This is like unsafeInto
except that it works at compile time
rather than runtime.
-- Avoid this: unsafeInto @t "some literal" -- Prefer this: $$(liftedInto @t "some literal")