From 24e23ec3b8c2974cf7d908dc718af04889d71825 Mon Sep 17 00:00:00 2001 From: phoenix Date: Sat, 21 Jun 2025 16:08:53 -0400 Subject: [PATCH 1/4] Added TODO for later --- src/types.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/src/types.rs b/src/types.rs index 26dbca1..d5387a0 100644 --- a/src/types.rs +++ b/src/types.rs @@ -1,3 +1,4 @@ +// TODO: Have this derive Debug pub enum Type { Title, Artist, -- 2.43.0 From ca1443e93faf95d93ed655fca92a9d19deb53805 Mon Sep 17 00:00:00 2001 From: phoenix Date: Sat, 21 Jun 2025 16:32:23 -0400 Subject: [PATCH 2/4] Added function to set metadata value --- src/meta.rs | 17 +++++++++++++++++ src/types.rs | 21 +++++++++++++++++++++ 2 files changed, 38 insertions(+) diff --git a/src/meta.rs b/src/meta.rs index ef1f490..eea0f5e 100644 --- a/src/meta.rs +++ b/src/meta.rs @@ -244,6 +244,23 @@ pub mod metadata { Err(err) => Err(err), } } + + pub fn parse_value(value: types::MetadataType) -> String { + match value { + types::MetadataType::String(val) => { + val + } + types::MetadataType::Int(val) => { + val.to_string() + } + } + } + + pub fn set_meta_value(t: types::Type, filepath: &String, value: types::MetadataType) -> Result { + let parsed_val = parse_value(value); + + set_meta(t, filepath, &parsed_val) + } } #[cfg(test)] diff --git a/src/types.rs b/src/types.rs index d5387a0..c690dcd 100644 --- a/src/types.rs +++ b/src/types.rs @@ -12,6 +12,27 @@ pub enum Type { DiscCount, } +#[derive(Debug)] +pub enum MetadataType { + String(String), + Int(i32) +} + +impl MetadataType { + pub fn from_str(s: &str) -> Self { + MetadataType::String(s.to_string()) + } + + pub fn from_string(s: String) -> Self { + MetadataType::String(s) + } + + pub fn from_int(i: i32) -> Self { + MetadataType::Int(i) + } +} + + pub mod access { pub fn get_type(t: super::Type) -> Result { -- 2.43.0 From 2bd532e0dd5cd3d4e01b5d71c21ec8531958c39a Mon Sep 17 00:00:00 2001 From: phoenix Date: Sat, 21 Jun 2025 16:33:26 -0400 Subject: [PATCH 3/4] Code formatting --- src/meta.rs | 14 +++++++------- src/types.rs | 4 +--- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/src/meta.rs b/src/meta.rs index eea0f5e..85cc146 100644 --- a/src/meta.rs +++ b/src/meta.rs @@ -247,16 +247,16 @@ pub mod metadata { pub fn parse_value(value: types::MetadataType) -> String { match value { - types::MetadataType::String(val) => { - val - } - types::MetadataType::Int(val) => { - val.to_string() - } + types::MetadataType::String(val) => val, + types::MetadataType::Int(val) => val.to_string(), } } - pub fn set_meta_value(t: types::Type, filepath: &String, value: types::MetadataType) -> Result { + pub fn set_meta_value( + t: types::Type, + filepath: &String, + value: types::MetadataType, + ) -> Result { let parsed_val = parse_value(value); set_meta(t, filepath, &parsed_val) diff --git a/src/types.rs b/src/types.rs index c690dcd..c78713f 100644 --- a/src/types.rs +++ b/src/types.rs @@ -15,7 +15,7 @@ pub enum Type { #[derive(Debug)] pub enum MetadataType { String(String), - Int(i32) + Int(i32), } impl MetadataType { @@ -32,9 +32,7 @@ impl MetadataType { } } - pub mod access { - pub fn get_type(t: super::Type) -> Result { match t { super::Type::Title => Ok("TITLE".to_owned()), -- 2.43.0 From 140be111c6c9615ef57cf2574f28c119e23053bf Mon Sep 17 00:00:00 2001 From: phoenix Date: Sat, 21 Jun 2025 16:34:46 -0400 Subject: [PATCH 4/4] Warning fixes --- src/types.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/types.rs b/src/types.rs index c78713f..a43d92e 100644 --- a/src/types.rs +++ b/src/types.rs @@ -19,7 +19,7 @@ pub enum MetadataType { } impl MetadataType { - pub fn from_str(s: &str) -> Self { + pub fn from_std_str(s: &str) -> Self { MetadataType::String(s.to_string()) } -- 2.43.0