Struct isla_axiomatic::page_table::VirtualAddress[][src]

pub struct VirtualAddress { /* fields omitted */ }

A concrete ARMv8 virtual address

Implementations

impl VirtualAddress[src]

pub fn from_u64(bits: u64) -> Self[src]

Create a virtual address from a 64-bit unsigned integer. This function will clear all bits from 48 and above to guarantee it is a valid ARMv8 virtual address.

pub fn level_index(self, level: u64) -> usize[src]

va.level_index(n) will return the index used for the translation table at level n when translating va. Panics if n > 3.

pub fn page_offset(self) -> u64[src]

Return the offset of a virtual address within a 4K page.

pub fn from_indices(
    level0: usize,
    level1: usize,
    level2: usize,
    level3: usize,
    page_offset: usize
) -> Self
[src]

Create a virtual address that will be translated by the translation table indices in order from level 0 to 3 plus a page offset. Panics if any level argument is not less than 512, and the page offset is not less than 4096.

Trait Implementations

impl Clone for VirtualAddress[src]

impl Copy for VirtualAddress[src]

impl Debug for VirtualAddress[src]

impl Eq for VirtualAddress[src]

impl PartialEq<VirtualAddress> for VirtualAddress[src]

impl StructuralEq for VirtualAddress[src]

impl StructuralPartialEq for VirtualAddress[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.