about summary refs log tree commit diff
path: root/src/libstd/bitv.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/libstd/bitv.rs')
-rw-r--r--src/libstd/bitv.rs56
1 files changed, 28 insertions, 28 deletions
diff --git a/src/libstd/bitv.rs b/src/libstd/bitv.rs
index 254ed4d4ede..2cbc9ae0187 100644
--- a/src/libstd/bitv.rs
+++ b/src/libstd/bitv.rs
@@ -22,7 +22,7 @@ export eq_vec;
 // for the case where nbits <= 32.
 
 #[doc = "The bitvector type"]
-type bitv = @{storage: [mut uint], nbits: uint};
+type bitv = @{storage: [mut uint]/~, nbits: uint};
 
 const uint_bits: uint = 32u + (1u << 32u >> 27u);
 
@@ -183,7 +183,7 @@ Converts the bitvector to a vector of uint with the same length.
 
 Each uint in the resulting vector has either value 0u or 1u.
 "]
-fn to_vec(v: bitv) -> [uint] {
+fn to_vec(v: bitv) -> [uint]/~ {
     let sub = {|x|init_to_vec(v, x)};
     ret vec::from_fn::<uint>(v.nbits, sub);
 }
@@ -225,7 +225,7 @@ Compare a bitvector to a vector of uint
 The uint vector is expected to only contain the values 0u and 1u. Both the
 bitvector and vector must have the same length
 "]
-fn eq_vec(v0: bitv, v1: [uint]) -> bool {
+fn eq_vec(v0: bitv, v1: [uint]/~) -> bool {
     assert (v0.nbits == vec::len::<uint>(v1));
     let len = v0.nbits;
     let mut i = 0u;
@@ -262,9 +262,9 @@ mod tests {
     fn test_1_element() {
         let mut act;
         act = bitv(1u, false);
-        assert (eq_vec(act, [0u]));
+        assert (eq_vec(act, [0u]/~));
         act = bitv(1u, true);
-        assert (eq_vec(act, [1u]));
+        assert (eq_vec(act, [1u]/~));
     }
 
     #[test]
@@ -273,11 +273,11 @@ mod tests {
         // all 0
 
         act = bitv(10u, false);
-        assert (eq_vec(act, [0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u]));
+        assert (eq_vec(act, [0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u]/~));
         // all 1
 
         act = bitv(10u, true);
-        assert (eq_vec(act, [1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u]));
+        assert (eq_vec(act, [1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u]/~));
         // mixed
 
         act = bitv(10u, false);
@@ -286,7 +286,7 @@ mod tests {
         set(act, 2u, true);
         set(act, 3u, true);
         set(act, 4u, true);
-        assert (eq_vec(act, [1u, 1u, 1u, 1u, 1u, 0u, 0u, 0u, 0u, 0u]));
+        assert (eq_vec(act, [1u, 1u, 1u, 1u, 1u, 0u, 0u, 0u, 0u, 0u]/~));
         // mixed
 
         act = bitv(10u, false);
@@ -295,7 +295,7 @@ mod tests {
         set(act, 7u, true);
         set(act, 8u, true);
         set(act, 9u, true);
-        assert (eq_vec(act, [0u, 0u, 0u, 0u, 0u, 1u, 1u, 1u, 1u, 1u]));
+        assert (eq_vec(act, [0u, 0u, 0u, 0u, 0u, 1u, 1u, 1u, 1u, 1u]/~));
         // mixed
 
         act = bitv(10u, false);
@@ -303,7 +303,7 @@ mod tests {
         set(act, 3u, true);
         set(act, 6u, true);
         set(act, 9u, true);
-        assert (eq_vec(act, [1u, 0u, 0u, 1u, 0u, 0u, 1u, 0u, 0u, 1u]));
+        assert (eq_vec(act, [1u, 0u, 0u, 1u, 0u, 0u, 1u, 0u, 0u, 1u]/~));
     }
 
     #[test]
@@ -315,14 +315,14 @@ mod tests {
         assert (eq_vec(act,
                        [0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u,
                         0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u,
-                        0u, 0u, 0u, 0u, 0u]));
+                        0u, 0u, 0u, 0u, 0u]/~));
         // all 1
 
         act = bitv(31u, true);
         assert (eq_vec(act,
                        [1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u,
                         1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u,
-                        1u, 1u, 1u, 1u, 1u]));
+                        1u, 1u, 1u, 1u, 1u]/~));
         // mixed
 
         act = bitv(31u, false);
@@ -337,7 +337,7 @@ mod tests {
         assert (eq_vec(act,
                        [1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 0u, 0u, 0u, 0u, 0u,
                         0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u,
-                        0u, 0u, 0u, 0u, 0u]));
+                        0u, 0u, 0u, 0u, 0u]/~));
         // mixed
 
         act = bitv(31u, false);
@@ -352,7 +352,7 @@ mod tests {
         assert (eq_vec(act,
                        [0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u,
                         0u, 0u, 0u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 0u, 0u,
-                        0u, 0u, 0u, 0u, 0u]));
+                        0u, 0u, 0u, 0u, 0u]/~));
         // mixed
 
         act = bitv(31u, false);
