Skip to content

Commit 2fca05a

Browse files
committed
Rename BorrowFlag type to BorrowCounter
It's actually used as a counter so update the name to reflect that.
1 parent 718df66 commit 2fca05a

File tree

1 file changed

+12
-12
lines changed

1 file changed

+12
-12
lines changed

library/core/src/cell.rs

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -719,7 +719,7 @@ impl<T, const N: usize> Cell<[T; N]> {
719719
#[rustc_diagnostic_item = "RefCell"]
720720
#[stable(feature = "rust1", since = "1.0.0")]
721721
pub struct RefCell<T: ?Sized> {
722-
borrow: Cell<BorrowFlag>,
722+
borrow: Cell<BorrowCounter>,
723723
// Stores the location of the earliest currently active borrow.
724724
// This gets updated whenever we go from having zero borrows
725725
// to having a single borrow. When a borrow occurs, this gets included
@@ -800,22 +800,22 @@ fn panic_already_mutably_borrowed(err: BorrowError) -> ! {
800800
//
801801
// `Ref` and `RefMut` are both two words in size, and so there will likely never
802802
// be enough `Ref`s or `RefMut`s in existence to overflow half of the `usize`
803-
// range. Thus, a `BorrowFlag` will probably never overflow or underflow.
803+
// range. Thus, a `BorrowCounter` will probably never overflow or underflow.
804804
// However, this is not a guarantee, as a pathological program could repeatedly
805805
// create and then mem::forget `Ref`s or `RefMut`s. Thus, all code must
806806
// explicitly check for overflow and underflow in order to avoid unsafety, or at
807807
// least behave correctly in the event that overflow or underflow happens (e.g.,
808808
// see BorrowRef::new).
809-
type BorrowFlag = isize;
810-
const UNUSED: BorrowFlag = 0;
809+
type BorrowCounter = isize;
810+
const UNUSED: BorrowCounter = 0;
811811

812812
#[inline(always)]
813-
fn is_writing(x: BorrowFlag) -> bool {
813+
fn is_writing(x: BorrowCounter) -> bool {
814814
x < UNUSED
815815
}
816816

817817
#[inline(always)]
818-
fn is_reading(x: BorrowFlag) -> bool {
818+
fn is_reading(x: BorrowCounter) -> bool {
819819
x > UNUSED
820820
}
821821

@@ -1395,12 +1395,12 @@ impl<T> From<T> for RefCell<T> {
13951395
impl<T: CoerceUnsized<U>, U> CoerceUnsized<RefCell<U>> for RefCell<T> {}
13961396

13971397
struct BorrowRef<'b> {
1398-
borrow: &'b Cell<BorrowFlag>,
1398+
borrow: &'b Cell<BorrowCounter>,
13991399
}
14001400

14011401
impl<'b> BorrowRef<'b> {
14021402
#[inline]
1403-
fn new(borrow: &'b Cell<BorrowFlag>) -> Option<BorrowRef<'b>> {
1403+
fn new(borrow: &'b Cell<BorrowCounter>) -> Option<BorrowRef<'b>> {
14041404
let b = borrow.get().wrapping_add(1);
14051405
if !is_reading(b) {
14061406
// Incrementing borrow can result in a non-reading value (<= 0) in these cases:
@@ -1441,7 +1441,7 @@ impl Clone for BorrowRef<'_> {
14411441
debug_assert!(is_reading(borrow));
14421442
// Prevent the borrow counter from overflowing into
14431443
// a writing borrow.
1444-
assert!(borrow != BorrowFlag::MAX);
1444+
assert!(borrow != BorrowCounter::MAX);
14451445
self.borrow.set(borrow + 1);
14461446
BorrowRef { borrow: self.borrow }
14471447
}
@@ -1789,7 +1789,7 @@ impl<'b, T: ?Sized> RefMut<'b, T> {
17891789
}
17901790

17911791
struct BorrowRefMut<'b> {
1792-
borrow: &'b Cell<BorrowFlag>,
1792+
borrow: &'b Cell<BorrowCounter>,
17931793
}
17941794

17951795
impl Drop for BorrowRefMut<'_> {
@@ -1803,7 +1803,7 @@ impl Drop for BorrowRefMut<'_> {
18031803

18041804
impl<'b> BorrowRefMut<'b> {
18051805
#[inline]
1806-
fn new(borrow: &'b Cell<BorrowFlag>) -> Option<BorrowRefMut<'b>> {
1806+
fn new(borrow: &'b Cell<BorrowCounter>) -> Option<BorrowRefMut<'b>> {
18071807
// NOTE: Unlike BorrowRefMut::clone, new is called to create the initial
18081808
// mutable reference, and so there must currently be no existing
18091809
// references. Thus, while clone increments the mutable refcount, here
@@ -1827,7 +1827,7 @@ impl<'b> BorrowRefMut<'b> {
18271827
let borrow = self.borrow.get();
18281828
debug_assert!(is_writing(borrow));
18291829
// Prevent the borrow counter from underflowing.
1830-
assert!(borrow != BorrowFlag::MIN);
1830+
assert!(borrow != BorrowCounter::MIN);
18311831
self.borrow.set(borrow - 1);
18321832
BorrowRefMut { borrow: self.borrow }
18331833
}

0 commit comments

Comments
 (0)