All checks were successful
Release Tagging / release (push) Successful in 28s
Rust Build / Check (push) Successful in 25s
Rust Build / Test Suite (push) Successful in 26s
Rust Build / Rustfmt (push) Successful in 28s
Rust Build / Clippy (push) Successful in 29s
Rust Build / build (push) Successful in 26s
Rust Build / Check (pull_request) Successful in 26s
Rust Build / Test Suite (pull_request) Successful in 27s
Rust Build / Rustfmt (pull_request) Successful in 28s
Rust Build / Clippy (pull_request) Successful in 28s
Rust Build / build (pull_request) Successful in 27s
Reviewed-on: phoenix/icarus-models#11 Co-authored-by: KD <kundeng94@gmail.com> Co-committed-by: KD <kundeng94@gmail.com>
43 lines
806 B
Rust
43 lines
806 B
Rust
use std::default::Default;
|
|
|
|
use serde::{Deserialize, Serialize};
|
|
|
|
#[derive(Clone, Debug, Deserialize, Serialize)]
|
|
pub struct AccessLevel {
|
|
pub id: i32,
|
|
pub level: String,
|
|
pub song_id: i32,
|
|
}
|
|
|
|
impl Default for AccessLevel {
|
|
fn default() -> Self {
|
|
AccessLevel {
|
|
id: -1,
|
|
level: String::new(),
|
|
song_id: -1,
|
|
}
|
|
}
|
|
}
|
|
|
|
pub fn default_level() -> AccessLevel {
|
|
AccessLevel {
|
|
id: -1,
|
|
level: String::from("Public"),
|
|
song_id: -1,
|
|
}
|
|
}
|
|
|
|
pub fn private_level() -> AccessLevel {
|
|
AccessLevel {
|
|
id: -1,
|
|
level: String::from("Private"),
|
|
song_id: -1,
|
|
}
|
|
}
|
|
|
|
impl AccessLevel {
|
|
pub fn _to_json(&self) -> Result<String, serde_json::Error> {
|
|
serde_json::to_string_pretty(&self)
|
|
}
|
|
}
|