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
//!
//! # Mini Engima
//!
//! #[no-std] (and no alloc) zero dependency implementation of the M3 Enigma
//!
//! Get started with `state_machine::Enigma`
//!
//! # Features
//!
//! `M4` - Allows the machine to have 4 rotors
//!

#![no_std]
#![warn(missing_docs)]
#![warn(clippy::pedantic)]

#[cfg(test)]
extern crate std;

#[macro_export]
/// Equivalent to `std::println` but omitted during non-testing builds
macro_rules! debug {
    ($($arg:tt)*) => {
        #[cfg(test)]
        std::println!($($arg)*);
    };
}

pub mod components;
pub mod state_machine;
pub mod utils;