Struct moore_vhdl::defs::DefsContext [−][src]
pub struct DefsContext<'sbc, 'lazy: 'sbc, 'sb: 'lazy, 'ast: 'sb, 'ctx: 'sb> { /* fields omitted */ }
Expand description
A context to declare things in.
This context helps gather the definitions in a scope. It accepts definitions and keeps track of errors that occurred. Once done the context can be converted into the actual definitions, which fails in case of errors.
Implementations
pub fn new(
ctx: &'sbc ScoreContext<'lazy, 'sb, 'ast, 'ctx>
) -> DefsContext<'sbc, 'lazy, 'sb, 'ast, 'ctx>
pub fn new(
ctx: &'sbc ScoreContext<'lazy, 'sb, 'ast, 'ctx>
) -> DefsContext<'sbc, 'lazy, 'sb, 'ast, 'ctx>
Create a new definition context.
Consume the context and return the definitions that were made.
Returns an error if an error occurred during the earlier gathering of definitions.
Emit a diagnostic message.
Declare a name in the scope.
Declare a primary name in the scope.
This converts the name to a ResolvableName
and calls declare()
.
Handle package declarations.
Handle package instantiations.
Handle type declarations.
Handle subtype declarations.
Handle any of the declarations that can appear in a block.
Handle any of the declarations that can appear in a package.
Handle any of the declarations that can appear in a package.
Handle any of the declarations that can appear in a subprogram.
Handle any of the declarations that can appear in a process.
Handle a constant declaration.
Handle a signal declaration.
Handle a variable declaration.
Handle a file declaration.
Handle an alias declaration.
Handle a component declaration.
Handle an attribute declaration.
Handle a group template declaration.
Handle a group declaration.
Handle subprogram declarations.
Handle subprogram instantiations.
Handle subprogram specifications.
Note that this does not declare the subprogram itself, but rather its parameters and generics.
Handle interface objects.
These are mainly subprogram parameters and entity ports.
Handle generics.