pub struct ControlId;
Expand description
Adding “NODE_ID”, “BEGIN_ID”, and “END_ID” attribute to control statement
Implementations
sourceimpl ControlId
impl ControlId
sourcepub fn compute_unique_ids(
con: &mut Control,
cur_state: u64,
two_if_ids: bool
) -> u64
pub fn compute_unique_ids(
con: &mut Control,
cur_state: u64,
two_if_ids: bool
) -> u64
Adds the @NODE_ID attribute to all control stmts except emtpy ones. If two_if_ids is true, then if statements get a BEGIN_ID and END_ID instead of a NODE_ID
Example:
seq { A; if cond {X} else{Y}; par { C; D; }; E }
gets the labels (if two_if_ids is):
@NODE_ID(0)seq {
@NODE_ID(1) A;
@BEGIN_ID(2) @END_ID(5) if cond {
@NODE_ID(3) X
}
else{
@NODE_ID(4) Y
}
@NODE_ID(6) par {
@NODE_ID(7) C;
@NODE_ID(8) D;
}
@NODE_ID(9) E;
}
if two_if_ids were false, the if statement would just get a single NODE_ID
pub fn get_guaranteed_attribute<A>(c: &Control, attr: A) -> u64where
A: Into<Attribute>,
pub fn get_guaranteed_attribute_static<A>(sc: &StaticControl, attr: A) -> u64where
A: Into<Attribute>,
pub fn get_guaranteed_id(c: &Control) -> u64
pub fn get_guaranteed_id_static(sc: &StaticControl) -> u64
pub fn add_static_enable_ids_static(
scon: &mut StaticControl,
cur_state: u64
) -> u64
pub fn add_static_enable_ids(con: &mut Control, cur_state: u64) -> u64
pub fn get_guaranteed_enable_id(se: &StaticEnable) -> u64
Auto Trait Implementations
impl RefUnwindSafe for ControlId
impl Send for ControlId
impl Sync for ControlId
impl Unpin for ControlId
impl UnwindSafe for ControlId
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more