Skip to content

Commit 2f6d6fd

Browse files
committed
---
yaml --- r: 105030 b: refs/heads/snap-stage3 c: 1d98fe1 h: refs/heads/master v: v3
1 parent 67a4339 commit 2f6d6fd

File tree

2 files changed

+13
-17
lines changed

2 files changed

+13
-17
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
refs/heads/master: 62f1d68439dcfd509eaca29887afa97f22938373
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
4-
refs/heads/snap-stage3: 181875ca50853418abaa525614252cf46bfce10f
4+
refs/heads/snap-stage3: 1d98fe12a8b2ad954f01935552d23643e96a53af
55
refs/heads/try: db814977d07bd798feb24f6b74c00800ef458a13
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b

branches/snap-stage3/src/libstd/cell.rs

Lines changed: 12 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -22,19 +22,17 @@ use ty::Unsafe;
2222
/// A mutable memory location that admits only `Pod` data.
2323
pub struct Cell<T> {
2424
priv value: Unsafe<T>,
25-
priv marker1: marker::InvariantType<T>,
26-
priv marker2: marker::NoFreeze,
27-
priv marker3: marker::NoShare,
25+
priv marker1: marker::NoFreeze,
26+
priv marker2: marker::NoShare,
2827
}
2928

3029
impl<T:Pod> Cell<T> {
3130
/// Creates a new `Cell` containing the given value.
3231
pub fn new(value: T) -> Cell<T> {
3332
Cell {
34-
value: Unsafe{value: value, marker1: marker::InvariantType::<T>},
35-
marker1: marker::InvariantType::<T>,
36-
marker2: marker::NoFreeze,
37-
marker3: marker::NoShare,
33+
value: Unsafe::new(value),
34+
marker1: marker::NoFreeze,
35+
marker2: marker::NoShare,
3836
}
3937
}
4038

@@ -75,10 +73,9 @@ impl<T: fmt::Show> fmt::Show for Cell<T> {
7573
pub struct RefCell<T> {
7674
priv value: Unsafe<T>,
7775
priv borrow: BorrowFlag,
78-
priv marker1: marker::InvariantType<T>,
79-
priv marker2: marker::NoFreeze,
80-
priv marker3: marker::NoPod,
81-
priv marker4: marker::NoShare,
76+
priv marker1: marker::NoFreeze,
77+
priv marker2: marker::NoPod,
78+
priv marker3: marker::NoShare,
8279
}
8380

8481
// Values [1, MAX-1] represent the number of `Ref` active
@@ -91,11 +88,10 @@ impl<T> RefCell<T> {
9188
/// Create a new `RefCell` containing `value`
9289
pub fn new(value: T) -> RefCell<T> {
9390
RefCell {
94-
marker1: marker::InvariantType::<T>,
95-
marker2: marker::NoFreeze,
96-
marker3: marker::NoPod,
97-
marker4: marker::NoShare,
98-
value: Unsafe{value: value, marker1: marker::InvariantType::<T>},
91+
marker1: marker::NoFreeze,
92+
marker2: marker::NoPod,
93+
marker3: marker::NoShare,
94+
value: Unsafe::new(value),
9995
borrow: UNUSED,
10096
}
10197
}

0 commit comments

Comments
 (0)