pub struct EditedMessage {
pub parts: Vec<EditedMessagePart>,
}
Expand description
Main edited message container
§Background
iMessage permits editing sent messages up to five times within 15 minutes of sending the first message and unsending sent messages within 2 minutes.
§Internal Representation
Edited or unsent messages are stored with a NULL
text
field.
Edited messages include message_summary_info
that contains an array of
typedstream
data where each array item contains the edited
message. The order in the array represents the order the messages
were edited in, i.e. item 0
was the original and the last item is
the current message.
§Message Body Parts
- The
otr
key contains a dictionary of message body part indexes with some associated metadata. - The
rp
key contains a list of unsent message parts - The
ec
key contains a dictionary of edited message part indexes mapping to the history of edits- For each dictionary item in this array, The
d
key represents the time the message was edited and thet
key represents the message’sattributedBody
text in thetypedstream
format.
- For each dictionary item in this array, The
§Documentation
Apple describes editing and unsending messages here.
Fields§
§parts: Vec<EditedMessagePart>
Contains data representing each part of an edited message
Implementations§
Source§impl EditedMessage
impl EditedMessage
Sourcepub fn part(&self, index: usize) -> Option<&EditedMessagePart>
pub fn part(&self, index: usize) -> Option<&EditedMessagePart>
Gets the edited message data for the given message part index
Sourcepub fn is_unedited_at(&self, index: usize) -> bool
pub fn is_unedited_at(&self, index: usize) -> bool
Indicates if the given message part has been edited
Trait Implementations§
Source§impl<'a> BalloonProvider<'a> for EditedMessage
impl<'a> BalloonProvider<'a> for EditedMessage
Source§impl Debug for EditedMessage
impl Debug for EditedMessage
Source§impl PartialEq for EditedMessage
impl PartialEq for EditedMessage
impl StructuralPartialEq for EditedMessage
Auto Trait Implementations§
impl Freeze for EditedMessage
impl RefUnwindSafe for EditedMessage
impl Send for EditedMessage
impl Sync for EditedMessage
impl Unpin for EditedMessage
impl UnwindSafe for EditedMessage
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
Mutably borrows from an owned value. Read more