diff options
author | Christian Cunningham <cc@localhost> | 2022-08-21 18:27:47 -0700 |
---|---|---|
committer | Christian Cunningham <cc@localhost> | 2022-08-21 18:27:47 -0700 |
commit | 60c867a49cd935e95b735edaace43606aca096e7 (patch) | |
tree | 2cdd278385c80b820e85656349acf2d15baceefd /src/mem/types.rs | |
parent | 844ca958e6462cea5478135887e9540c6f4e4024 (diff) |
Move types to its own module
Diffstat (limited to 'src/mem/types.rs')
-rw-r--r-- | src/mem/types.rs | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/src/mem/types.rs b/src/mem/types.rs new file mode 100644 index 0000000..04522bc --- /dev/null +++ b/src/mem/types.rs @@ -0,0 +1,54 @@ +/// # u256 struct +/// +/// 256 bit size field +#[derive(Copy,Clone)] +pub struct U256(u128,u128); +impl U256 { + pub const fn new() -> Self { + U256(0,0) + } +} + +/// # u512 struct +/// +/// 512 bit size field +#[derive(Copy,Clone)] +pub struct U512(U256,U256); +impl U512 { + pub const fn new() -> Self { + U512(U256::new(), U256::new()) + } +} + +/// # u1024 struct +/// +/// 1024 bit size field +#[derive(Copy,Clone)] +pub struct U1024(U512,U512); +impl U1024 { + pub const fn new() -> Self { + U1024(U512::new(), U512::new()) + } +} + +/// # u2048 struct +/// +/// 2048 bit size field +#[derive(Copy,Clone)] +pub struct U2048(U1024,U1024); +impl U2048 { + pub const fn new() -> Self { + U2048(U1024::new(), U1024::new()) + } +} + +/// # u4096 struct +/// +/// 4096 bit size field +#[derive(Copy,Clone)] +pub struct U4096(U2048,U2048); +impl U4096 { + pub const fn new() -> Self { + U4096(U2048::new(), U2048::new()) + } +} |