pub struct Message {Show 15 fields
pub account: String,
pub id: String,
pub conversation_id: String,
pub from: MessageFrom,
pub subject: String,
pub received_at: DateTime<Utc>,
pub is_read: bool,
pub preview: String,
pub flag_status: FlagStatus,
pub has_attachments: bool,
pub body: String,
pub body_content_type: BodyContentType,
pub to: Vec<MessageFrom>,
pub cc: Vec<MessageFrom>,
pub is_invite: bool,
}Expand description
One message in a mailbox, as presented to commands and output formatters.
account is the email of the signed-in account this message belongs to,
so multi-account merges can show provenance in a column.
Fields§
§account: String§id: String§conversation_id: StringGraph conversation (thread) id; empty for old cache entries.
from: MessageFrom§subject: String§received_at: DateTime<Utc>§is_read: bool§preview: String§flag_status: FlagStatusOutlook follow-up flag. Defaults to NotFlagged so old cache entries
and providers that don’t expose flags deserialize cleanly.
has_attachments: boolWhether the message carries one or more attachments. Surfaced in
list views as a 📎 indicator so the user can scan for “which mail
had that file.” Defaults to false for old cache entries.
body: StringFull body content as returned by Graph. For HTML emails this is the
raw markup; for plain-text emails it’s the original text. The
renderer uses [body_content_type] to decide how to convert it
(html2text → text+OSC8 links for HTML; word-wrap for text).
body_content_type: BodyContentType§to: Vec<MessageFrom>To recipients; empty for old cache entries and providers that don’t list them.
cc: Vec<MessageFrom>§is_invite: boolA meeting request (Graph eventMessageRequest).
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Message
impl<'de> Deserialize<'de> for Message
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for Message
impl StructuralPartialEq for Message
Auto Trait Implementations§
impl Freeze for Message
impl RefUnwindSafe for Message
impl Send for Message
impl Sync for Message
impl Unpin for Message
impl UnsafeUnpin for Message
impl UnwindSafe for Message
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.