library/
lib.rs

1use env_logger::Builder;
2use log::{error, info};
3pub mod boxs;
4pub mod generics;
5pub mod locks;
6pub mod macros;
7pub mod overload;
8pub mod patterns;
9pub mod simple_tests;
10pub mod state_pattern;
11pub mod threads;
12pub mod unsafes;
13
14pub fn lib() {
15    // Initialize logger
16    Builder::new().parse_filters("debug").init();
17    simple_tests::hashmap_test();
18    simple_tests::log_test();
19    simple_tests::generics_test();
20    boxs::drops::drop_test();
21    boxs::linked_list::list_test();
22    threads::move_test();
23    threads::channel_test().unwrap_or_else(|e| {
24        error!("{e}");
25    });
26    threads::mpsc_test().unwrap_or_else(|e| {
27        error!("{e}");
28    });
29    locks::lock_test().unwrap_or_else(|e| {
30        error!("{e}");
31    });
32    locks::lock_thread_test().unwrap_or_else(|e| {
33        error!("{e}");
34    });
35    patterns::pattern_test();
36    unsafes::rawpointer();
37    unsafes::slices();
38    unsafes::extern_test();
39    macros::hrr_vec();
40    info!("Hello, world!");
41}