1
use serde::{Deserialize, Serialize};
2

            
3
use crate::commands::{
4
    Command, Request, RequestParserResult, ResponseAttributes, ResponseParserError,
5
};
6

            
7
/// Displays the song info of the current song (same song that is identified in status)
8
pub struct CurrentSong;
9

            
10
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
11
pub struct CurrentSongResponse {}
12

            
13
impl Command for CurrentSong {
14
    type Response = CurrentSongResponse;
15
    const COMMAND: &'static str = "currentsong";
16

            
17
    fn parse_request(mut parts: std::str::SplitWhitespace<'_>) -> RequestParserResult<'_> {
18
        debug_assert!(parts.next().is_none());
19

            
20
        Ok((Request::CurrentSong, ""))
21
    }
22

            
23
    fn parse_response(
24
        _parts: ResponseAttributes<'_>,
25
    ) -> Result<Self::Response, ResponseParserError> {
26
        unimplemented!()
27
    }
28
}