Struct matrix_sdk_base::sliding_sync::http::msc3575::request::List
source · #[non_exhaustive]pub struct List {
pub slow_get_all_rooms: bool,
pub ranges: Vec<(UInt, UInt)>,
pub sort: Vec<String>,
pub room_details: RoomDetailsConfig,
pub include_old_rooms: Option<IncludeOldRooms>,
pub include_heroes: Option<bool>,
pub filters: Option<SyncRequestListFilters>,
pub bump_event_types: Vec<TimelineEventType>,
}
Expand description
Sliding Sync Request for each list.
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.slow_get_all_rooms: bool
Put this list into the all-rooms-mode.
Settings this to true will inform the server that, no matter how slow
that might be, the clients wants all rooms the filters apply to. When operating
in this mode, ranges
and sort
will be ignored there will be no movement operations
(DELETE
followed by INSERT
) as the client has the entire list and can work out whatever
sort order they wish. There will still be DELETE
and INSERT
operations when rooms are
left or joined respectively. In addition, there will be an initial SYNC
operation to let
the client know which rooms in the rooms object were from this list.
ranges: Vec<(UInt, UInt)>
The ranges of rooms we’re interested in.
sort: Vec<String>
The sort ordering applied to this list of rooms. Sticky.
room_details: RoomDetailsConfig
The details to be included per room
include_old_rooms: Option<IncludeOldRooms>
If tombstoned rooms should be returned and if so, with what information attached.
include_heroes: Option<bool>
Request a stripped variant of membership events for the users used to calculate the room name.
Sticky.
filters: Option<SyncRequestListFilters>
Filters to apply to the list before sorting. Sticky.
bump_event_types: Vec<TimelineEventType>
An allow-list of event types which should be considered recent activity when sorting
by_recency
. By omitting event types from this field, clients can ensure that
uninteresting events (e.g. a profil rename) do not cause a room to jump to the top of its
list(s). Empty or omitted bump_event_types
have no effect; all events in a room will be
considered recent activity.
NB. Changes to bump_event_types will NOT cause the room list to be reordered; it will only affect the ordering of rooms due to future updates.
Sticky.
Trait Implementations§
source§impl Clone for SyncRequestList
impl Clone for SyncRequestList
source§fn clone(&self) -> SyncRequestList
fn clone(&self) -> SyncRequestList
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for SyncRequestList
impl Debug for SyncRequestList
source§impl Default for SyncRequestList
impl Default for SyncRequestList
source§fn default() -> SyncRequestList
fn default() -> SyncRequestList
source§impl<'de> Deserialize<'de> for SyncRequestList
impl<'de> Deserialize<'de> for SyncRequestList
source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<SyncRequestList, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<SyncRequestList, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
source§impl From<List> for SyncRequestList
impl From<List> for SyncRequestList
source§fn from(value: List) -> SyncRequestList
fn from(value: List) -> SyncRequestList
source§impl Serialize for SyncRequestList
impl Serialize for SyncRequestList
source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Auto Trait Implementations§
impl Freeze for SyncRequestList
impl RefUnwindSafe for SyncRequestList
impl Send for SyncRequestList
impl Sync for SyncRequestList
impl Unpin for SyncRequestList
impl UnwindSafe for SyncRequestList
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,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)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