]> git.nega.tv - josh/narcissus/commitdiff
Add include_bytes variant with custom alignment
authorJoshua Simmons <josh@nega.tv>
Fri, 2 Dec 2022 21:16:28 +0000 (22:16 +0100)
committerJoshua Simmons <josh@nega.tv>
Fri, 2 Dec 2022 21:33:50 +0000 (22:33 +0100)
narcissus-core/src/lib.rs

index cffbf95da77b4f034bf0e31d7d39bacba8b7b112..2b4380c5b739d7a837e191a38530ba350733e5aa 100644 (file)
@@ -199,6 +199,15 @@ macro_rules! flags_def {
     };
 }
 
+#[macro_export]
+macro_rules! include_bytes_align {
+    ($align:literal, $path:literal) => {{
+        #[repr(align($align))]
+        struct AlignedBytes<const LEN: usize>([u8; LEN]);
+        &AlignedBytes(*include_bytes!($path)).0
+    }};
+}
+
 /// Avoid the awful `Default::default()` spam.
 #[inline(always)]
 pub fn default<T: Default>() -> T {