pub fn songs<T: ToQueueRangeOrPlace>(&mut self, pos: T) -> Result<Vec<Song>> {
        let command = if T::is_id() {
            "playlistid"
        } else {
            "playlistinfo"
        };
        self.run_command(command, pos.to_range()).and_then(|_| self.read_structs("file"))
    }
// Queue control {{{
/// List given song or range of songs in a play queue
Queue control {{{
List given song or range of songs in a play queue
Queue control {{{ List given song or range of songs in a play queue
pub fn songs<T: ToQueueRangeOrPlace>(&mut self, pos: T) -> Result<Vec<Song>> {
        let command = if T::is_id() {
            "playlistid"
        } else {
            "playlistinfo"
        };
        self.run_command(command, pos.to_range()).and_then(|_| self.read_structs("file"))
    }
pub fn songs < T : ToQueueRangeOrPlace > ( & mut self , pos : T ) -> Result < Vec < Song > > { let command = if T :: is_id ( ) { " " } else { " " } ; self . run_command ( command , pos . to_range ( ) ) . and_then ( | _ | self . read_structs ( " " ) ) }
Queue control {{{
List given song or range of songs in a play queue
Queue control {{{ List given song or range of songs in a play queue
&mut self
pos
T