chiark / gitweb /
cargo update: Update to latest ArrayVec, const generics
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Tue, 18 May 2021 01:20:17 +0000 (02:20 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Tue, 18 May 2021 19:12:47 +0000 (20:12 +0100)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
13 files changed:
Cargo.lock
apitest/at-otter.rs
apitest/main.rs
base/Cargo.toml
base/geometry.rs
base/misc.rs
src/bin/otter.rs
src/bundles.rs
src/clock.rs
src/gamestate.rs
src/global.rs
src/shapelib.rs
src/utils.rs

index 022dc2cb0e6804483fa9d69986f6f71b2cdb6104..2e6c9d040c7e3785435cb850b954562a22162dd8 100644 (file)
@@ -113,6 +113,12 @@ version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b"
 
+[[package]]
+name = "arrayvec"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5a2f58b0bb10c380af2b26e57212856b8c9a59e0925b4c20f4a174a49734eaf7"
+
 [[package]]
 name = "ascii"
 version = "1.0.0"
@@ -212,7 +218,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "afa748e348ad3be8263be728124b24a24f268266f6f5d58af9d75f6a40b5c587"
 dependencies = [
  "arrayref",
- "arrayvec",
+ "arrayvec 0.5.2",
  "constant_time_eq",
 ]
 
@@ -1720,7 +1726,7 @@ version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "16cb54cd28cb3d2e964d9444ca185676a94fd9b7cce5f02b22c717947ed8e9a2"
 dependencies = [
- "arrayvec",
+ "arrayvec 0.5.2",
 ]
 
 [[package]]
@@ -2335,7 +2341,7 @@ dependencies = [
 name = "otter-base"
 version = "0.5.1"
 dependencies = [
- "arrayvec",
+ "arrayvec 0.7.0",
  "derive_more",
  "extend",
  "fehler",
index 46e6016a1dd9a7f60134fd0fd0a7eaf0f1938e2f..1810d27b5ab9832809eff6723886da60fee4d67c 100644 (file)
@@ -44,7 +44,7 @@ impl Ctx {
         p.info["desc"] == otter::hand::UNCLAIMED_HAND_DESC
       })
       .map(|(i,_)| i)
-      .collect::<ArrayVec<[_;1]>>()
+      .collect::<ArrayVec<_,1>>()
       .into_inner().unwrap();
     dbgc!(&hand);
 
@@ -60,7 +60,7 @@ impl Ctx {
         .filter(|(_i,p)| p.info["desc"].as_str().unwrap().ends_with(" pawn"))
         .map(|(i,_)| i)
         .take(2)
-        .collect::<ArrayVec<[_;2]>>()
+        .collect::<ArrayVec<_,2>>()
         .into_inner().unwrap();
 
       pawns.sort_by_key(|&p| -pieces[p].pos.x());
index 5938b8c596e1bf732d93199599868d5f6b7e71d4..9336a0d0e91e438d5a685c7f6aa83e2f0870642a 100644 (file)
@@ -518,7 +518,7 @@ impl UsualCtx {
       let pieces = session.pieces::<PIA>()?;
       let llm = pieces.into_iter()
         .filter(|pi| pi.info["desc"] == "a library load area marker")
-        .collect::<ArrayVec<_>>();
+        .collect::<ArrayVec<_,2>>();
       let llm: [_;2] = llm.into_inner().unwrap();
       dbgc!(&llm);
 
@@ -632,7 +632,7 @@ impl UsualCtx {
     let [alice, bob]: [Player; 2] =
       su.ds.setup_static_users(&mut mc, default())?
       .into_iter().map(|sus| Player { nick: sus.nick, url: sus.url })
-      .collect::<ArrayVec<_>>().into_inner().unwrap();
+      .collect::<ArrayVec<_,2>>().into_inner().unwrap();
     drop(mc);
 
     let su_rc = Rc::new(RefCell::new(su));
index 95504a467aadac4228ce434f103f074f823a25ba..cbf161f0856b149a9fed7254e8ddf483421cee5b 100644 (file)
@@ -22,7 +22,7 @@ path="lib.rs"
 
 [dependencies]
 
-arrayvec="0.5"
+arrayvec="0.7"
 derive_more="0.99"
 extend="1"
 htmlescape="0.3"
index 44a31d7ae6b7360eb291f737d17af9e90801f506..9d2385a788eaecf4a747829e422473b1eb171332 100644 (file)
@@ -131,7 +131,7 @@ impl<T> PosC<T> {
   #[throws(PosCFromIteratorError)]
   pub fn from_iter<I: Iterator<Item=T>>(i: I) -> Self { PosC{ coords:
     i
-      .collect::<ArrayVec<_>>()
+      .collect::<ArrayVec<_,2>>()
       .into_inner()
       .map_err(|_| PosCFromIteratorError)?
   }}
@@ -140,7 +140,7 @@ impl<T> PosC<T> {
 impl<T> PosC<T> where T: Debug {
   pub fn from_iter_2<I: Iterator<Item=T>>(i: I) -> Self { PosC{ coords:
     i
-      .collect::<ArrayVec<_>>()
+      .collect::<ArrayVec<_,2>>()
       .into_inner()
       .unwrap()
   }}
@@ -161,7 +161,7 @@ impl<T:Debug> PosC<T> {
     I: Iterator<Item=Result<T,E>>
   >(i: I) -> Self { PosC{ coords:
     i
-      .collect::<Result<ArrayVec<_>,E>>()?
+      .collect::<Result<ArrayVec<_,2>,E>>()?
       .into_inner().unwrap()
   }}
 }
index c34a258f7c5d287d86accece0001a937ce1b2ab2..c94c3db5cb9c02545123c26b0035fb520000d064 100644 (file)
@@ -12,7 +12,7 @@ pub const SVG_SCALE: f64 = 6.;
 pub fn timestring_abbreviate<'x>(base: &str, this: &'x str)
                                  -> (&'x str, bool)
 {
-  fn split(s: &str) -> ArrayVec<[&str; 3]> {
+  fn split(s: &str) -> ArrayVec<&str, 3> {
     s.splitn(3, ' ').collect()
   }
   let base3 = split(base);
index 67b2d2da2d6bee0c432eacd38ce2bf979311f8e4..a25367ea71e0f1ab84d7918ed7905db02e9bdfc0 100644 (file)
@@ -1146,7 +1146,7 @@ mod library_add {
       Poor(insns,
            "surplus marker(s) removed")
     } else {
-      let mut good: ArrayVec<_> = default();
+      let mut good: ArrayVec<_,2> = default();
       for p in &markers {
         good.push(p.visible.as_ref().ok_or_else(
           || anyhow!("library marker(s) with hidden position!")
index 6a58e84d458873b85d1a0e0526d73fbe141c58f9..c7bc2c9b8903e58541348c9b81047c62e6d198fc 100644 (file)
@@ -208,7 +208,7 @@ impl FromStr for BundleSavefile {
   #[throws(NotBundle)]
   fn from_str(fleaf: &str) -> BundleSavefile {
     let [lhs, rhs] = fleaf.splitn(2, '.')
-      .collect::<ArrayVec<[&str;2]>>()
+      .collect::<ArrayVec<&str,2>>()
       .into_inner().map_err(|_| "no dot")?;
     let index = lhs.parse().map_err(|_| "bad index")?;
     if rhs == "tmp" { return BundleSavefile::PreviousUploadFailed(index) }
index b3276f06529e3141a8ecd544dd140e6668d18352..f9839b26b5f0cc202b93bccba4648c52ec61eae8 100644 (file)
@@ -237,7 +237,7 @@ impl Clock {
 
       URender { st, remaining, nick }
     })
-      .collect::<ArrayVec<_>>()
+      .collect::<ArrayVec<_,2>>()
       .into_inner().unwrap();
 
     if r.iter().filter(|ur| ur.st == URS::Reset).count() == 1 {
index 9a7d4056f28f1e67d8fdbff4c46786e504f55e0c..347cf6549b250c7f89426805a0b688598b2de5ed 100644 (file)
@@ -229,7 +229,7 @@ pub trait PieceTrait: OutlineTrait + Send + Debug + 'static {
     Rect { corners: self.bbox_approx()?.corners.iter().map(
       |c| *c + p.pos
     )
-           .collect::<Result<ArrayVec<_>,_>>()?
+           .collect::<Result<ArrayVec<_,2>,_>>()?
            .into_inner().unwrap() }
   }
 }
index bf94ce0efb2115bb11d61805594b09a1c93ea7ee..c9ae90d57f2a9c6ede467a5992db01df92cbde79 100644 (file)
@@ -853,7 +853,7 @@ impl<'ig> InstanceGuard<'ig> {
       access
     };
 
-    let current_tokens: ArrayVec<[&RawToken;2]> = {
+    let current_tokens: ArrayVec<&RawToken,2> = {
       let players = GLOBAL.players.read();
       self.tokens_players.tr.iter().
         filter(|&token| (||{
index 16147dd4c314dff04db0a491daf1b5603e7d4e73..a2d166c1373a9bcf9cbcb5a4ae718a1e2b0ebbf3 100644 (file)
@@ -285,7 +285,7 @@ impl FaceTransform {
         })
         .cycle()
         .take(2)
-        .collect::<ArrayVec<[_;2]>>()
+        .collect::<ArrayVec<_,2>>()
         .into_inner()
         .unwrap()
     } else {
@@ -303,7 +303,7 @@ impl FaceTransform {
       }.iter().cloned().zip(&scale).map(|(size,scale)| {
         size * 0.5 / scale
       })
-        .collect::<ArrayVec<[_;2]>>()
+        .collect::<ArrayVec<_,2>>()
         .into_inner()
         .unwrap()
     }))?;
@@ -1005,7 +1005,7 @@ impl RectShape {
       [-1,1].iter().map(|&signum| Ok::<_,CoordinateOverflow>({
         (centre + (offset * signum)?)?
       }))
-        .collect::<Result<ArrayVec<_>,_>>()?
+        .collect::<Result<ArrayVec<_,2>,_>>()?
         .into_inner().unwrap()
     };
     rect
index 00f3c836bb6b1c46ecca9131af0f1800b75f5622..fd2e530b6810dc26de42dde0e5f6792d3050ce39 100644 (file)
@@ -55,7 +55,7 @@ impl<T> OldNew<T> {
   pub fn map<U, F: FnMut(&T) -> U>(&self, f: F) -> OldNew<U> {
     OldNew(
       self.iter().map(f)
-        .collect::<ArrayVec<[U; 2]>>()
+        .collect::<ArrayVec<U,2>>()
         .into_inner()
         .unwrap_or_else(|_|panic!())
     )
@@ -64,7 +64,7 @@ impl<T> OldNew<T> {
   pub fn as_refs(&self) -> OldNew<&T> {
     OldNew(
       self.iter()
-        .collect::<ArrayVec<[&T; 2]>>()
+        .collect::<ArrayVec<&T,2>>()
         .into_inner()
         .unwrap_or_else(|_|panic!())
     )