Module SkhcDb.PlaylistMusicsSource

Operations on playlist's music

Sourcemodule Column : sig ... end

AlbumParticipant's table columns

Sourcetype t

type of playlist's music

Sourceval init : playlist_id:int64 -> music_id:int64 -> t

init ~playlist_id ~music_id creates a new relation by associated a playlist with playlist_id and a music with music_id.

Sourceval table_name : string

table name

Sourceval equal : t -> t -> bool

equal p1 p2 tests whether p1 equals p2. All fields are used for the test.

Sourceval compare : t -> t -> int

compare p1 p2 is Stdlib.compare.

Sourceval playlist_find_from_id : Database.t -> int64 -> ((Playlist.t * Playlist.Stats.t) option, Sqlite3.Rc.t * string) result

playlist_find_from_id db id tries to find the playlist inside db with id

  • since 0.3.0
Sourceval filter_map : Database.t -> (t -> 'a option) -> ('a list, Sqlite3.Rc.t * string) result

filter_map db f queries all relations inside db and applies f to every element, keeping all Some elements returned by f.

Sourceval all : Database.t -> (t list, Sqlite3.Rc.t * string) result

all db queries all relations inside db.

Sourceval insert : Database.t -> t -> (unit, Sqlite3.Rc.t * string) result

insert db relation inserts relation inside db.

Sourceval remove : Database.t -> t -> (unit, Sqlite3.Rc.t * string) result

remove db relation removes relation from db.

Sourceval playlists_filter_map : Database.t -> ((Playlist.t * Playlist.Stats.t) -> 'a option) -> ('a list, Sqlite3.Rc.t * string) result

playlists_filter_map db f queries all playlists with thier stats inside db and applies f to every element, keeping all Some elements returned by f.

Sourceval playlists : Database.t -> ((Playlist.t * Playlist.Stats.t) list, Sqlite3.Rc.t * string) result

playlists db is playlists_filter_map db Option.some.

musics db playlist returns all musics contained in playlist.

Sourceval playlist_id : t -> int64

playlist_id m returns the playlist_id associated with m.

Sourceval music_id : t -> int64

music_id m returns the music_id associated with m.