about summary refs log tree commit diff
path: root/src/libcore/mutable.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/libcore/mutable.rs')
-rw-r--r--src/libcore/mutable.rs30
1 files changed, 14 insertions, 16 deletions
diff --git a/src/libcore/mutable.rs b/src/libcore/mutable.rs
index 506da9d3909..5948c630cd8 100644
--- a/src/libcore/mutable.rs
+++ b/src/libcore/mutable.rs
@@ -8,15 +8,12 @@ dynamic checks: your program will fail if you attempt to perform
 mutation when the data structure should be immutable.
 
 */
-
-#[forbid(deprecated_mode)];
+// tjc: re-forbid deprecated modes after snapshot
 #[forbid(deprecated_pattern)];
 
 use util::with;
 use cast::transmute_immut;
 
-export Mut;
-
 enum Mode { ReadOnly, Mutable, Immutable }
 
 struct Data<T> {
@@ -24,18 +21,18 @@ struct Data<T> {
     priv mut mode: Mode
 }
 
-type Mut<T> = Data<T>;
+pub type Mut<T> = Data<T>;
 
-fn Mut<T>(+t: T) -> Mut<T> {
+pub fn Mut<T>(t: T) -> Mut<T> {
     Data {value: t, mode: ReadOnly}
 }
 
-fn unwrap<T>(+m: Mut<T>) -> T {
+pub fn unwrap<T>(m: Mut<T>) -> T {
     // Borrowck should prevent us from calling unwrap while the value
     // is in use, as that would be a move from a borrowed value.
     assert (m.mode as uint) == (ReadOnly as uint);
-    let Data {value, mode: _} <- m;
-    return move value;
+    let Data {value: move value, mode: _} = move m;
+    return value;
 }
 
 impl<T> Data<T> {
@@ -71,7 +68,7 @@ impl<T> Data<T> {
 #[test]
 #[ignore(cfg(windows))]
 #[should_fail]
-fn test_mut_in_imm() {
+pub fn test_mut_in_imm() {
     let m = @Mut(1);
     do m.borrow_imm |_p| {
         do m.borrow_mut |_q| {
@@ -83,7 +80,7 @@ fn test_mut_in_imm() {
 #[test]
 #[ignore(cfg(windows))]
 #[should_fail]
-fn test_imm_in_mut() {
+pub fn test_imm_in_mut() {
     let m = @Mut(1);
     do m.borrow_mut |_p| {
         do m.borrow_imm |_q| {
@@ -93,7 +90,7 @@ fn test_imm_in_mut() {
 }
 
 #[test]
-fn test_const_in_mut() {
+pub fn test_const_in_mut() {
     let m = @Mut(1);
     do m.borrow_mut |p| {
         do m.borrow_const |q| {
@@ -105,7 +102,7 @@ fn test_const_in_mut() {
 }
 
 #[test]
-fn test_mut_in_const() {
+pub fn test_mut_in_const() {
     let m = @Mut(1);
     do m.borrow_const |p| {
         do m.borrow_mut |q| {
@@ -117,7 +114,7 @@ fn test_mut_in_const() {
 }
 
 #[test]
-fn test_imm_in_const() {
+pub fn test_imm_in_const() {
     let m = @Mut(1);
     do m.borrow_const |p| {
         do m.borrow_imm |q| {
@@ -127,7 +124,7 @@ fn test_imm_in_const() {
 }
 
 #[test]
-fn test_const_in_imm() {
+pub fn test_const_in_imm() {
     let m = @Mut(1);
     do m.borrow_imm |p| {
         do m.borrow_const |q| {
@@ -140,7 +137,7 @@ fn test_const_in_imm() {
 #[test]
 #[ignore(cfg(windows))]
 #[should_fail]
-fn test_mut_in_imm_in_const() {
+pub fn test_mut_in_imm_in_const() {
     let m = @Mut(1);
     do m.borrow_const |_p| {
         do m.borrow_imm |_q| {
@@ -149,3 +146,4 @@ fn test_mut_in_imm_in_const() {
         }
     }
 }
+