prawn 0.0.3

Rust Client for the Tidal API providing comprehensive API coverag, and easy OAuth management
Documentation
/*
 * TIDAL API
 *
 * The TIDAL API is a [JSON:API](https://jsonapi.org/)–compliant web API that exposes TIDAL’s music, metadata, and user-related functionality through a consistent, resource-oriented design. More information and API management are available at [developer.tidal.com](developer.tidal.com)
 *
 * The version of the OpenAPI document: 1.0.36
 * 
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
#[serde(default)]
pub struct ArtistsRelationships {
    #[serde(rename = "albums")]
    pub albums: Box<models::MultiRelationshipDataDocument>,
    #[serde(rename = "biography")]
    pub biography: Box<models::SingleRelationshipDataDocument>,
    #[serde(rename = "followers")]
    pub followers: Box<models::ArtistsFollowersMultiRelationshipDataDocument>,
    #[serde(rename = "following")]
    pub following: Box<models::ArtistsFollowingMultiRelationshipDataDocument>,
    #[serde(rename = "owners")]
    pub owners: Box<models::MultiRelationshipDataDocument>,
    #[serde(rename = "profileArt")]
    pub profile_art: Box<models::MultiRelationshipDataDocument>,
    #[serde(rename = "radio")]
    pub radio: Box<models::MultiRelationshipDataDocument>,
    #[serde(rename = "roles")]
    pub roles: Box<models::MultiRelationshipDataDocument>,
    #[serde(rename = "similarArtists")]
    pub similar_artists: Box<models::MultiRelationshipDataDocument>,
    #[serde(rename = "trackProviders")]
    pub track_providers: Box<models::ArtistsTrackProvidersMultiRelationshipDataDocument>,
    #[serde(rename = "tracks")]
    pub tracks: Box<models::MultiRelationshipDataDocument>,
    #[serde(rename = "videos")]
    pub videos: Box<models::MultiRelationshipDataDocument>,
}

impl ArtistsRelationships {
    pub fn new(albums: models::MultiRelationshipDataDocument, biography: models::SingleRelationshipDataDocument, followers: models::ArtistsFollowersMultiRelationshipDataDocument, following: models::ArtistsFollowingMultiRelationshipDataDocument, owners: models::MultiRelationshipDataDocument, profile_art: models::MultiRelationshipDataDocument, radio: models::MultiRelationshipDataDocument, roles: models::MultiRelationshipDataDocument, similar_artists: models::MultiRelationshipDataDocument, track_providers: models::ArtistsTrackProvidersMultiRelationshipDataDocument, tracks: models::MultiRelationshipDataDocument, videos: models::MultiRelationshipDataDocument) -> ArtistsRelationships {
        ArtistsRelationships {
            albums: Box::new(albums),
            biography: Box::new(biography),
            followers: Box::new(followers),
            following: Box::new(following),
            owners: Box::new(owners),
            profile_art: Box::new(profile_art),
            radio: Box::new(radio),
            roles: Box::new(roles),
            similar_artists: Box::new(similar_artists),
            track_providers: Box::new(track_providers),
            tracks: Box::new(tracks),
            videos: Box::new(videos),
        }
    }
}