chiark / gitweb /
library list
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 27 Sep 2020 12:36:57 +0000 (13:36 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 27 Sep 2020 12:36:57 +0000 (13:36 +0100)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
src/bin/otter.rs
src/gamestate.rs
src/shapelib.rs

index bfa8346f0cd61e038a1e241bd0af8a3d390984d3..1b1e1a6230aa28ec91d2bc0e708f4b4486197f48 100644 (file)
@@ -602,8 +602,15 @@ mod library_list {
     };
 
     let cmd = MgmtCommand::LibraryListByGlob { glob: args.pat.clone() };
-    let items = chan.cmd(&cmd)?;
-    dbg!(&items);
+    let mut items = match chan.cmd(&cmd)? {
+      MgmtResponse::LibraryItems(items) => items,
+      wat => Err(anyhow!("unexpected LibraryListByGlob response: {:?}",
+                         &wat))?,
+    };
+    items.sort();
+    for it in &items {
+      println!("{:20}  {}", it.itemname, it.f0desc.0);
+    }
 
     Ok(())
   }
index a16b6e833f74463a8f71a34d0dce777898a6b87a..77f98525348c2766990fff91c2d54a1586f7bfcc 100644 (file)
@@ -25,7 +25,7 @@ visible_slotmap_key!{ VisiblePieceId('.') }
 #[serde(try_from="f64")]
 pub struct ZCoord(pub f64);
 
-#[derive(Clone,Serialize,Deserialize)]
+#[derive(Clone,Serialize,Deserialize,Eq,Ord,PartialEq,PartialOrd)]
 #[serde(transparent)]
 pub struct Html (pub String);
 
index 50b9eb11ea4c8677b20691778de360e7e6142475..8fa730fd3838e576c10a2ec2fd17a5d7a13c2ad6 100644 (file)
@@ -141,7 +141,7 @@ struct Item {
   outline: Box<dyn Outline>,
 }
 
-#[derive(Debug,Clone,Serialize,Deserialize)]
+#[derive(Debug,Clone,Serialize,Deserialize,Eq,PartialEq,Ord,PartialOrd)]
 pub struct ItemEnquiryData {
   pub itemname: String,
   pub f0desc: Html,