mirror of
https://github.com/roc-lang/roc.git
synced 2025-09-30 15:21:12 +00:00
Drop unnecessary Arc
This commit is contained in:
parent
6e4365732e
commit
beaa0ed6e1
1 changed files with 12 additions and 10 deletions
|
@ -86,11 +86,11 @@ enum Msg<'a> {
|
||||||
src: &'a str,
|
src: &'a str,
|
||||||
module_id: ModuleId,
|
module_id: ModuleId,
|
||||||
solved_module: SolvedModule,
|
solved_module: SolvedModule,
|
||||||
solved_subs: Arc<Solved<Subs>>,
|
solved_subs: Solved<Subs>,
|
||||||
module_timing: ModuleTiming,
|
module_timing: ModuleTiming,
|
||||||
},
|
},
|
||||||
Finished {
|
Finished {
|
||||||
solved: Solved<Subs>,
|
solved_subs: Solved<Subs>,
|
||||||
problems: Vec<solve::TypeError>,
|
problems: Vec<solve::TypeError>,
|
||||||
exposed_vars_by_symbol: Vec<(Symbol, Variable)>,
|
exposed_vars_by_symbol: Vec<(Symbol, Variable)>,
|
||||||
src: &'a str,
|
src: &'a str,
|
||||||
|
@ -479,7 +479,7 @@ pub fn load(
|
||||||
for msg in msg_rx.iter() {
|
for msg in msg_rx.iter() {
|
||||||
match msg {
|
match msg {
|
||||||
Msg::Finished {
|
Msg::Finished {
|
||||||
solved,
|
solved_subs,
|
||||||
problems,
|
problems,
|
||||||
exposed_vars_by_symbol,
|
exposed_vars_by_symbol,
|
||||||
src,
|
src,
|
||||||
|
@ -494,7 +494,13 @@ pub fn load(
|
||||||
.map_err(|_| LoadingProblem::MsgChannelDied)?;
|
.map_err(|_| LoadingProblem::MsgChannelDied)?;
|
||||||
}
|
}
|
||||||
|
|
||||||
return Ok(finish(state, solved, problems, exposed_vars_by_symbol, src));
|
return Ok(finish(
|
||||||
|
state,
|
||||||
|
solved_subs,
|
||||||
|
problems,
|
||||||
|
exposed_vars_by_symbol,
|
||||||
|
src,
|
||||||
|
));
|
||||||
}
|
}
|
||||||
msg => {
|
msg => {
|
||||||
// This is where most of the main thread's work gets done.
|
// This is where most of the main thread's work gets done.
|
||||||
|
@ -760,13 +766,9 @@ fn update<'a>(
|
||||||
state.timings.insert(module_id, module_timing);
|
state.timings.insert(module_id, module_timing);
|
||||||
|
|
||||||
if module_id == state.root_id {
|
if module_id == state.root_id {
|
||||||
let solved = Arc::try_unwrap(solved_subs).unwrap_or_else(|_| {
|
|
||||||
panic!("There were still outstanding Arc references to Solved<Subs>")
|
|
||||||
});
|
|
||||||
|
|
||||||
msg_tx
|
msg_tx
|
||||||
.send(Msg::Finished {
|
.send(Msg::Finished {
|
||||||
solved,
|
solved_subs,
|
||||||
problems: solved_module.problems,
|
problems: solved_module.problems,
|
||||||
exposed_vars_by_symbol: solved_module.exposed_vars_by_symbol,
|
exposed_vars_by_symbol: solved_module.exposed_vars_by_symbol,
|
||||||
src,
|
src,
|
||||||
|
@ -1307,7 +1309,7 @@ fn run_solve<'a>(
|
||||||
Msg::Solved {
|
Msg::Solved {
|
||||||
src,
|
src,
|
||||||
module_id,
|
module_id,
|
||||||
solved_subs: Arc::new(solved_subs),
|
solved_subs,
|
||||||
solved_module,
|
solved_module,
|
||||||
module_timing,
|
module_timing,
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue