chiark / gitweb /
otter(1): Provide alter-game-ron too
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Wed, 19 May 2021 21:14:52 +0000 (22:14 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Wed, 19 May 2021 21:33:45 +0000 (22:33 +0100)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Cargo.lock
Cargo.toml
src/bin/otter.rs

index 1fdecaa1bace0435a367a30edb7a4976177f91b8..3c3cd5f41889da158bc866e612b41533b604ef6f 100644 (file)
@@ -2301,6 +2301,7 @@ dependencies = [
  "regex",
  "rmp",
  "rmp-serde",
+ "ron",
  "serde",
  "serde_with",
  "sha2",
@@ -3212,6 +3213,17 @@ dependencies = [
  "unicode-xid 0.1.0",
 ]
 
+[[package]]
+name = "ron"
+version = "0.6.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "064ea8613fb712a19faf920022ec8ddf134984f100090764a4e1d768f3827f1f"
+dependencies = [
+ "base64 0.13.0",
+ "bitflags",
+ "serde",
+]
+
 [[package]]
 name = "rouille"
 version = "3.1.1"
index ac3febcc0edd3a05ba1515a03e764c8b613175db..0bded9aca567a521fa3728624b7f55147a0569bf 100644 (file)
@@ -66,6 +66,7 @@ percent-encoding="2"
 pwd="1"
 rand="0.8"
 regex="1"
+ron="0.6"
 rmp="0.8"
 rmp-serde="0.15"
 serde_with="1"
index 27860d1df4152a378be0294a0bf93d904830faba..76127ba32c3e7540b830d5d2a3c28111350574fb 100644 (file)
@@ -1362,7 +1362,7 @@ mod list_pieces {
   )}
 }
 
-//---------- alter game json ----------
+//---------- alter game ----------
 
 mod alter_game_adhoc {
   use super::*;
@@ -1400,6 +1400,7 @@ mod alter_game_adhoc {
 
     let insns = args.insns.iter().enumerate().map(|(i,s)| match fmtname {
       "json" => serde_json::from_str(&s).map_err(AE::from),
+      "ron"  => ron::de::   from_str(&s).map_err(AE::from),
       _ => panic!(),
     }
         .with_context(|| s.clone())
@@ -1411,6 +1412,7 @@ mod alter_game_adhoc {
     for resp in resps {
       println!("{}", match fmtname {
         "json" => serde_json::to_string(&resp).map_err(AE::from),
+        "ron"  => ron::ser::  to_string(&resp).map_err(AE::from),
         _ => panic!(),
       }
           .context("re-format response")?);
@@ -1423,6 +1425,11 @@ mod alter_game_adhoc {
     "run an ad-hoc AlterGame commandr",
     call,
   )}
+  inventory::submit!{Subcommand(
+    "alter-game-ron",
+    "run an ad-hoc AlterGame command (Rusty Object Notation)",
+    call,
+  )}
 }
 
 //---------- upload-bundle ----------