Use read-only access methods for read-only entity operations (#31479)
Another follow-up to #31254 Release Notes: - N/A
This commit is contained in:
parent
4a577fff4a
commit
c208532693
79 changed files with 319 additions and 306 deletions
|
@ -1850,7 +1850,7 @@ mod tests {
|
|||
let (done_tx2, done_rx2) = smol::channel::unbounded();
|
||||
AnyProtoClient::from(client.clone()).add_entity_message_handler(
|
||||
move |entity: Entity<TestEntity>, _: TypedEnvelope<proto::JoinProject>, mut cx| {
|
||||
match entity.update(&mut cx, |entity, _| entity.id).unwrap() {
|
||||
match entity.read_with(&mut cx, |entity, _| entity.id).unwrap() {
|
||||
1 => done_tx1.try_send(()).unwrap(),
|
||||
2 => done_tx2.try_send(()).unwrap(),
|
||||
_ => unreachable!(),
|
||||
|
|
|
@ -324,7 +324,7 @@ impl UserStore {
|
|||
message: TypedEnvelope<proto::UpdateContacts>,
|
||||
mut cx: AsyncApp,
|
||||
) -> Result<()> {
|
||||
this.update(&mut cx, |this, _| {
|
||||
this.read_with(&mut cx, |this, _| {
|
||||
this.update_contacts_tx
|
||||
.unbounded_send(UpdateContacts::Update(message.payload))
|
||||
.unwrap();
|
||||
|
@ -660,7 +660,7 @@ impl UserStore {
|
|||
.await?;
|
||||
}
|
||||
|
||||
this.update(cx, |this, _| {
|
||||
this.read_with(cx, |this, _| {
|
||||
user_ids
|
||||
.iter()
|
||||
.map(|user_id| {
|
||||
|
@ -703,7 +703,7 @@ impl UserStore {
|
|||
let load_users = self.get_users(vec![user_id], cx);
|
||||
cx.spawn(async move |this, cx| {
|
||||
load_users.await?;
|
||||
this.update(cx, |this, _| {
|
||||
this.read_with(cx, |this, _| {
|
||||
this.users
|
||||
.get(&user_id)
|
||||
.cloned()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue