Index
Modules:
listen2gether
,
sources/lb
,
sources/lfm
,
sources/utils
,
types
.
API symbols
`==`:
lfm: proc `==`(a, b: Attributes): bool
lfm: proc `==`(a, b: FMDate): bool
lfm: proc `==`(a, b: FMTrack): bool
lfm: proc `==`(a, b: Scrobble): bool
types: proc `==`(a, b: Listen): bool
types: proc `==`(a, b: User): bool
apiKey:
lfm: const apiKey
apiSecret:
lfm: const apiSecret
Attributes:
lfm: object Attributes
camel2snake:
lb: proc camel2snake(s: string): string
dumpHook:
lb: proc dumpHook(s: var string; v: object)
lb: proc dumpHook[T](s: var string; v: Option[T])
lb: proc dumpHook(s: var string; v: PlaylistExtension)
lb: proc dumpHook(s: var string; v: TrackExtension)
dumpKey:
lb: template dumpKey(s: var string; v: string)
FMDate:
lfm: object FMDate
FMTrack:
lfm: object FMTrack
genId:
types: proc genId(username: cstring; service: Service): cstring
initUser:
lb: proc initUser(lb: AsyncListenBrainz; username: cstring; token: cstring = ""): Future[ User]
lfm: proc initUser(fm: AsyncLastFM; username: cstring; sessionKey: cstring = ""): Future[ User]
lastFmService:
types: Service.lastFmService
Listen:
types: object Listen
listenBrainzService:
types: Service.listenBrainzService
log:
utils: proc log(msg: string)
logError:
utils: proc logError(msg: string)
newListen:
types: proc newListen(trackName, artistName: cstring; releaseName, recordingMbid, releaseMbid = none(cstring); artistMbids = none(seq[cstring]); trackNumber = none(int); listenedAt = none(int); mirrored, preMirror = none(bool)): Listen
newSession:
types: proc newSession(id: cstring = "session"; users: seq[cstring] = @[]; mirror = none(cstring)): Session
newUser:
types: proc newUser(username: cstring; service: Service; token, sessionKey: cstring = ""; lastUpdateTs = 0; playingNow = none(Listen); listenHistory: seq[Listen] = @[]): User
pageUser:
lb: proc pageUser(lb: AsyncListenBrainz; user: var User; endInd: var int; inc: int = 10): owned( Future[void])
lfm: proc pageUser(fm: AsyncLastFM; user: var User; endInd: var int; inc: int = 10): owned( Future[void])
renameHook:
lb: proc renameHook(v: var PlaylistExtension; fieldName: var string)
lb: proc renameHook(v: var TrackExtension; fieldName: var string)
Scrobble:
lfm: object Scrobble
Service:
types: enum Service
Session:
types: type Session
submitMirrorQueue:
lb: proc submitMirrorQueue(lb: AsyncListenBrainz; user: var User): owned(Future[void])
lfm: proc submitMirrorQueue(fm: AsyncLastFM; user: var User): owned(Future[void])
to:
utils: proc to(val: Option[cstring]): Option[string]
utils: proc to(val: Option[int]): Option[string]
utils: proc to(val: Option[seq[cstring]]): Option[seq[string]]
utils: proc to(val: Option[seq[string]]): Option[seq[cstring]]
utils: proc to(val: Option[string]): Option[cstring]
utils: proc to(val: string): Option[cstring]
toInt:
utils: proc toInt(val: Option[string]): Option[int]
unionToInt:
utils: proc unionToInt[T: Union](val: T): Option[int]
updateUser:
lb: proc updateUser(lb: AsyncListenBrainz; user: User; resetLastUpdate, preMirror = false): Future[ User]
lfm: proc updateUser(fm: AsyncLastFM; user: User; resetLastUpdate, preMirror = false): Future[ User]
User:
types: type User
userBaseUrl:
lb: const userBaseUrl
lfm: const userBaseUrl