Layout

Trait Layout 

Source
pub trait Layout<B: Bound> {
    // Required methods
    fn new(num_variables: usize, init: B) -> Self;
    fn set(&mut self, left: impl AnyClock, right: impl AnyClock, bound: B);
    fn get(&self, left: impl AnyClock, right: impl AnyClock) -> &B;
}
Expand description

Represents a storage layout for Dbm.

Required Methods§

Source

fn new(num_variables: usize, init: B) -> Self

Initializes the storage for num_variables clock variables using init as initial bound for all differences.

Source

fn set(&mut self, left: impl AnyClock, right: impl AnyClock, bound: B)

Sets the bound for the clock difference left - right.

Source

fn get(&self, left: impl AnyClock, right: impl AnyClock) -> &B

Retrieves the bound for the clock difference left - right.

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.

Implementors§

Source§

impl<B: Bound> Layout<B> for LinearLayout<B>

Source§

impl<B: Bound> Layout<B> for MatrixLayout<B>