1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
16pub enum ScriptLang {
17 #[serde(rename = "python3")]
18 Python3,
19 #[serde(rename = "deno")]
20 Deno,
21 #[serde(rename = "go")]
22 Go,
23 #[serde(rename = "bash")]
24 Bash,
25 #[serde(rename = "powershell")]
26 Powershell,
27 #[serde(rename = "postgresql")]
28 Postgresql,
29 #[serde(rename = "mysql")]
30 Mysql,
31 #[serde(rename = "bigquery")]
32 Bigquery,
33 #[serde(rename = "snowflake")]
34 Snowflake,
35 #[serde(rename = "mssql")]
36 Mssql,
37 #[serde(rename = "oracledb")]
38 Oracledb,
39 #[serde(rename = "graphql")]
40 Graphql,
41 #[serde(rename = "nativets")]
42 Nativets,
43 #[serde(rename = "bun")]
44 Bun,
45 #[serde(rename = "php")]
46 Php,
47 #[serde(rename = "rust")]
48 Rust,
49 #[serde(rename = "ansible")]
50 Ansible,
51 #[serde(rename = "csharp")]
52 Csharp,
53 #[serde(rename = "nu")]
54 Nu,
55 #[serde(rename = "java")]
56 Java,
57 #[serde(rename = "ruby")]
58 Ruby,
59 #[serde(rename = "rlang")]
60 Rlang,
61 #[serde(rename = "duckdb")]
62 Duckdb,
63 #[serde(rename = "bunnative")]
64 Bunnative,
65 #[serde(rename = "mongodb")]
66 Mongodb,
67 #[serde(rename = "groovy")]
68 Groovy,
69 #[serde(rename = "dart")]
70 Dart,
71
72}
73
74impl std::fmt::Display for ScriptLang {
75 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
76 match self {
77 Self::Python3 => write!(f, "python3"),
78 Self::Deno => write!(f, "deno"),
79 Self::Go => write!(f, "go"),
80 Self::Bash => write!(f, "bash"),
81 Self::Powershell => write!(f, "powershell"),
82 Self::Postgresql => write!(f, "postgresql"),
83 Self::Mysql => write!(f, "mysql"),
84 Self::Bigquery => write!(f, "bigquery"),
85 Self::Snowflake => write!(f, "snowflake"),
86 Self::Mssql => write!(f, "mssql"),
87 Self::Oracledb => write!(f, "oracledb"),
88 Self::Graphql => write!(f, "graphql"),
89 Self::Nativets => write!(f, "nativets"),
90 Self::Bun => write!(f, "bun"),
91 Self::Php => write!(f, "php"),
92 Self::Rust => write!(f, "rust"),
93 Self::Ansible => write!(f, "ansible"),
94 Self::Csharp => write!(f, "csharp"),
95 Self::Nu => write!(f, "nu"),
96 Self::Java => write!(f, "java"),
97 Self::Ruby => write!(f, "ruby"),
98 Self::Rlang => write!(f, "rlang"),
99 Self::Duckdb => write!(f, "duckdb"),
100 Self::Bunnative => write!(f, "bunnative"),
101 Self::Mongodb => write!(f, "mongodb"),
102 Self::Groovy => write!(f, "groovy"),
103 Self::Dart => write!(f, "dart"),
104 }
105 }
106}
107
108impl Default for ScriptLang {
109 fn default() -> ScriptLang {
110 Self::Python3
111 }
112}
113