src/bisection_tree/refine.rs

branch
dev
changeset 98
2e4517b55442
parent 94
1f19c6bbf07b
child 124
6aa955ad8122
equal deleted inserted replaced
97:4e80fb049dca 98:2e4517b55442
362 match self.data { 362 match self.data {
363 NodeOption::Branches(ref mut arc_b) => { 363 NodeOption::Branches(ref mut arc_b) => {
364 let mut container = container_arc.lock().unwrap(); 364 let mut container = container_arc.lock().unwrap();
365 // Safe: we just created arg_b and have a mutable exclusive 365 // Safe: we just created arg_b and have a mutable exclusive
366 // reference to self containing it. 366 // reference to self containing it.
367 #[cfg(feature = "nightly")] 367 #[cfg(nightly)]
368 unsafe { Arc::get_mut_unchecked(arc_b) } 368 unsafe { Arc::get_mut_unchecked(arc_b) }
369 .stage_refine(domain, &mut *container); 369 .stage_refine(domain, &mut *container);
370 #[cfg(not(feature = "nightly"))] 370 #[cfg(not(nightly))]
371 Arc::get_mut(arc_b).unwrap() 371 Arc::get_mut(arc_b).unwrap()
372 .stage_refine(domain, &mut *container); 372 .stage_refine(domain, &mut *container);
373 373
374 return Err(container) 374 return Err(container)
375 }, 375 },

mercurial