Rename Freeze
to FreezeLock
This commit is contained in:
parent
50f0d666d3
commit
a3ad045ea4
@ -62,7 +62,7 @@
|
||||
mod vec;
|
||||
|
||||
mod freeze;
|
||||
pub use freeze::{Freeze, FreezeReadGuard, FreezeWriteGuard};
|
||||
pub use freeze::{FreezeLock, FreezeReadGuard, FreezeWriteGuard};
|
||||
|
||||
mod mode {
|
||||
use super::Ordering;
|
||||
|
@ -12,7 +12,7 @@
|
||||
///
|
||||
/// Unlike `RwLock`, it can be used to prevent mutation past a point.
|
||||
#[derive(Default)]
|
||||
pub struct Freeze<T> {
|
||||
pub struct FreezeLock<T> {
|
||||
data: UnsafeCell<T>,
|
||||
frozen: AtomicBool,
|
||||
|
||||
@ -21,9 +21,9 @@ pub struct Freeze<T> {
|
||||
}
|
||||
|
||||
#[cfg(parallel_compiler)]
|
||||
unsafe impl<T: DynSync + DynSend> DynSync for Freeze<T> {}
|
||||
unsafe impl<T: DynSync + DynSend> DynSync for FreezeLock<T> {}
|
||||
|
||||
impl<T> Freeze<T> {
|
||||
impl<T> FreezeLock<T> {
|
||||
#[inline]
|
||||
pub fn new(value: T) -> Self {
|
||||
Self { data: UnsafeCell::new(value), frozen: AtomicBool::new(false), lock: RwLock::new(()) }
|
||||
@ -71,8 +71,8 @@ pub fn freeze(&self) -> &T {
|
||||
}
|
||||
}
|
||||
|
||||
/// A guard holding shared access to a `Freeze` which is in a locked state or frozen.
|
||||
#[must_use = "if unused the Freeze may immediately unlock"]
|
||||
/// A guard holding shared access to a `FreezeLock` which is in a locked state or frozen.
|
||||
#[must_use = "if unused the FreezeLock may immediately unlock"]
|
||||
pub struct FreezeReadGuard<'a, T> {
|
||||
_lock_guard: Option<ReadGuard<'a, ()>>,
|
||||
data: &'a T,
|
||||
@ -86,8 +86,8 @@ fn deref(&self) -> &T {
|
||||
}
|
||||
}
|
||||
|
||||
/// A guard holding mutable access to a `Freeze` which is in a locked state or frozen.
|
||||
#[must_use = "if unused the Freeze may immediately unlock"]
|
||||
/// A guard holding mutable access to a `FreezeLock` which is in a locked state or frozen.
|
||||
#[must_use = "if unused the FreezeLock may immediately unlock"]
|
||||
pub struct FreezeWriteGuard<'a, T> {
|
||||
_lock_guard: WriteGuard<'a, ()>,
|
||||
data: &'a mut T,
|
||||
|
@ -7,7 +7,9 @@
|
||||
use rustc_codegen_ssa::CodegenResults;
|
||||
use rustc_data_structures::steal::Steal;
|
||||
use rustc_data_structures::svh::Svh;
|
||||
use rustc_data_structures::sync::{AppendOnlyIndexVec, Freeze, Lrc, OnceLock, RwLock, WorkerLocal};
|
||||
use rustc_data_structures::sync::{
|
||||
AppendOnlyIndexVec, FreezeLock, Lrc, OnceLock, RwLock, WorkerLocal,
|
||||
};
|
||||
use rustc_hir::def_id::{StableCrateId, CRATE_DEF_ID, LOCAL_CRATE};
|
||||
use rustc_hir::definitions::Definitions;
|
||||
use rustc_incremental::DepGraphFuture;
|
||||
@ -197,7 +199,7 @@ pub fn global_ctxt(&'tcx self) -> Result<QueryResult<'_, &'tcx GlobalCtxt<'tcx>>
|
||||
self.codegen_backend().metadata_loader(),
|
||||
stable_crate_id,
|
||||
)) as _);
|
||||
let definitions = Freeze::new(Definitions::new(stable_crate_id));
|
||||
let definitions = FreezeLock::new(Definitions::new(stable_crate_id));
|
||||
let source_span = AppendOnlyIndexVec::new();
|
||||
let _id = source_span.push(krate.spans.inner_span);
|
||||
debug_assert_eq!(_id, CRATE_DEF_ID);
|
||||
|
@ -7,7 +7,7 @@
|
||||
use crate::Session;
|
||||
use rustc_ast as ast;
|
||||
use rustc_data_structures::owned_slice::OwnedSlice;
|
||||
use rustc_data_structures::sync::{self, AppendOnlyIndexVec, Freeze, RwLock};
|
||||
use rustc_data_structures::sync::{self, AppendOnlyIndexVec, FreezeLock, RwLock};
|
||||
use rustc_hir::def_id::{CrateNum, DefId, LocalDefId, StableCrateId, LOCAL_CRATE};
|
||||
use rustc_hir::definitions::{DefKey, DefPath, DefPathHash, Definitions};
|
||||
use rustc_span::hygiene::{ExpnHash, ExpnId};
|
||||
@ -261,5 +261,5 @@ pub struct Untracked {
|
||||
pub cstore: RwLock<Box<CrateStoreDyn>>,
|
||||
/// Reference span for definitions.
|
||||
pub source_span: AppendOnlyIndexVec<LocalDefId, Span>,
|
||||
pub definitions: Freeze<Definitions>,
|
||||
pub definitions: FreezeLock<Definitions>,
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user