definition:
|
getEntriesCombined :: Specifier ->
CombinedDescription a ->
[Join] ->
Criteria ->
[Option] ->
Maybe Int ->
DBAction [a]
getEntriesCombined spec cd@(CD _ f _ _) joins crit op limit = do
let query = "select "++ trSpecifier spec ++ "* from " ++
getJoinString cd joins ++ " " ++
trCriteria crit ++ trOption op ++ trLimit limit ++ ";"
xs <- select query [] (getJoinTypes cd)
return (map f xs)
|
demand:
|
argument 2
|
deterministic:
|
deterministic operation
|
documentation:
|
--- Gets combined entries from the database.
--- @param spec - Specifier Distinct or All
--- @param cd - The CombinedDescription that describes the entity
--- @param joins - joins to combine the entity, they will be applied
--- in a left-associative manner
--- @param crit - Criteria for the query
--- @param op - order-by-clause
--- @param limit - int value to determine number of values returned
--- @return A `DBAction` with a list of entries
|
failfree:
|
<FAILING>
|
indeterministic:
|
referentially transparent operation
|
infix:
|
no fixity defined
|
iotype:
|
{(_,{CD},_,_,_,_) |-> _}
|
name:
|
getEntriesCombined
|
precedence:
|
no precedence defined
|
result-values:
|
_
|
signature:
|
Database.CDBI.Criteria.Specifier
-> Database.CDBI.Description.CombinedDescription a
-> [Database.CDBI.QueryTypes.Join] -> Database.CDBI.Criteria.Criteria
-> [Database.CDBI.Criteria.Option] -> Prelude.Maybe Prelude.Int
-> Database.CDBI.Connection.DBAction [a]
|
solution-complete:
|
operation might suspend on free variables
|
terminating:
|
possibly non-terminating
|
totally-defined:
|
possibly non-reducible on same data term
|