[][src]Struct moore_vhdl::score::ScoreBoard

pub struct ScoreBoard<'ast, 'ctx> {
    pub arenas: &'ctx Arenas,
    pub llmod: RefCell<Module>,
    pub ty_table: RefCell<HashMap<NodeId, &'ctx Ty>>,
    pub typeck_table: RefCell<HashMap<NodeId, Result<()>>>,
    pub typeval_table: RefCell<HashMap<NodeId, Result<&'ctx Ty>>>,
    pub scope2_table: RefCell<HashMap<ScopeRef, Scope>>,
    // some fields omitted
}

The VHDL scoreboard that keeps track of compilation results.

Fields

arenas: &'ctx Arenas

A reference to the arenas where the scoreboard allocates nodes.

llmod: RefCell<Module>

The LLHD module into which code is emitted.

ty_table: RefCell<HashMap<NodeId, &'ctx Ty>>

A table of types.

typeck_table: RefCell<HashMap<NodeId, Result<()>>>

A table of typeck results.

typeval_table: RefCell<HashMap<NodeId, Result<&'ctx Ty>>>

A table of typeval results.

scope2_table: RefCell<HashMap<ScopeRef, Scope>>

A table of scopes. Revised; will replace scope_table and def_table.

Methods

impl<'ast, 'ctx> ScoreBoard<'ast, 'ctx>
[src]

pub fn new(arenas: &'ctx Arenas) -> ScoreBoard<'ast, 'ctx>
[src]

Creates a new empty VHDL scoreboard.

pub fn intern_const<T>(&self, konst: T) -> &'ctx Const where
    T: Into<Const>, 
[src]

Internalize a constant.

Returns a reference to the constant whose lifetime is bound to that of the arenas associated with the scoreboard.

pub fn intern_ty<T>(&self, ty: T) -> &'ctx Ty where
    T: Into<Ty>, 
[src]

Internalize a type.

Returns a reference to the constant whose lifetime is bound to that of the arenas associated with the scoreboard.

Auto Trait Implementations

impl<'ast, 'ctx> !Send for ScoreBoard<'ast, 'ctx>

impl<'ast, 'ctx> !Sync for ScoreBoard<'ast, 'ctx>

Blanket Implementations

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

impl<T> From for T
[src]

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

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> BorrowMut for T where
    T: ?Sized
[src]