track_refcell_borrow_mut

Function track_refcell_borrow_mut 

Source
pub fn track_refcell_borrow_mut<'a, T>(
    borrow_id: &str,
    refcell_id: &str,
    location: &str,
    value: RefMut<'a, T>,
) -> RefMut<'a, T>
Expand description

Track RefCell::borrow_mut operation.

Records a RefCellBorrow event with is_mutable: true. Use this when obtaining an exclusive borrow from a RefCell.

§Arguments

  • borrow_id - Unique identifier for this borrow
  • refcell_id - Identifier of the RefCell being borrowed
  • location - Source location (e.g., “file.rs:42”)
  • value - The RefMut guard (returned unchanged)

§Returns

The input RefMut guard, unchanged.

§Examples

use std::cell::RefCell;

let cell = track_refcell_new("cell", RefCell::new(42));
{
    let mut guard = track_refcell_borrow_mut("borrow1", "cell", "main.rs:10", cell.borrow_mut());
    *guard = 100;
}
assert_eq!(*cell.borrow(), 100);