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
|
@ -56,16 +56,16 @@ impl ActiveToolchain {
|
|||
fn spawn_tracker_task(window: &mut Window, cx: &mut Context<Self>) -> Task<Option<()>> {
|
||||
cx.spawn_in(window, async move |this, cx| {
|
||||
let active_file = this
|
||||
.update(cx, |this, _| {
|
||||
.read_with(cx, |this, _| {
|
||||
this.active_buffer
|
||||
.as_ref()
|
||||
.map(|(_, buffer, _)| buffer.clone())
|
||||
})
|
||||
.ok()
|
||||
.flatten()?;
|
||||
let workspace = this.update(cx, |this, _| this.workspace.clone()).ok()?;
|
||||
let workspace = this.read_with(cx, |this, _| this.workspace.clone()).ok()?;
|
||||
let language_name = active_file
|
||||
.update(cx, |this, _| Some(this.language()?.name()))
|
||||
.read_with(cx, |this, _| Some(this.language()?.name()))
|
||||
.ok()
|
||||
.flatten()?;
|
||||
let term = workspace
|
||||
|
@ -136,7 +136,7 @@ impl ActiveToolchain {
|
|||
) -> Task<Option<Toolchain>> {
|
||||
cx.spawn(async move |cx| {
|
||||
let workspace_id = workspace
|
||||
.update(cx, |this, _| this.database_id())
|
||||
.read_with(cx, |this, _| this.database_id())
|
||||
.ok()
|
||||
.flatten()?;
|
||||
let selected_toolchain = workspace
|
||||
|
@ -156,7 +156,7 @@ impl ActiveToolchain {
|
|||
Some(toolchain)
|
||||
} else {
|
||||
let project = workspace
|
||||
.update(cx, |this, _| this.project().clone())
|
||||
.read_with(cx, |this, _| this.project().clone())
|
||||
.ok()?;
|
||||
let toolchains = cx
|
||||
.update(|_, cx| {
|
||||
|
|
|
@ -164,13 +164,13 @@ impl ToolchainSelectorDelegate {
|
|||
let project = project.clone();
|
||||
async move |this, cx| {
|
||||
let term = project
|
||||
.update(cx, |this, _| {
|
||||
.read_with(cx, |this, _| {
|
||||
Project::toolchain_term(this.languages().clone(), language_name.clone())
|
||||
})
|
||||
.ok()?
|
||||
.await?;
|
||||
let relative_path = this
|
||||
.update(cx, |this, _| this.delegate.relative_path.clone())
|
||||
.read_with(cx, |this, _| this.delegate.relative_path.clone())
|
||||
.ok()?;
|
||||
let placeholder_text = format!(
|
||||
"Select a {} for `{}`…",
|
||||
|
@ -257,7 +257,7 @@ impl PickerDelegate for ToolchainSelectorDelegate {
|
|||
let toolchain = self.candidates.toolchains[string_match.candidate_id].clone();
|
||||
if let Some(workspace_id) = self
|
||||
.workspace
|
||||
.update(cx, |this, _| this.database_id())
|
||||
.read_with(cx, |this, _| this.database_id())
|
||||
.ok()
|
||||
.flatten()
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue