File tree Expand file tree Collapse file tree 2 files changed +9
-2
lines changed
branches/incoming/src/libstd Expand file tree Collapse file tree 2 files changed +9
-2
lines changed Original file line number Diff line number Diff line change @@ -6,7 +6,7 @@ refs/heads/try: d324a424d8f84b1eb049b12cf34182bda91b0024
6
6
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
7
7
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
8
8
refs/heads/try2: d0c6ce338884ee21843f4b40bf6bf18d222ce5df
9
- refs/heads/incoming: 0e3825d38cc459f9fcb24f1e95d4f6e867265300
9
+ refs/heads/incoming: 6d7b143036e1d61c8f58864db3445d2a0ae4ad11
10
10
refs/heads/dist-snap: 2f32a1581f522e524009138b33b1c7049ced668d
11
11
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
12
12
refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503
Original file line number Diff line number Diff line change @@ -39,6 +39,13 @@ impl<T> Cell<T> {
39
39
fn is_empty ( ) -> bool {
40
40
self . value . is_none ( )
41
41
}
42
+
43
+ // Calls a closure with a reference to the value.
44
+ fn with_ref ( f : fn ( v : & T ) ) {
45
+ let val = move self . take ( ) ;
46
+ f ( & val) ;
47
+ self . put_back ( move val) ;
48
+ }
42
49
}
43
50
44
51
#[ test]
@@ -66,4 +73,4 @@ fn test_take_empty() {
66
73
fn test_put_back_non_empty ( ) {
67
74
let value_cell = Cell ( ~10 ) ;
68
75
value_cell. put_back ( ~20 ) ;
69
- }
76
+ }
You can’t perform that action at this time.
0 commit comments