#[non_exhaustive]pub struct RoomVersionRules {
pub disposition: RoomVersionDisposition,
pub event_id_format: EventIdFormatVersion,
pub room_id_format: RoomIdFormatVersion,
pub events_reference_format: EventsReferenceFormatVersion,
pub state_res: StateResolutionVersion,
pub enforce_key_validity: bool,
pub authorization: AuthorizationRules,
pub redaction: RedactionRules,
pub signatures: SignaturesRules,
pub event_format: EventFormatRules,
}Expand description
The rules applied to a room version.
This type can be constructed from one of its constants (like RoomVersionRules::V1), or from
RoomVersionId::rules().
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.disposition: RoomVersionDispositionThe stability of the room version.
event_id_format: EventIdFormatVersionThe format of event IDs.
room_id_format: RoomIdFormatVersionThe format of room IDs.
events_reference_format: EventsReferenceFormatVersionThe format of arrays referencing events in PDUs.
state_res: StateResolutionVersionThe state resolution algorithm used.
enforce_key_validity: boolWhether to enforce the key validity period when verifying signatures (spec), introduced in room version 5.
The tweaks in the authorization rules.
redaction: RedactionRulesThe tweaks in the redaction algorithm.
signatures: SignaturesRulesThe tweaks for verifying signatures.
event_format: EventFormatRulesThe tweaks for verifying the event format.
Implementations§
Source§impl RoomVersionRules
impl RoomVersionRules
Sourcepub const V1: RoomVersionRules
Available on crate feature events only.
pub const V1: RoomVersionRules
events only.Rules for room version 1.
Sourcepub const V2: RoomVersionRules
Available on crate feature events only.
pub const V2: RoomVersionRules
events only.Rules for room version 2.
Sourcepub const V3: RoomVersionRules
Available on crate feature events only.
pub const V3: RoomVersionRules
events only.Rules for room version 3.
Sourcepub const V4: RoomVersionRules
Available on crate feature events only.
pub const V4: RoomVersionRules
events only.Rules for room version 4.
Sourcepub const V5: RoomVersionRules
Available on crate feature events only.
pub const V5: RoomVersionRules
events only.Rules for room version 5.
Sourcepub const V6: RoomVersionRules
Available on crate feature events only.
pub const V6: RoomVersionRules
events only.Rules for room version 6.
Sourcepub const V7: RoomVersionRules
Available on crate feature events only.
pub const V7: RoomVersionRules
events only.Rules for room version 7.
Sourcepub const V8: RoomVersionRules
Available on crate feature events only.
pub const V8: RoomVersionRules
events only.Rules for room version 8.
Sourcepub const V9: RoomVersionRules
Available on crate feature events only.
pub const V9: RoomVersionRules
events only.Rules for room version 9.
Sourcepub const V10: RoomVersionRules
Available on crate feature events only.
pub const V10: RoomVersionRules
events only.Rules for room version 10.
Sourcepub const V11: RoomVersionRules
Available on crate feature events only.
pub const V11: RoomVersionRules
events only.Rules for room version 11.
Sourcepub const V12: RoomVersionRules
Available on crate feature events only.
pub const V12: RoomVersionRules
events only.Rules for room version 12.
Sourcepub const MSC2870: RoomVersionRules
Available on crate features events and unstable-msc2870 only.
pub const MSC2870: RoomVersionRules
events and unstable-msc2870 only.Rules for room version org.matrix.msc2870 (MSC2870).
Trait Implementations§
Source§impl Clone for RoomVersionRules
impl Clone for RoomVersionRules
Source§fn clone(&self) -> RoomVersionRules
fn clone(&self) -> RoomVersionRules
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for RoomVersionRules
impl RefUnwindSafe for RoomVersionRules
impl Send for RoomVersionRules
impl Sync for RoomVersionRules
impl Unpin for RoomVersionRules
impl UnwindSafe for RoomVersionRules
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, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
§fn new_handle(value: Arc<T>) -> Handle
fn new_handle(value: Arc<T>) -> Handle
§unsafe fn clone_handle(handle: Handle) -> Handle
unsafe fn clone_handle(handle: Handle) -> Handle
§unsafe fn consume_handle(handle: Handle) -> Arc<T>
unsafe fn consume_handle(handle: Handle) -> Arc<T>
Arc<> Read more