diff --git a/src/lib.rs b/src/lib.rs
index 0caeabc..6223feb 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -155,6 +155,20 @@ where
}
}
+impl Aligned
+where
+ A: Alignment,
+{
+ /// Changes the alignment of value to be at least A bytes
+ pub const fn new(value: T) -> Self {
+ Aligned {
+ _alignment: [],
+ value,
+ }
+ }
+}
+
+
impl Aligned
where
A: Alignment,
@@ -525,6 +539,16 @@ fn sanity() {
let _: &[u8] = y;
}
+#[test]
+fn test_type_alias_new() {
+ type CacheLineAligned = Aligned;
+
+ let aligned: Aligned = Aligned([0u8; 3]);
+ let aligned_new = CacheLineAligned::new([0u8; 3]);
+
+ assert_eq!(aligned, aligned_new);
+}
+
#[test]
fn test_range_to() {
let a: &Aligned = &Aligned::([0, 1, 2, 3]);