tmdb_api/common/
mod.rs

1use std::fmt::Display;
2
3pub mod country;
4pub mod credits;
5pub mod image;
6pub mod keyword;
7pub mod language;
8pub mod release_date;
9pub mod status;
10pub mod video;
11
12#[derive(Clone, Debug, PartialEq, Deserialize, Serialize)]
13pub struct PaginatedResult<T> {
14    pub page: u64,
15    pub total_results: u64,
16    pub total_pages: u64,
17    pub results: Vec<T>,
18}
19
20#[derive(Debug, Clone, Deserialize, Serialize)]
21#[serde(rename_all = "lowercase")]
22pub enum MediaType {
23    Movie,
24    Tv,
25    Collection,
26}
27
28impl Display for MediaType {
29    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
30        let s = match self {
31            MediaType::Movie => "movie",
32            MediaType::Tv => "tv",
33            MediaType::Collection => "collection",
34        };
35
36        write!(f, "{}", s)
37    }
38}