pub struct Ir {
pub insts: Vec<Inst>,
pub name_store: Store<NameId>,
pub string_store: Store<StringId>,
pub temporal_predicates: HashSet<NameId>,
}Expand description
The IR container.
Fields§
§insts: Vec<Inst>§name_store: Store<NameId>§string_store: Store<StringId>§temporal_predicates: HashSet<NameId>Predicates declared or inferred as temporal. Temporal predicates have 2 synthetic columns (start_time, end_time) appended to their regular arguments.
Implementations§
Source§impl Ir
impl Ir
pub fn new() -> Self
pub fn add_inst(&mut self, inst: Inst) -> InstId
pub fn get(&self, id: InstId) -> &Inst
pub fn intern_name(&mut self, name: impl Into<String>) -> NameId
pub fn resolve_name(&self, id: NameId) -> &str
pub fn intern_string(&mut self, s: impl Into<String>) -> StringId
pub fn resolve_string(&self, id: StringId) -> &str
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Ir
impl RefUnwindSafe for Ir
impl Send for Ir
impl Sync for Ir
impl Unpin for Ir
impl UnsafeUnpin for Ir
impl UnwindSafe for Ir
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more