[][src]Struct moore_vhdl::symtbl::SymTbl

pub struct SymTbl {
    pub root_scope: Scope,
    pub scopes: HashMap<NodeId, Scope>,
    // some fields omitted
}

Fields

root_scope: Scopescopes: HashMap<NodeId, Scope>

Implementations

impl SymTbl[src]

pub fn new() -> SymTbl[src]

Create a new empty symbol table.

pub fn alloc_id(&mut self) -> NodeId[src]

Allocate a new node ID that has not yet been used.

pub fn get_library_id(&mut self, name: Name) -> NodeId[src]

Obtain the node ID for the library with the given name, or allocate a new ID if none exists yet. Use this function to create a scope for this library.

pub fn add_scope(&mut self, scope: Scope)[src]

Add a scope to the symbol table. If a scope with the same node ID already exists, the new scope's contents are merged into the existing scope. This allows for gradual extension of the contents of a scope. Useful for populating library scopes.

Trait Implementations

impl Debug for SymTbl[src]

Auto Trait Implementations

impl RefUnwindSafe for SymTbl

impl Send for SymTbl

impl Sync for SymTbl

impl Unpin for SymTbl

impl UnwindSafe for SymTbl

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<T> From<T> for T[src]

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

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.