Struct ruma::state_res::room_version::RoomVersion
source · pub struct RoomVersion {Show 13 fields
pub disposition: RoomDisposition,
pub event_format: EventFormatVersion,
pub state_res: StateResolutionVersion,
pub enforce_key_validity: bool,
pub special_case_aliases_auth: bool,
pub strict_canonicaljson: bool,
pub limit_notifications_power_levels: bool,
pub extra_redaction_checks: bool,
pub allow_knocking: bool,
pub restricted_join_rules: bool,
pub knock_restricted_join_rule: bool,
pub integer_power_levels: bool,
pub use_room_create_sender: bool,
}
state-res
only.Fields§
§disposition: RoomDisposition
The stability of this room.
event_format: EventFormatVersion
The format of the EventId.
state_res: StateResolutionVersion
Which state resolution algorithm is used.
enforce_key_validity: bool
§special_case_aliases_auth: bool
m.room.aliases
had special auth rules and redaction rules
before room version 6.
before MSC2261/MSC2432,
strict_canonicaljson: bool
Strictly enforce canonical json, do not allow:
- Integers outside the range of [-2 ^ 53 + 1, 2 ^ 53 - 1]
- Floats
- NaN, Infinity, -Infinity
limit_notifications_power_levels: bool
Verify notifications key while checking m.room.power_levels.
bool: MSC2209: Check ‘notifications’
extra_redaction_checks: bool
Extra rules when verifying redaction events.
allow_knocking: bool
Allow knocking in event authentication.
See room v7 specification for more information.
restricted_join_rules: bool
Adds support for the restricted join rule.
See: MSC3289 for more information.
knock_restricted_join_rule: bool
Adds support for the knock_restricted join rule.
See: MSC3787 for more information.
integer_power_levels: bool
Enforces integer power levels.
See: MSC3667 for more information.
use_room_create_sender: bool
Determine the room creator using the m.room.create
event’s sender
,
instead of the event content’s creator
field.
See: MSC2175 for more information.
Implementations§
source§impl RoomVersion
impl RoomVersion
pub const V1: RoomVersion = _
pub const V2: RoomVersion = _
pub const V3: RoomVersion = _
pub const V4: RoomVersion = _
pub const V5: RoomVersion = _
pub const V6: RoomVersion = _
pub const V7: RoomVersion = _
pub const V8: RoomVersion = _
pub const V9: RoomVersion = Self::V8
pub const V10: RoomVersion = _
pub const V11: RoomVersion = _
pub fn new(version: &RoomVersionId) -> Result<RoomVersion, Error>
Auto Trait Implementations§
impl Freeze for RoomVersion
impl RefUnwindSafe for RoomVersion
impl Send for RoomVersion
impl Sync for RoomVersion
impl Unpin for RoomVersion
impl UnwindSafe for RoomVersion
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, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
source§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more