1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
use clap::Subcommand;
use ggetrs_pdb::types::{PdbFormat, PdbResource};
#[derive(Subcommand)]
pub enum ModPdb {
/// Retrieves pdb structure for a provided ID
Structure {
/// PDB id to retrieve structure
#[clap(required = true)]
pdb_id: String,
/// Retrieve only the PDB header
#[clap(short = 'm', long, action)]
header_only: bool,
/// Specify the structure format
#[clap(short, long, default_value = "pdb")]
format: PdbFormat,
/// Optional filepath to write output to [default=stdout]
#[clap(short, long)]
output: Option<String>,
},
/// Retrieves pdb information for a provided ID and resource
Info {
/// PDB Id to request info
#[clap(required = true)]
pdb_id: String,
/// Specify the structure format
#[clap(short, long, default_value = "entry")]
resource: PdbResource,
/// Specifies the Entry or Chain Identifier
#[clap(short, long)]
identifier: Option<String>,
/// Optional filepath to write output to [default=stdout]
#[clap(short, long)]
output: Option<String>,
},
}