diff options
| author | metamuffin <metamuffin@disroot.org> | 2026-01-06 19:10:37 +0100 |
|---|---|---|
| committer | metamuffin <metamuffin@disroot.org> | 2026-01-06 19:10:37 +0100 |
| commit | ffa6b5c4ae2cdd3e07426ed0330f3f66e90ee57b (patch) | |
| tree | 79a03bc7ed938a3698ece0878f0ce5337ff6db23 /common/object/src/value.rs | |
| parent | ffbdb9ce397a6408d5a91cbdcbaf4e13b0c3ba0b (diff) | |
| download | jellything-ffa6b5c4ae2cdd3e07426ed0330f3f66e90ee57b.tar jellything-ffa6b5c4ae2cdd3e07426ed0330f3f66e90ee57b.tar.bz2 jellything-ffa6b5c4ae2cdd3e07426ed0330f3f66e90ee57b.tar.zst | |
tag registry
Diffstat (limited to 'common/object/src/value.rs')
| -rw-r--r-- | common/object/src/value.rs | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/common/object/src/value.rs b/common/object/src/value.rs index d77d53a..1b24e79 100644 --- a/common/object/src/value.rs +++ b/common/object/src/value.rs @@ -107,3 +107,37 @@ impl ValueStore for ObjectBuffer { self.0.len() * 4 } } +impl<'a> Value<'a> for &'a [u8] { + const ALIGNED: bool = false; + fn load_unaligned(buf: &'a [u8]) -> Option<Self> { + Some(buf) + } +} +impl ValueStore for &[u8] { + fn is_aligned(&self) -> bool { + false + } + fn store_unaligned(&self, buf: &mut Vec<u8>) { + buf.extend(*self); + } + fn size(&self) -> usize { + self.len() + } +} +impl<'a> Value<'a> for &'a [u32] { + const ALIGNED: bool = true; + fn load_aligned(buf: &'a [u32]) -> Option<Self> { + Some(buf) + } +} +impl ValueStore for &[u32] { + fn is_aligned(&self) -> bool { + true + } + fn store_aligned(&self, buf: &mut Vec<u32>) { + buf.extend(*self); + } + fn size(&self) -> usize { + self.len() * 4 + } +} |