SkhcDb.QuerySourceModule representing more complex queries used inside shakuhachi.
val musics :
?rev:bool ->
Database.t ->
(MusicFile.t ->
Album.t ->
(string * Roles.t) Ids.Map.t ->
SkhcMetadata.Metadata.Values.t SkhcMetadata.Metadata.Properties.t ->
'a option) ->
('a list, Sqlite3.Rc.t * string) resultmusics db f queries all musics inside db and applies f to every element, keeping all Some elements returned by f. If rev, elements are returned in the reversed order.
val music :
Database.t ->
int64 ->
(MusicFile.t ->
Album.t ->
(string * Roles.t) Ids.Map.t ->
SkhcMetadata.Metadata.Values.t SkhcMetadata.Metadata.Properties.t ->
'a option) ->
('a option, Sqlite3.Rc.t * string) resultmusic db f queries the music with id inside db and applies f to it, keeping it if Some is returned by f.
val albums :
?rev:bool ->
Database.t ->
(Album.t -> Album.Stats.t -> (string * Roles.t) Ids.Map.t -> 'a option) ->
('a list, Sqlite3.Rc.t * string) resultalbums db f queries all albums inside db and applies f to every element, keeping all Some elements returned by f. If rev, elements are returned in the reversed order.
val album :
Database.t ->
int64 ->
(Album.t -> Album.Stats.t -> (string * Roles.t) Ids.Map.t -> 'a option) ->
('a option, Sqlite3.Rc.t * string) resultalbum db id f queries the album with id inside db and applies f to it, keeping it if Some is returned by f.
val artists :
Database.t ->
(Artist.t -> 'a option) ->
('a list, Sqlite3.Rc.t * string) resultartists db f queries all artists inside db and applies f to every element, keeping all Some elements returned by f.