Move membership filter into closure.
Signed-off-by: Jason Volk <jason@zemos.net>
This commit is contained in:
@@ -46,6 +46,11 @@ pub(crate) async fn get_member_events_route(
|
|||||||
|
|
||||||
let membership = body.membership.as_ref();
|
let membership = body.membership.as_ref();
|
||||||
let not_membership = body.not_membership.as_ref();
|
let not_membership = body.not_membership.as_ref();
|
||||||
|
let membership_filter = |content: &RoomMemberEventContent| {
|
||||||
|
membership.is_none_or(is_equal_to!(&content.membership))
|
||||||
|
&& not_membership.is_none_or(is_not_equal_to!(&content.membership))
|
||||||
|
};
|
||||||
|
|
||||||
Ok(get_member_events::v3::Response {
|
Ok(get_member_events::v3::Response {
|
||||||
chunk: services
|
chunk: services
|
||||||
.state_accessor
|
.state_accessor
|
||||||
@@ -55,12 +60,8 @@ pub(crate) async fn get_member_events_route(
|
|||||||
.map(at!(1))
|
.map(at!(1))
|
||||||
.ready_filter(|pdu| {
|
.ready_filter(|pdu| {
|
||||||
pdu.get_content::<RoomMemberEventContent>()
|
pdu.get_content::<RoomMemberEventContent>()
|
||||||
.is_ok_and(|content| {
|
.as_ref()
|
||||||
let event_membership = content.membership;
|
.is_ok_and(membership_filter)
|
||||||
|
|
||||||
membership.is_none_or(is_equal_to!(&event_membership))
|
|
||||||
&& not_membership.is_none_or(is_not_equal_to!(&event_membership))
|
|
||||||
})
|
|
||||||
})
|
})
|
||||||
.map(Event::into_format)
|
.map(Event::into_format)
|
||||||
.collect()
|
.collect()
|
||||||
|
|||||||
Reference in New Issue
Block a user