command_parser/
command.rs1use std::collections::{HashMap, HashSet};
2
3
4#[derive(Debug, Eq, PartialEq, Clone)]
8pub struct Command {
9 pub prefix: char,
10 pub option_prefix: char,
11 pub name: String,
12 pub arguments: Vec<String>,
13 pub options: HashSet<String>,
14 pub parameters: HashMap<String, String>
15}
16
17impl Command {
18 pub fn new(
19 prefix: char,
20 option_prefix: char,
21 name: String,
22 arguments: Vec<String>,
23 options: HashSet<String>,
24 parameters: HashMap<String, String>
25 ) -> Command {
26 Command {
27 prefix,
28 option_prefix,
29 name,
30 arguments,
31 options,
32 parameters
33 }
34 }
35}
36