openapi_github/models/
project_collaborator_permission.rs

1/*
2 * GitHub's official OpenAPI spec + Octokit extension
3 *
4 * OpenAPI specs from https://github.com/github/rest-api-description with the 'x-octokit' extension required by the Octokit SDKs
5 *
6 * The version of the OpenAPI document: 16.6.0
7 * 
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// ProjectCollaboratorPermission : Project Collaborator Permission
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct ProjectCollaboratorPermission {
17    #[serde(rename = "permission")]
18    pub permission: String,
19    #[serde(rename = "user", deserialize_with = "Option::deserialize")]
20    pub user: Option<Box<models::NullableSimpleUser>>,
21}
22
23impl ProjectCollaboratorPermission {
24    /// Project Collaborator Permission
25    pub fn new(permission: String, user: Option<models::NullableSimpleUser>) -> ProjectCollaboratorPermission {
26        ProjectCollaboratorPermission {
27            permission,
28            user: user.map(Box::new),
29        }
30    }
31}
32