34 lines
672 B
Rust
34 lines
672 B
Rust
use std::cell::RefCell;
|
|
|
|
fn main() {
|
|
let c = RefCell::new(42);
|
|
{
|
|
let s1 = c.borrow();
|
|
let _x: i32 = *s1;
|
|
let s2 = c.borrow();
|
|
let _x: i32 = *s1;
|
|
let _y: i32 = *s2;
|
|
let _x: i32 = *s1;
|
|
let _y: i32 = *s2;
|
|
}
|
|
{
|
|
let mut m = c.borrow_mut();
|
|
let _z: i32 = *m;
|
|
{
|
|
let s: &i32 = &*m;
|
|
let _x = *s;
|
|
}
|
|
*m = 23;
|
|
let _z: i32 = *m;
|
|
}
|
|
{
|
|
let s1 = c.borrow();
|
|
let _x: i32 = *s1;
|
|
let s2 = c.borrow();
|
|
let _x: i32 = *s1;
|
|
let _y: i32 = *s2;
|
|
let _x: i32 = *s1;
|
|
let _y: i32 = *s2;
|
|
}
|
|
}
|