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
46
47
48
49
50
51
52
53
//! Constants for bbcache configuration and file organization.
//!
//! This module defines environment variable names, file extensions, directory names,
//! and command strings used throughout the bbcache system.
// Environment variable names
/// Environment variable name for setting the cache directory location.
///
/// When set, this overrides the default cache location (`~/.bbcache/`).
///
/// # Example
///
/// ```bash
/// export BBCLIENT_CACHE=/custom/cache/path
/// ```
pub const BBCLIENT_CACHE_ENV: &str = "BBCLIENT_CACHE";
/// Environment variable name for setting the BEDbase API endpoint.
///
/// When set, this overrides the default API endpoint (`https://api.bedbase.org`).
///
/// # Example
///
/// ```bash
/// export BEDBASE_API=https://custom.bedbase.org
/// ```
pub const BEDBASE_API_ENV: &str = "BEDBASE_API";
// Directory structure constants
/// Default subdirectory name for storing individual BED files.
///
/// BED files are stored in `<cache_folder>/bedfiles/`.
pub const DEFAULT_BEDFILE_SUBFOLDER: &str = "bedfiles";
/// Default subdirectory name for storing BED set metadata files.
///
/// BED set files are stored in `<cache_folder>/bedsets/`.
pub const DEFAULT_BEDSET_SUBFOLDER: &str = "bedsets";
// File extension constants
/// Default file extension for cached BED files.
///
/// BED files are stored compressed as gzipped files with the `.bed.gz` extension.
pub const DEFAULT_BEDFILE_EXT: &str = ".bed.gz";
/// Default file extension for BED set metadata files.
///
/// BED sets are stored as plain text files with the `.txt` extension,
/// containing a newline-separated list of BED file identifiers.
pub const DEFAULT_BEDSET_EXT: &str = ".txt";