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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
#![crate_name = "abscissa"]
#![crate_type = "rlib"]
#![deny(
warnings,
missing_docs,
unsafe_code,
unused_import_braces,
unused_qualifications
)]
#![doc(
html_logo_url = "https://www.iqlusion.io/img/github/iqlusioninc/abscissa/abscissa-sq.svg",
html_root_url = "https://docs.rs/abscissa/0.0.4"
)]
#[allow(unknown_lints, unused_imports, useless_attribute)]
#[macro_use]
extern crate abscissa_derive;
pub extern crate failure;
#[cfg(any(feature = "errors", feature = "options"))]
#[macro_use]
extern crate failure_derive;
#[cfg(feature = "shell")]
extern crate isatty;
#[cfg(feature = "shell")]
#[macro_use]
extern crate lazy_static;
#[cfg(feature = "logging")]
pub extern crate log;
#[cfg(feature = "config")]
extern crate serde;
#[cfg(feature = "logging")]
extern crate simplelog;
#[cfg(feature = "shell")]
extern crate term;
#[cfg(all(test, feature = "options"))]
#[macro_use]
extern crate assert_matches;
#[macro_use]
pub mod macros;
#[cfg(feature = "application")]
mod application;
#[cfg(feature = "options")]
mod command;
#[cfg(feature = "config")]
pub mod config;
#[cfg(feature = "errors")]
mod error;
#[cfg(feature = "logging")]
pub mod logging;
#[cfg(feature = "options")]
pub mod options;
#[cfg(feature = "secrets")]
pub mod secrets;
#[cfg(feature = "shell")]
pub mod shell;
pub mod util;
#[cfg(feature = "application")]
pub use application::{boot, Application, ApplicationPath, Component, Components};
#[cfg(feature = "options")]
pub use command::{Callable, Command};
#[cfg(feature = "config")]
pub use config::{ConfigReader, GlobalConfig, LoadConfig};
#[cfg(feature = "errors")]
pub use error::{Error, Fail, FrameworkError, FrameworkErrorKind};
#[cfg(feature = "logging")]
pub use logging::LoggingConfig;
#[cfg(feature = "options")]
pub use options::Options;
#[cfg(feature = "secrets")]
pub use secrets::Secret;
#[cfg(feature = "shell")]
pub use shell::{status, ColorConfig, Stream};
#[cfg(feature = "application")]
pub use util::{CanonicalPath, CanonicalPathBuf, Version};