calimero_sys/types/register.rs
1use super::PtrSizedInt;
2
3#[repr(C)]
4#[derive(Copy, Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)]
5pub struct RegisterId(PtrSizedInt);
6
7impl RegisterId {
8 #[inline]
9 pub const fn new(value: usize) -> Self {
10 Self(PtrSizedInt::new(value))
11 }
12
13 pub fn as_usize(self) -> usize {
14 self.0.as_usize()
15 }
16}
17
18impl From<usize> for RegisterId {
19 #[inline]
20 fn from(value: usize) -> Self {
21 Self::new(value)
22 }
23}