[][src]Trait moore_vhdl::scope2::ScopeContext

pub trait ScopeContext<'t> {
    fn define(&self, name: Spanned<ResolvableName>, def: Def2<'t>) -> Result<()>;
fn import_def(
        &self,
        name: ResolvableName,
        def: Spanned<Def2<'t>>
    ) -> Result<()>;
fn import_scope(&self, scope: &'t ScopeData<'t>) -> Result<()>;
fn resolve(
        &self,
        name: ResolvableName,
        recur: bool
    ) -> Vec<Spanned<Def2<'t>>>; }

Define names and perform name resolution.

Required methods

fn define(&self, name: Spanned<ResolvableName>, def: Def2<'t>) -> Result<()>

Define a new name in the scope.

fn import_def(&self, name: ResolvableName, def: Spanned<Def2<'t>>) -> Result<()>

Import a definition into the scope.

fn import_scope(&self, scope: &'t ScopeData<'t>) -> Result<()>

Import an entire scope into the scope.

fn resolve(&self, name: ResolvableName, recur: bool) -> Vec<Spanned<Def2<'t>>>

Find a name in this scope.

Loading content...

Implementors

impl<'t> ScopeContext<'t> for AllocContext<'t>[src]

Loading content...