From 36a19182bec171d6376e51f5689aaf70b9d6fbad Mon Sep 17 00:00:00 2001 From: jacqueline Date: Thu, 7 Mar 2024 17:22:06 +1100 Subject: Use luals-stubs as the source of truth for docs, instead of maintaining separate docs stubs Includes introducing a cool new script to turn lua-language-server's json output into markdown documentation. --- luals-stubs/queue.lua | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) (limited to 'luals-stubs/queue.lua') diff --git a/luals-stubs/queue.lua b/luals-stubs/queue.lua index 08247799..353b4823 100644 --- a/luals-stubs/queue.lua +++ b/luals-stubs/queue.lua @@ -1,15 +1,31 @@ --- @meta ---- Properties and functions for inspecting and manipulating the track playback queue +--- The `queue` module contains Properties and functions that relate to the +--- device's playback queue. This is a persistent, disk-backed list of TrackIds +--- that includes the currently playing track, tracks that have been played, +--- and tracks that are scheduled to be played after the current track has +--- finished. --- @class queue --- @field position Property The index in the queue of the currently playing track. This may be zero if the queue is empty. Writeable. --- @field size Property The total number of tracks in the queue, including tracks which have already been played. --- @field replay Property Whether or not the queue will be restarted after the final track is played. Writeable. --- @field repeat_track Property Whether or not the current track will repeat indefinitely. Writeable. ---- @field random Property Determines whether, when progressing to the next track in the queue, the next track will be chosen randomly. The random selection algorithm used is a Miller Shuffle, which guarantees that no repeat selections will be made until every item in the queue has been played. Writeable. +--- @field random Property Determines whether, when progressing to the next track in the queue, the next track will be chosen randomly. The random selection algorithm used is a Miller Shuffle, which guarantees that no repeat selections will be made until every item in the queue has been played. Writeable. local queue = {} +--- Adds the given track or database iterator to the end of the queue. Database +--- iterators passed to this method will be unnested and expanded into the track +--- ids they contain. +--- @param val TrackId|Iterator +function queue.add(val) end + +--- Removes all tracks from the queue. +function queue.clear() end + +--- Moves forward in the play queue, looping back around to the beginning if repeat is on. function queue.next() end + +--- Moves backward in the play queue, looping back around to the end if repeat is on. function queue.previous() end return queue -- cgit v1.2.3