unibar/lib.rs
1// this file is basically just to weave together the seperate mod files.
2// also the pub use statements bring objects over to our main file.
3// By: Curtis Jones <mail@curtisjones.ca>
4// Started on: September 07, 2020
5//
6
7#[macro_export]
8/// Alot of the Xlib & Xft functions require pointers to uninitialized variables.
9/// It is very much not in the rust theme but that's the price you pay for using c libraries.
10macro_rules! init {
11 () => {
12 mem::MaybeUninit::uninit().assume_init();
13 };
14}
15
16/// Main meat of the program, where all the direct access to Xlib lives.
17mod bar;
18
19/// Additional module to have a system tray display.
20mod system_tray;
21
22/// Parsing the config file and adjusting based on command line args provided.
23mod config;
24
25/// Turning basic random characters into Input struct that the Bar struct can display to the
26/// screen.
27mod input;
28
29/// To be used by the binary crate.
30pub use bar::{gen_config, Bar};