@@ -366,7 +366,7 @@ mod tests {
         assert (eq_vec(act,
                        [0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u,
                         0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 1u, 1u,
-                        1u, 1u, 1u, 1u, 1u]));
+                        1u, 1u, 1u, 1u, 1u]/~));
         // mixed
 
         act = bitv(31u, false);
@@ -376,7 +376,7 @@ mod tests {
         assert (eq_vec(act,
                        [0u, 0u, 0u, 1u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u,
                         0u, 0u, 0u, 0u, 1u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u,
-                        0u, 0u, 0u, 0u, 1u]));
+                        0u, 0u, 0u, 0u, 1u]/~));
     }
 
     #[test]
@@ -388,14 +388,14 @@ mod tests {
         assert (eq_vec(act,
                        [0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u,
                         0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u,
-                        0u, 0u, 0u, 0u, 0u, 0u]));
+                        0u, 0u, 0u, 0u, 0u, 0u]/~));
         // all 1
 
         act = bitv(32u, true);
         assert (eq_vec(act,
                        [1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u,
                         1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u,
-                        1u, 1u, 1u, 1u, 1u, 1u]));
+                        1u, 1u, 1u, 1u, 1u, 1u]/~));
         // mixed
 
         act = bitv(32u, false);
@@ -410,7 +410,7 @@ mod tests {
         assert (eq_vec(act,
                        [1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 0u, 0u, 0u, 0u, 0u,
                         0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u,
-                        0u, 0u, 0u, 0u, 0u, 0u]));
+                        0u, 0u, 0u, 0u, 0u, 0u]/~));
         // mixed
 
         act = bitv(32u, false);
@@ -425,7 +425,7 @@ mod tests {
         assert (eq_vec(act,
                        [0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u,
                         0u, 0u, 0u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 0u, 0u,
-                        0u, 0u, 0u, 0u, 0u, 0u]));
+                        0u, 0u, 0u, 0u, 0u, 0u]/~));
         // mixed
 
         act = bitv(32u, false);
@@ -440,7 +440,7 @@ mod tests {
         assert (eq_vec(act,
                        [0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u,
                         0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 1u, 1u,
-                        1u, 1u, 1u, 1u, 1u, 1u]));
+                        1u, 1u, 1u, 1u, 1u, 1u]/~));
         // mixed
 
         act = bitv(32u, false);
@@ -451,7 +451,7 @@ mod tests {
         assert (eq_vec(act,
                        [0u, 0u, 0u, 1u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u,
                         0u, 0u, 0u, 0u, 1u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u,
-                        0u, 0u, 0u, 0u, 1u, 1u]));
+                        0u, 0u, 0u, 0u, 1u, 1u]/~));
     }
 
     #[test]
@@ -463,14 +463,14 @@ mod tests {
         assert (eq_vec(act,
                        [0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u,
                         0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u,
-                        0u, 0u, 0u, 0u, 0u, 0u, 0u]));
+                        0u, 0u, 0u, 0u, 0u, 0u, 0u]/~));
         // all 1
 
         act = bitv(33u, true);
         assert (eq_vec(act,
                        [1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u,
                         1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u,
-                        1u, 1u, 1u, 1u, 1u, 1u, 1u]));
+                        1u, 1u, 1u, 1u, 1u, 1u, 1u]/~));
         // mixed
 
         act = bitv(33u, false);
@@ -485,7 +485,7 @@ mod tests {
         assert (eq_vec(act,
                        [1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 0u, 0u, 0u, 0u, 0u,
                         0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u,
-                        0u, 0u, 0u, 0u, 0u, 0u, 0u]));
+                        0u, 0u, 0u, 0u, 0u, 0u, 0u]/~));
         // mixed
 
         act = bitv(33u, false);
@@ -500,7 +500,7 @@ mod tests {
         assert (eq_vec(act,
                        [0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u,
                         0u, 0u, 0u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 1u, 0u, 0u,
-                        0u, 0u, 0u, 0u, 0u, 0u, 0u]));
+                        0u, 0u, 0u, 0u, 0u, 0u, 0u]/~));
         // mixed
 
         act = bitv(33u, false);
@@ -515,7 +515,7 @@ mod tests {
         assert (eq_vec(act,
                        [0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u,
                         0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 1u, 1u,
-                        1u, 1u, 1u, 1u, 1u, 1u, 0u]));
+                        1u, 1u, 1u, 1u, 1u, 1u, 0u]/~));
         // mixed
 
         act = bitv(33u, false);
@@ -527,7 +527,7 @@ mod tests {
         assert (eq_vec(act,
                        [0u, 0u, 0u, 1u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u,
                         0u, 0u, 0u, 0u, 1u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u,
-                        0u, 0u, 0u, 0u, 1u, 1u, 1u]));
+                        0u, 0u, 0u, 0u, 1u, 1u, 1u]/~));
     }
 
     #[test]