non_zero/
lib.rs

1#![doc = include_str!("../README.md")]
2#![no_std]
3
4/// A macro for creating non-zero integers.
5///
6/// See the [crate level docs](crate).
7#[macro_export]
8macro_rules! non_zero {
9    ($n:expr) => {
10        const {
11            // prettier errors
12            if $n == 0 {
13                panic!("tried initialising a non-zero value to zero")
14            }
15            ::core::num::NonZero::new($n).unwrap()
16        }
17    };
18}