openapi_github/models/
nullable_minimal_repository.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/// NullableMinimalRepository : Minimal Repository
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct NullableMinimalRepository {
17    #[serde(rename = "id")]
18    pub id: i32,
19    #[serde(rename = "node_id")]
20    pub node_id: String,
21    #[serde(rename = "name")]
22    pub name: String,
23    #[serde(rename = "full_name")]
24    pub full_name: String,
25    #[serde(rename = "owner")]
26    pub owner: Box<models::SimpleUser>,
27    #[serde(rename = "private")]
28    pub private: bool,
29    #[serde(rename = "html_url")]
30    pub html_url: String,
31    #[serde(rename = "description", deserialize_with = "Option::deserialize")]
32    pub description: Option<String>,
33    #[serde(rename = "fork")]
34    pub fork: bool,
35    #[serde(rename = "url")]
36    pub url: String,
37    #[serde(rename = "archive_url")]
38    pub archive_url: String,
39    #[serde(rename = "assignees_url")]
40    pub assignees_url: String,
41    #[serde(rename = "blobs_url")]
42    pub blobs_url: String,
43    #[serde(rename = "branches_url")]
44    pub branches_url: String,
45    #[serde(rename = "collaborators_url")]
46    pub collaborators_url: String,
47    #[serde(rename = "comments_url")]
48    pub comments_url: String,
49    #[serde(rename = "commits_url")]
50    pub commits_url: String,
51    #[serde(rename = "compare_url")]
52    pub compare_url: String,
53    #[serde(rename = "contents_url")]
54    pub contents_url: String,
55    #[serde(rename = "contributors_url")]
56    pub contributors_url: String,
57    #[serde(rename = "deployments_url")]
58    pub deployments_url: String,
59    #[serde(rename = "downloads_url")]
60    pub downloads_url: String,
61    #[serde(rename = "events_url")]
62    pub events_url: String,
63    #[serde(rename = "forks_url")]
64    pub forks_url: String,
65    #[serde(rename = "git_commits_url")]
66    pub git_commits_url: String,
67    #[serde(rename = "git_refs_url")]
68    pub git_refs_url: String,
69    #[serde(rename = "git_tags_url")]
70    pub git_tags_url: String,
71    #[serde(rename = "git_url", skip_serializing_if = "Option::is_none")]
72    pub git_url: Option<String>,
73    #[serde(rename = "issue_comment_url")]
74    pub issue_comment_url: String,
75    #[serde(rename = "issue_events_url")]
76    pub issue_events_url: String,
77    #[serde(rename = "issues_url")]
78    pub issues_url: String,
79    #[serde(rename = "keys_url")]
80    pub keys_url: String,
81    #[serde(rename = "labels_url")]
82    pub labels_url: String,
83    #[serde(rename = "languages_url")]
84    pub languages_url: String,
85    #[serde(rename = "merges_url")]
86    pub merges_url: String,
87    #[serde(rename = "milestones_url")]
88    pub milestones_url: String,
89    #[serde(rename = "notifications_url")]
90    pub notifications_url: String,
91    #[serde(rename = "pulls_url")]
92    pub pulls_url: String,
93    #[serde(rename = "releases_url")]
94    pub releases_url: String,
95    #[serde(rename = "ssh_url", skip_serializing_if = "Option::is_none")]
96    pub ssh_url: Option<String>,
97    #[serde(rename = "stargazers_url")]
98    pub stargazers_url: String,
99    #[serde(rename = "statuses_url")]
100    pub statuses_url: String,
101    #[serde(rename = "subscribers_url")]
102    pub subscribers_url: String,
103    #[serde(rename = "subscription_url")]
104    pub subscription_url: String,
105    #[serde(rename = "tags_url")]
106    pub tags_url: String,
107    #[serde(rename = "teams_url")]
108    pub teams_url: String,
109    #[serde(rename = "trees_url")]
110    pub trees_url: String,
111    #[serde(rename = "clone_url", skip_serializing_if = "Option::is_none")]
112    pub clone_url: Option<String>,
113    #[serde(rename = "mirror_url", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
114    pub mirror_url: Option<Option<String>>,
115    #[serde(rename = "hooks_url")]
116    pub hooks_url: String,
117    #[serde(rename = "svn_url", skip_serializing_if = "Option::is_none")]
118    pub svn_url: Option<String>,
119    #[serde(rename = "homepage", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
120    pub homepage: Option<Option<String>>,
121    #[serde(rename = "language", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
122    pub language: Option<Option<String>>,
123    #[serde(rename = "forks_count", skip_serializing_if = "Option::is_none")]
124    pub forks_count: Option<i32>,
125    #[serde(rename = "stargazers_count", skip_serializing_if = "Option::is_none")]
126    pub stargazers_count: Option<i32>,
127    #[serde(rename = "watchers_count", skip_serializing_if = "Option::is_none")]
128    pub watchers_count: Option<i32>,
129    /// The size of the repository, in kilobytes. Size is calculated hourly. When a repository is initially created, the size is 0.
130    #[serde(rename = "size", skip_serializing_if = "Option::is_none")]
131    pub size: Option<i32>,
132    #[serde(rename = "default_branch", skip_serializing_if = "Option::is_none")]
133    pub default_branch: Option<String>,
134    #[serde(rename = "open_issues_count", skip_serializing_if = "Option::is_none")]
135    pub open_issues_count: Option<i32>,
136    #[serde(rename = "is_template", skip_serializing_if = "Option::is_none")]
137    pub is_template: Option<bool>,
138    #[serde(rename = "topics", skip_serializing_if = "Option::is_none")]
139    pub topics: Option<Vec<String>>,
140    #[serde(rename = "has_issues", skip_serializing_if = "Option::is_none")]
141    pub has_issues: Option<bool>,
142    #[serde(rename = "has_projects", skip_serializing_if = "Option::is_none")]
143    pub has_projects: Option<bool>,
144    #[serde(rename = "has_wiki", skip_serializing_if = "Option::is_none")]
145    pub has_wiki: Option<bool>,
146    #[serde(rename = "has_pages", skip_serializing_if = "Option::is_none")]
147    pub has_pages: Option<bool>,
148    #[serde(rename = "has_downloads", skip_serializing_if = "Option::is_none")]
149    pub has_downloads: Option<bool>,
150    #[serde(rename = "has_discussions", skip_serializing_if = "Option::is_none")]
151    pub has_discussions: Option<bool>,
152    #[serde(rename = "archived", skip_serializing_if = "Option::is_none")]
153    pub archived: Option<bool>,
154    #[serde(rename = "disabled", skip_serializing_if = "Option::is_none")]
155    pub disabled: Option<bool>,
156    #[serde(rename = "visibility", skip_serializing_if = "Option::is_none")]
157    pub visibility: Option<String>,
158    #[serde(rename = "pushed_at", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
159    pub pushed_at: Option<Option<String>>,
160    #[serde(rename = "created_at", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
161    pub created_at: Option<Option<String>>,
162    #[serde(rename = "updated_at", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
163    pub updated_at: Option<Option<String>>,
164    #[serde(rename = "permissions", skip_serializing_if = "Option::is_none")]
165    pub permissions: Option<Box<models::MinimalRepositoryPermissions>>,
166    #[serde(rename = "role_name", skip_serializing_if = "Option::is_none")]
167    pub role_name: Option<String>,
168    #[serde(rename = "temp_clone_token", skip_serializing_if = "Option::is_none")]
169    pub temp_clone_token: Option<String>,
170    #[serde(rename = "delete_branch_on_merge", skip_serializing_if = "Option::is_none")]
171    pub delete_branch_on_merge: Option<bool>,
172    #[serde(rename = "subscribers_count", skip_serializing_if = "Option::is_none")]
173    pub subscribers_count: Option<i32>,
174    #[serde(rename = "network_count", skip_serializing_if = "Option::is_none")]
175    pub network_count: Option<i32>,
176    #[serde(rename = "code_of_conduct", skip_serializing_if = "Option::is_none")]
177    pub code_of_conduct: Option<Box<models::CodeOfConduct>>,
178    #[serde(rename = "license", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
179    pub license: Option<Option<Box<models::MinimalRepositoryLicense>>>,
180    #[serde(rename = "forks", skip_serializing_if = "Option::is_none")]
181    pub forks: Option<i32>,
182    #[serde(rename = "open_issues", skip_serializing_if = "Option::is_none")]
183    pub open_issues: Option<i32>,
184    #[serde(rename = "watchers", skip_serializing_if = "Option::is_none")]
185    pub watchers: Option<i32>,
186    #[serde(rename = "allow_forking", skip_serializing_if = "Option::is_none")]
187    pub allow_forking: Option<bool>,
188    #[serde(rename = "web_commit_signoff_required", skip_serializing_if = "Option::is_none")]
189    pub web_commit_signoff_required: Option<bool>,
190    #[serde(rename = "security_and_analysis", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
191    pub security_and_analysis: Option<Option<Box<models::SecurityAndAnalysis>>>,
192}
193
194impl NullableMinimalRepository {
195    /// Minimal Repository
196    pub fn new(id: i32, node_id: String, name: String, full_name: String, owner: models::SimpleUser, private: bool, html_url: String, description: Option<String>, fork: bool, url: String, archive_url: String, assignees_url: String, blobs_url: String, branches_url: String, collaborators_url: String, comments_url: String, commits_url: String, compare_url: String, contents_url: String, contributors_url: String, deployments_url: String, downloads_url: String, events_url: String, forks_url: String, git_commits_url: String, git_refs_url: String, git_tags_url: String, issue_comment_url: String, issue_events_url: String, issues_url: String, keys_url: String, labels_url: String, languages_url: String, merges_url: String, milestones_url: String, notifications_url: String, pulls_url: String, releases_url: String, stargazers_url: String, statuses_url: String, subscribers_url: String, subscription_url: String, tags_url: String, teams_url: String, trees_url: String, hooks_url: String) -> NullableMinimalRepository {
197        NullableMinimalRepository {
198            id,
199            node_id,
200            name,
201            full_name,
202            owner: Box::new(owner),
203            private,
204            html_url,
205            description,
206            fork,
207            url,
208            archive_url,
209            assignees_url,
210            blobs_url,
211            branches_url,
212            collaborators_url,
213            comments_url,
214            commits_url,
215            compare_url,
216            contents_url,
217            contributors_url,
218            deployments_url,
219            downloads_url,
220            events_url,
221            forks_url,
222            git_commits_url,
223            git_refs_url,
224            git_tags_url,
225            git_url: None,
226            issue_comment_url,
227            issue_events_url,
228            issues_url,
229            keys_url,
230            labels_url,
231            languages_url,
232            merges_url,
233            milestones_url,
234            notifications_url,
235            pulls_url,
236            releases_url,
237            ssh_url: None,
238            stargazers_url,
239            statuses_url,
240            subscribers_url,
241            subscription_url,
242            tags_url,
243            teams_url,
244            trees_url,
245            clone_url: None,
246            mirror_url: None,
247            hooks_url,
248            svn_url: None,
249            homepage: None,
250            language: None,
251            forks_count: None,
252            stargazers_count: None,
253            watchers_count: None,
254            size: None,
255            default_branch: None,
256            open_issues_count: None,
257            is_template: None,
258            topics: None,
259            has_issues: None,
260            has_projects: None,
261            has_wiki: None,
262            has_pages: None,
263            has_downloads: None,
264            has_discussions: None,
265            archived: None,
266            disabled: None,
267            visibility: None,
268            pushed_at: None,
269            created_at: None,
270            updated_at: None,
271            permissions: None,
272            role_name: None,
273            temp_clone_token: None,
274            delete_branch_on_merge: None,
275            subscribers_count: None,
276            network_count: None,
277            code_of_conduct: None,
278            license: None,
279            forks: None,
280            open_issues: None,
281            watchers: None,
282            allow_forking: None,
283            web_commit_signoff_required: None,
284            security_and_analysis: None,
285        }
286    }
287}
288