Type Definition crypto_bigint::U384

source ·
pub type U384 = UInt<{ _ }>;
Expand description

384-bit unsigned big integer.

Implementations§

source§

impl U384

source

pub const fn concat(&self, rhs: &Self) -> UInt<{ _ }>

Concatenate the two values, with self as most significant and rhs as the least significant.

source§

impl U384

source

pub const fn split(&self) -> (UInt<{ _ }>, UInt<{ _ }>)

Split this number in half, returning its high and low components respectively.

Trait Implementations§

source§

impl ArrayEncoding for U384

§

type ByteSize = UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B0>, B0>, B0>, B0>

Size of a byte array which encodes a big integer.
source§

fn from_be_byte_array(bytes: ByteArray<Self>) -> Self

Deserialize from a big-endian byte array.
source§

fn from_le_byte_array(bytes: ByteArray<Self>) -> Self

Deserialize from a little-endian byte array.
source§

fn to_be_byte_array(&self) -> ByteArray<Self>

Serialize to a big-endian byte array.
source§

fn to_le_byte_array(&self) -> ByteArray<Self>

Serialize to a little-endian byte array.
source§

impl Concat<UInt<{nlimbs!($bits)}>> for U384

§

type Output = UInt<{nlimbs!($bits) * 2}>

Concatenated output: twice the width of Self.
source§

fn concat(&self, rhs: &Self) -> Self::Output

Concatenate the two values, with self as most significant and rhs as the least significant.
source§

impl Encoding for U384

source§

const BIT_SIZE: usize = 384usize

Size of this integer in bits.
source§

const BYTE_SIZE: usize = 48usize

Size of this integer in bytes.
§

type Repr = [u8; 48]

Byte array representation.
source§

fn from_be_bytes(bytes: Self::Repr) -> Self

Decode from big endian bytes.
source§

fn from_le_bytes(bytes: Self::Repr) -> Self

Decode from little endian bytes.
source§

fn to_be_bytes(&self) -> Self::Repr

Encode to big endian bytes.
source§

fn to_le_bytes(&self) -> Self::Repr

Encode to little endian bytes.
source§

impl Split<UInt<{nlimbs!($bits)}>> for U384

§

type Output = UInt<{nlimbs!($bits) / 2}>

Split output: high/low components of the value.
source§

fn split(&self) -> (Self::Output, Self::Output)

Split this number in half, returning its high and low components respectively.