openapi_github/models/
package_version_metadata.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 PackageVersionMetadata {
16    #[serde(rename = "package_type")]
17    pub package_type: PackageType,
18    #[serde(rename = "container", skip_serializing_if = "Option::is_none")]
19    pub container: Option<Box<models::ContainerMetadata>>,
20    #[serde(rename = "docker", skip_serializing_if = "Option::is_none")]
21    pub docker: Option<Box<models::DockerMetadata>>,
22}
23
24impl PackageVersionMetadata {
25    pub fn new(package_type: PackageType) -> PackageVersionMetadata {
26        PackageVersionMetadata {
27            package_type,
28            container: None,
29            docker: None,
30        }
31    }
32}
33/// 
34#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
35pub enum PackageType {
36    #[serde(rename = "npm")]
37    Npm,
38    #[serde(rename = "maven")]
39    Maven,
40    #[serde(rename = "rubygems")]
41    Rubygems,
42    #[serde(rename = "docker")]
43    Docker,
44    #[serde(rename = "nuget")]
45    Nuget,
46    #[serde(rename = "container")]
47    Container,
48}
49
50impl Default for PackageType {
51    fn default() -> PackageType {
52        Self::Npm
53    }
54}
55