rust_actions/
args.rs

1use crate::Result;
2use serde_json::Value;
3use std::collections::HashMap;
4
5pub type RawArgs = HashMap<String, Value>;
6
7pub trait FromArgs: Sized {
8    fn from_args(args: &RawArgs) -> Result<Self>;
9}
10
11impl FromArgs for () {
12    fn from_args(_args: &RawArgs) -> Result<Self> {
13        Ok(())
14    }
15}
16
17impl FromArgs for RawArgs {
18    fn from_args(args: &RawArgs) -> Result<Self> {
19        Ok(args.clone())
20    }
21}