|
definition: |
deleteEntryR :: (Eq a, Read a, Show a, Eq b, Read b, Show b) =>
(Key -> (a,b) -> Dynamic) -> a -> b -> Transaction ()
deleteEntryR entrypred key1 key2 =
getDB (transformQ (map fst . filter (\ (_,i) -> i==(key1,key2)))
(allDBKeyInfos entrypred)) |>>= \kis ->
if null kis
then errorT (TError NoRelationshipError
("relationship for deletion not found for keys: "
++show key1++" "++show key2))
else deleteDBEntries entrypred kis
|
|
demand: |
no demanded arguments |
|
deterministic: |
deterministic operation |
|
documentation: |
Delete a relationship represented as an entity. If the relationship does not exist, a NoRelationshipError is raised. |
|
failfree: |
<FAILING> |
|
indeterministic: |
referentially transparent operation |
|
infix: |
no fixity defined |
|
iotype: |
{(_,_,_,_,_,_,_,_,_) |-> _}
|
|
name: |
deleteEntryR |
|
precedence: |
no precedence defined |
|
result-values: |
_ |
|
signature: |
(Prelude.Eq a, Prelude.Read a, Prelude.Show a, Prelude.Eq b, Prelude.Read b, Prelude.Show b) => (Prelude.Int -> (a, b) -> Database.KeyDatabaseSQLite.Dynamic) -> a -> b -> Database.KeyDatabaseSQLite.Transaction () |
|
solution-complete: |
operation might suspend on free variables |
|
terminating: |
possibly non-terminating |
|
totally-defined: |
possibly non-reducible on same data term |