forem_openapi_client 1.0.1

Access Forem articles, users and other resources via API. For a real-world example of Forem in action, check out [DEV](https://www.dev.to). All endpoints can be accessed with the 'api-key' header and a accept header, but some of them are accessible publicly without authentication. Dates and date times, unless otherwise specified, must be in the [RFC 3339](https://tools.ietf.org/html/rfc3339) format. Generated at 2023-04-10T05:06:38.929104+00:00
Documentation
/*
 * Forem API V1
 *
 * Access Forem articles, users and other resources via API.         For a real-world example of Forem in action, check out [DEV](https://www.dev.to).         All endpoints can be accessed with the 'api-key' header and a accept header, but         some of them are accessible publicly without authentication.          Dates and date times, unless otherwise specified, must be in         the [RFC 3339](https://tools.ietf.org/html/rfc3339) format.
 *
 * The version of the OpenAPI document: 1.0.0
 *
 * Generated by: https://openapi-generator.tech
 */

/// SharedUser : The resource creator

#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
pub struct SharedUser {
    #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
    pub name: Option<String>,
    #[serde(rename = "username", skip_serializing_if = "Option::is_none")]
    pub username: Option<String>,
    #[serde(
        rename = "twitter_username",
        default,
        with = "::serde_with::rust::double_option",
        skip_serializing_if = "Option::is_none"
    )]
    pub twitter_username: Option<Option<String>>,
    #[serde(
        rename = "github_username",
        default,
        with = "::serde_with::rust::double_option",
        skip_serializing_if = "Option::is_none"
    )]
    pub github_username: Option<Option<String>>,
    #[serde(
        rename = "website_url",
        default,
        with = "::serde_with::rust::double_option",
        skip_serializing_if = "Option::is_none"
    )]
    pub website_url: Option<Option<String>>,
    /// Profile image (640x640)
    #[serde(rename = "profile_image", skip_serializing_if = "Option::is_none")]
    pub profile_image: Option<String>,
    /// Profile image (90x90)
    #[serde(rename = "profile_image_90", skip_serializing_if = "Option::is_none")]
    pub profile_image_90: Option<String>,
}

impl SharedUser {
    /// The resource creator
    pub fn new() -> SharedUser {
        SharedUser {
            name: None,
            username: None,
            twitter_username: None,
            github_username: None,
            website_url: None,
            profile_image: None,
            profile_image_90: None,
        }
    }
}