From c4b77084afd70098ed3ecf56b6778a6cc0dbcfe4 Mon Sep 17 00:00:00 2001 From: Egor Suvorov Date: Thu, 19 May 2022 01:58:51 +0300 Subject: [PATCH] utils: add const_assert! macro --- libs/utils/src/lib.rs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/libs/utils/src/lib.rs b/libs/utils/src/lib.rs index 4810909712..15d4c7a81e 100644 --- a/libs/utils/src/lib.rs +++ b/libs/utils/src/lib.rs @@ -95,3 +95,11 @@ macro_rules! project_git_version { ); }; } + +/// Same as `assert!`, but evaluated during compilation and gets optimized out in runtime. +#[macro_export] +macro_rules! const_assert { + ($($args:tt)*) => { + const _: () = assert!($($args)*); + }; +}