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
//! # encryption-marcos
//!
//! This crate provides macros to XOR strings declarative or automatically at compile time and automatically decode them at run time.
//!
//! The XOR key is automatically generated via a macro expansion in the utils sub-crate. 
//! To generate a new key just run cargo clean and recompiled the target to re-expand this macro. 
//!
//! ## Example 
//! ```rust
//! use encryption_macros::encrypt_strings;
//!
//! encrypt_strings!{
//!     fn main() {
//!         println!("everything in this scope gets encrypted, {}", "even this")
//!     }
//! }
//! ```
//!
//! ## Warning
//!
//! `format_args!` cannot capture variables when the format string is expanded from a macro.
//!
//! So something like this: ```println!("{variable_a}")``` sadly doesn't work when inside an encrypted scope.


pub use encryption_macros_encryption::*;
pub use encryption_macros_utils::xor;

/// # Re-export of [`hex::decode`] from [hex](https://github.com/KokaKiwi/rust-hex)
pub use hex::decode;