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
44
45
use clap::Subcommand;
#[derive(Subcommand)]
pub enum ModNcbi {
/// Retrieves taxon information from NCBI from a query string
Taxons {
/// taxon name to query
#[clap(required = true)]
query: String,
/// number of search results to return
#[clap(short, long, default_value = "5")]
limit: usize,
/// optional filepath to write output to [default=stdout]
#[clap(short, long)]
output: Option<String>,
},
/// Retrieves information for a list of IDs
QueryIds {
/// NCBI ids to query
#[clap(required = true)]
ids: Vec<usize>,
/// optional filepath to write output to [default=stdout]
#[clap(short, long)]
output: Option<String>,
},
/// Retrieves information for a list of symbols (must provide taxon)
QuerySymbols {
/// NCBI ids to query
#[clap(required = true)]
symbols: Vec<String>,
/// Taxon ID (human: 9606, mouse: 10090)
#[clap(short, long, default_value = "9606")]
taxon_id: usize,
/// optional filepath to write output to [default=stdout]
#[clap(short, long)]
output: Option<String>,
},
}