forge::revm::interpreter::primitives::bitvec::mem

Trait BitRegister

pub trait BitRegister: Unsigned + BitOps {
    const ALL: Self;
    const INDX: u8 = _;
    const MASK: u8 = _;
}
Expand description

§Register Descriptions

This trait describes the unsigned integer types that can be manipulated in a target processor’s general-purpose registers. It has no bearing on the processor instructions or registers used to interact with the memory bus, and solely exists to describe integers that can exist on a system.

Required Associated Constants§

const ALL: Self

The literal !0.

Provided Associated Constants§

const INDX: u8 = _

The number of bits required to store an index in the range 0 .. BITS.

const MASK: u8 = _

A mask over all bits that can be used as an index within the element. This is the value with the least significant INDX-many bits set high.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

§

impl BitRegister for u8

§

const ALL: u8 = 255u8

§

impl BitRegister for u16

§

const ALL: u16 = 65_535u16

§

impl BitRegister for u32

§

const ALL: u32 = 4_294_967_295u32

§

impl BitRegister for u64

Available on 64-bit only.

u64 can only be used as a register on processors whose word size is at least 64 bits.

This implementation is not present on targets with 32-bit processor words.

§

const ALL: u64 = 18_446_744_073_709_551_615u64

§

impl BitRegister for usize

§

const ALL: usize = 18_446_744_073_709_551_615usize

Implementors§