Compare commits
3 Commits
62c2b8c158
...
b1c07186c8
| Author | SHA1 | Date | |
|---|---|---|---|
| b1c07186c8 | |||
| 77d6fcaf84 | |||
| decc7eb548 |
1
.gitignore
vendored
1
.gitignore
vendored
@ -1,2 +1,3 @@
|
||||
/target
|
||||
/rklipd/target
|
||||
/rklipd/*.json
|
||||
|
||||
@ -23,14 +23,15 @@ pub enum ClipboardData {
|
||||
}
|
||||
|
||||
mod base64_vec {
|
||||
use base64::{Engine as _, engine::general_purpose::STANDARD};
|
||||
use serde::{Deserialize, Deserializer, Serializer};
|
||||
pub fn serialize<S: Serializer>(v: &Vec<u8>, serializer: S) -> Result<S::Ok, S::Error> {
|
||||
let base64_str = base64::encode(v);
|
||||
let base64_str = STANDARD.encode(v);
|
||||
serializer.serialize_str(&base64_str)
|
||||
}
|
||||
pub fn deserialize<'de, D: Deserializer<'de>>(deserializer: D) -> Result<Vec<u8>, D::Error> {
|
||||
let base64_str = String::deserialize(deserializer)?;
|
||||
match base64::decode(base64_str) {
|
||||
match STANDARD.decode(base64_str) {
|
||||
Ok(bytes) => Ok(bytes),
|
||||
Err(error_base64) => {
|
||||
let error_serde = serde::de::Error::custom(error_base64);
|
||||
|
||||
@ -12,5 +12,6 @@ fn main() -> Result<(), Box<dyn Error>> {
|
||||
}
|
||||
entry.write_entry_json(path)?;
|
||||
let loaded_entry = ClipboardEntry::read_entry_json(path)?;
|
||||
println!("{:#?}", loaded_entry);
|
||||
Ok(())
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user