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