From 80be04784356d8fe3ce348b015d9a75f96ae5575 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Wed, 19 May 2021 22:14:52 +0100 Subject: [PATCH] otter(1): Provide alter-game-ron too Signed-off-by: Ian Jackson --- Cargo.lock | 12 ++++++++++++ Cargo.toml | 1 + src/bin/otter.rs | 9 ++++++++- 3 files changed, 21 insertions(+), 1 deletion(-) diff --git a/Cargo.lock b/Cargo.lock index 1fdecaa1..3c3cd5f4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -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" diff --git a/Cargo.toml b/Cargo.toml index ac3febcc..0bded9ac 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -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" diff --git a/src/bin/otter.rs b/src/bin/otter.rs index 27860d1d..76127ba3 100644 --- a/src/bin/otter.rs +++ b/src/bin/otter.rs @@ -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 ---------- -- 2.30.2