Add function keyE.
Give a value, keyE lifts the Key for that value into the query expression.
keyE :: Esqueleto query expr backend =>
Value (Key entity) -> expr (Value (Key entity))
This commit is contained in:
parent
4c14076d35
commit
0b830771ea
@ -81,6 +81,7 @@ module Database.Esqueleto
|
||||
|
||||
-- * Helpers
|
||||
, valkey
|
||||
, keyE
|
||||
|
||||
-- * Re-exports
|
||||
-- $reexports
|
||||
@ -376,6 +377,16 @@ valkey :: Esqueleto query expr backend =>
|
||||
valkey = val . Key . PersistInt64
|
||||
|
||||
|
||||
-- | Given a value, lift the Key for that value into the query expression.
|
||||
keyE :: Esqueleto query expr backend =>
|
||||
Value (Key entity) -> expr (Value (Key entity))
|
||||
keyE v =
|
||||
valkey $
|
||||
case (unKey . unValue) v of
|
||||
PersistInt64 x -> x
|
||||
_ -> error "Esqueleto.keyE: Impossible!"
|
||||
|
||||
|
||||
----------------------------------------------------------------------
|
||||
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user