Trait ruma_events::Redact[][src]

pub trait Redact {
    type Redacted;
    fn redact(
        self,
        redaction: SyncRedactionEvent,
        version: &RoomVersionId
    ) -> Self::Redacted; }
Expand description

Trait to define the behavior of redacting an event.

Associated Types

type Redacted[src]

The redacted form of the event.

Required methods

fn redact(
    self,
    redaction: SyncRedactionEvent,
    version: &RoomVersionId
) -> Self::Redacted
[src]

Transforms self into a redacted form (removing most fields) according to the spec.

A small number of events have room-version specific redaction behavior, so a version has to be specified.

Implementors

impl Redact for AnyMessageEvent[src]

type Redacted = AnyRedactedMessageEvent

fn redact(
    self,
    redaction: SyncRedactionEvent,
    version: &RoomVersionId
) -> AnyRedactedMessageEvent
[src]

impl Redact for AnyRoomEvent[src]

fn redact(
    self,
    redaction: SyncRedactionEvent,
    version: &RoomVersionId
) -> Self::Redacted
[src]

Redacts self, referencing the given event in unsigned.redacted_because.

Does nothing for events that are already redacted.

type Redacted = AnyRedactedRoomEvent

impl Redact for AnyStateEvent[src]

type Redacted = AnyRedactedStateEvent

fn redact(
    self,
    redaction: SyncRedactionEvent,
    version: &RoomVersionId
) -> AnyRedactedStateEvent
[src]

impl Redact for AnyStrippedStateEvent[src]

impl Redact for AnySyncMessageEvent[src]

type Redacted = AnyRedactedSyncMessageEvent

fn redact(
    self,
    redaction: SyncRedactionEvent,
    version: &RoomVersionId
) -> AnyRedactedSyncMessageEvent
[src]

impl Redact for AnySyncRoomEvent[src]

fn redact(
    self,
    redaction: SyncRedactionEvent,
    version: &RoomVersionId
) -> Self::Redacted
[src]

Redacts self, referencing the given event in unsigned.redacted_because.

Does nothing for events that are already redacted.

type Redacted = AnyRedactedSyncRoomEvent

impl Redact for AnySyncStateEvent[src]

type Redacted = AnyRedactedSyncStateEvent

fn redact(
    self,
    redaction: SyncRedactionEvent,
    version: &RoomVersionId
) -> AnyRedactedSyncStateEvent
[src]