Skip to main content

Register

Trait Register 

Source
pub trait Register {
    // Required methods
    fn write(&self, resolver: &impl Resolver, value: u64);
    fn set(&self, resolver: &impl Resolver, value: u64);
    fn read(&self) -> u64;
    fn value(&self) -> u64;
    fn reset_sync(&self, resolver: &impl Resolver);
    fn reset_async(&self);
}
Expand description

Interface to a Register

Required Methods§

Source

fn write(&self, resolver: &impl Resolver, value: u64)

Write to a register and trigger write callbacks.

Note: the underlying register value won’t change until the resolver resolve() is called.

Source

fn set(&self, resolver: &impl Resolver, value: u64)

Set the value of the register without triggering write callbacks.

Note: the underlying register value won’t change until the resolver resolve() is called.

Source

fn read(&self) -> u64

Read the current register value and trigger read callbacks.

Source

fn value(&self) -> u64

Return the current register value without triggering read callbacks.

Source

fn reset_sync(&self, resolver: &impl Resolver)

Perform a synchronous reset.

Note: the underlying register value won’t change until the resolver resolve() is called.

Source

fn reset_async(&self)

Perform an asynchronous reset where the value is instantly changed.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§