diff options
Diffstat (limited to 'src/database/submission.rs')
| -rw-r--r-- | src/database/submission.rs | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/database/submission.rs b/src/database/submission.rs new file mode 100644 index 0000000..2ec1287 --- /dev/null +++ b/src/database/submission.rs @@ -0,0 +1,31 @@ +use serde::Serialize; + +#[derive(Serialize)] +pub struct Submission { + id: i64, + user_id: i64, + problem_id: i64, + code: String, + language: String, + validated: bool, +} + +impl Submission { + pub(super) fn new( + id: i64, + user_id: i64, + problem_id: i64, + code: String, + language: String, + validated: bool, + ) -> Self { + Self { id, user_id, problem_id, code, language, validated } + } + + pub fn id(&self) -> i64 { self.id } + pub fn user_id(&self) -> i64 { self.user_id } + pub fn problem_id(&self) -> i64 { self.problem_id } + pub fn code(&self) -> &str { &self.code } + pub fn language(&self) -> &str { &self.language } + pub fn validated(&self) -> bool { self.validated } +} |
