aboutsummaryrefslogtreecommitdiffstats
path: root/filamento/src/chat.rs
diff options
context:
space:
mode:
Diffstat (limited to 'filamento/src/chat.rs')
-rw-r--r--filamento/src/chat.rs16
1 files changed, 16 insertions, 0 deletions
diff --git a/filamento/src/chat.rs b/filamento/src/chat.rs
index bb0793f..5f58866 100644
--- a/filamento/src/chat.rs
+++ b/filamento/src/chat.rs
@@ -1,3 +1,5 @@
+use std::fmt::{Display, Write};
+
use chrono::{DateTime, Utc};
use jid::JID;
use rusqlite::{
@@ -34,6 +36,20 @@ pub enum Delivery {
Queued,
}
+impl Display for Delivery {
+ fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+ match self {
+ Delivery::Sending => f.write_str("sending"),
+ Delivery::Written => f.write_str("written"),
+ Delivery::Sent => f.write_str("sent"),
+ Delivery::Delivered => f.write_str("delivered"),
+ Delivery::Read => f.write_str("read"),
+ Delivery::Failed => f.write_str("failed"),
+ Delivery::Queued => f.write_str("queued"),
+ }
+ }
+}
+
impl ToSql for Delivery {
fn to_sql(&self) -> rusqlite::Result<rusqlite::types::ToSqlOutput<'_>> {
Ok(match self {