use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct CodeScanningDefaultSetupUpdate {
#[serde(rename = "state", skip_serializing_if = "Option::is_none")]
pub state: Option<State>,
#[serde(rename = "query_suite", skip_serializing_if = "Option::is_none")]
pub query_suite: Option<QuerySuite>,
#[serde(rename = "languages", skip_serializing_if = "Option::is_none")]
pub languages: Option<Vec<Languages>>,
}
impl CodeScanningDefaultSetupUpdate {
pub fn new() -> CodeScanningDefaultSetupUpdate {
CodeScanningDefaultSetupUpdate {
state: None,
query_suite: None,
languages: None,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum State {
#[serde(rename = "configured")]
Configured,
#[serde(rename = "not-configured")]
NotConfigured,
}
impl Default for State {
fn default() -> State {
Self::Configured
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum QuerySuite {
#[serde(rename = "default")]
Default,
#[serde(rename = "extended")]
Extended,
}
impl Default for QuerySuite {
fn default() -> QuerySuite {
Self::Default
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Languages {
#[serde(rename = "c-cpp")]
CCpp,
#[serde(rename = "csharp")]
Csharp,
#[serde(rename = "go")]
Go,
#[serde(rename = "java-kotlin")]
JavaKotlin,
#[serde(rename = "javascript-typescript")]
JavascriptTypescript,
#[serde(rename = "python")]
Python,
#[serde(rename = "ruby")]
Ruby,
#[serde(rename = "swift")]
Swift,
}
impl Default for Languages {
fn default() -> Languages {
Self::CCpp
}
}