[−][src]Struct moore_vhdl::score::ScoreContext
The VHDL context which holds information about the language scoreboard and the global scoreboard in its language-agnostic generic form. All useful operations are defined on this context rather than on the scoreboard directly, to decouple processing and ownership.
Fields
sess: &'lazy Session
The compiler session which carries the options and is used to emit diagnostics.
global: &'lazy dyn GenericContext
The global context.
sb: &'sb ScoreBoard<'ast, 'ctx>
The VHDL scoreboard.
lazy: &'lazy LazyPhaseTable<'sb, 'ast, 'ctx>
The table of scheduled operations.
Methods
impl<'lazy, 'sb, 'ast, 'ctx> ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> ScoreContext<'lazy, 'sb, 'ast, 'ctx>
pub fn unpack_expr( | [src] |
Unpack an AST expression.
pub fn unpack_subtype_ind( | [src] |
Unpack an AST subtype indication.
pub fn unpack_type_mark( | [src] |
Unpack a compound name as a type mark.
pub fn unpack_package_name( | [src] |
Unpack a compound name as a package name.
pub fn unpack_subprog_name( | [src] |
Unpack a compound name as a subprogram name.
pub fn unpack_block_decls( | [src] |
Unpack a slice of AST declarative items into a list of items admissible in the declarative part of a block.
See IEEE 1076-2008 section 3.3.2.
pub fn unpack_process_decls( | [src] |
Unpack a slice of AST declarative items into a list of items admissible in the declarative part of a process.
See IEEE 1076-2008 section 11.3.
pub fn unpack_subprog_decls( | [src] |
Unpack a slice of AST declarative items into a list of items admissible in the declarative part of a subprogram.
See IEEE 1076-2008 section 4.3.
pub fn unpack_concurrent_stmts( | [src] |
Unpack a slice of concurrent statements.
See IEEE 1076-2008 section 11.1.
pub fn unpack_sequential_stmts( | [src] |
Unpack a slice of sequential statements.
See IEEE 1076-2008 section 10.
pub fn unpack_signal_assign_target( | [src] |
Unpack a signal assignment target.
See IEEE 1076-2008 section 10.5.2.1.
pub fn unpack_signal_assign_mode( | [src] |
Unpack a signal assignment mode.
See IEEE 1076-2008 section 10.5.
pub fn unpack_delay_mechanism( | [src] |
Unpack a delay mechanism.
See IEEE 1076-2008 section 10.5.2.1. If no mechanism is specified, inertial is assumed. Theoretically, the inertial transport mechanism is mapped to reject-inertial with the pulse rejection limit determined by the delay of the first element in the waveform. We don't have that information readily available at this time, so we simply map to inertial and leave the resolution of this to stages further down the pipeline.
pub fn unpack_cond_waveforms( | [src] |
Unpack the the waves of a simple wave assignment.
pub fn unpack_waveform( | [src] |
Unpack a single waveform.
See IEEE 1076-2008 section 10.5.2.
pub fn sanitize_paren_elems_as_exprs( | [src] |
Ensure that parenthesis contain only a list of expressions.
This is useful since the parser generally expects parenthesized
expressions of the form (expr|expr|expr => expr, expr)
even in palces
where only (expr, expr)
would be applicable. This function takes the
parenthesized expression and ensures it is of the latter form.
pub fn lower_subprog_spec( | [src] |
Lower an AST subprogram specification to HIR.
pub fn lower_subprog_name( | [src] |
Lower the name of an AST subprogram to HIR and perform checks.
pub fn unpack_generics( | [src] |
Unpack generics from a list of interface declarations.
See IEEE 1076-2008 section 6.5.6.1.
pub fn unpack_generic_map( | [src] |
Unpack a generic map from a parenthesized list of elements.
See IEEE 1076-2008 section 6.5.7.2.
impl<'lazy, 'sb, 'ast, 'ctx> ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> ScoreContext<'lazy, 'sb, 'ast, 'ctx>
pub fn make_ctx_items_scope( | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> ScoreContext<'lazy, 'sb, 'ast, 'ctx>
pub fn add_library(&self, name: Name, id: LibRef, lib: Vec<&'ast DesignUnit>) | [src] |
Add a library of AST nodes. This function is called by the global scoreboard to add VHDL-specific AST nodes.
pub fn span<I>(&self, id: I) -> Option<Span> where | [src] |
Obtain the span associated with a node ID.
pub fn set_span<I>(&self, id: I, span: Span) where | [src] |
Associate a span with a node ID.
pub fn bug<I>(&self, id: I, msg: String) where | [src] |
Report a compiler bug associate with a node.
pub fn ast<I>(&self, id: I) -> <AstTable<'ast> as NodeStorage<I>>::Node where | [src] |
Obtain the AST node corresponding to a node reference. The AST node must
have previously been added to the ast_table
, otherwise this function
panics.
pub fn set_ast<I>(&self, id: I, ast: <AstTable<'ast> as NodeStorage<I>>::Node) where | [src] |
Store an AST node in the scoreboard.
pub fn hir<I>(&self, id: I) -> Result<<HirTable<'ctx> as NodeStorage<I>>::Node> where | [src] |
Obtain the HIR of a node, generating it if needed. Returns an error if the HIR cannot be generated.
pub fn set_hir<I>(&self, id: I, hir: <HirTable<'ctx> as NodeStorage<I>>::Node) where | [src] |
Store the HIR of a node.
pub fn existing_hir<I>( | [src] |
Obtain the HIR of a node. Returns an error if none exists.
pub fn lazy_hir<I, R>(&self, id: I) -> Result<&'ctx R> where | [src] |
Determine the HIR for a node.
If the HIR is already in the scoreboard, returns it immediately. Otherwise the lazy HIR table is triggered which will compute the HIR via the corresponding closure.
pub fn defs(&self, id: ScopeRef) -> Result<&'ctx Defs> | [src] |
pub fn archs(&self, id: LibRef) -> Result<&'ctx ArchTable> | [src] |
pub fn lldecl<I>(&self, id: I) -> Result<ValueRef> where | [src] |
pub fn lldef<I>(&self, id: I) -> Result<ValueRef> where | [src] |
pub fn ty<I>(&self, id: I) -> Result<&'ctx Ty> where | [src] |
Determine the type of a node.
If called for the first time with the given id
, calculates the type by
calling self.make(id)
. Otherwise returns the existing information.
pub fn lazy_typeck<I>(&self, id: I) -> Result<()> where | [src] |
Check the type of a node.
If the node already had its type checked, immediately returns the result of that operation. Otherwise runs the task scheduled in the lazy table.
pub fn lazy_typeval<I>(&self, id: I) -> Result<&'ctx Ty> where | [src] |
Determine the type of a node.
If the node already had its type determined, immediately returns the result of that operation. Otherwise runs the task scheduled in the lazy table.
pub fn scope(&self, id: ScopeRef) -> Result<&'ctx Scope> | [src] |
pub fn const_value<I>(&self, id: I) -> Result<&'ctx Const> where | [src] |
pub fn type_context<I>(&self, id: I) -> Option<TypeCtx<'ctx>> where | [src] |
Obtain the type context for an expression.
Returns None
if no context information is available.
pub fn type_context_resolved<I>(&self, id: I) -> Result<Option<&'ctx Ty>> where | [src] |
Obtain the type indicated by the type context for an expression.
Returns None
if no context information is available.
pub fn set_type_context<I, T>(&self, id: I, tyctx: T) where | [src] |
Store a type context for an expression.
Upon type checking, the expression is likely to consult this context to determine its type.
pub fn set_type_context_optional<I, T>(&self, id: Option<I>, tyctx: T) where | [src] |
Store a type context for an optional expression.
Upon type checking, the expression is likely to consult this context to
determine its type. Does nothing if id.is_none()
.
impl<'lazy, 'sb, 'ast, 'ctx> ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> ScoreContext<'lazy, 'sb, 'ast, 'ctx>
pub fn resolvable_from_primary_name( | [src] |
Convert a primary name as it is present in the AST to a resolvable name that can be defined and resolved in a scope.
pub fn resolve_name( | [src] |
Resolve a name within a scope. Traverses to the parent scopes if nothing matching the name is found.
pub fn resolve_compound_name<'a>( | [src] |
Resolve a compound name within a scope.
pub fn builtin_boolean_type(&self) -> &'ctx Ty | [src] |
Get the builtin type standard.boolean
.
pub fn builtin_time_type(&self) -> &'ctx Ty | [src] |
Get the builtin type standard.time
.
pub fn builtin_string_type(&self) -> &'ctx Ty | [src] |
Get the builtin type standard.string
.
pub fn builtin_severity_type(&self) -> &'ctx Ty | [src] |
Get the builtin type standard.severity
.
impl<'lazy, 'sb, 'ast, 'ctx> ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> ScoreContext<'lazy, 'sb, 'ast, 'ctx>
pub fn default_value_for_type(&self, ty: &Ty) -> Result<&'ctx Const> | [src] |
Calculate the implicit default value for a type.
pub fn intern_const<T>(&self, konst: T) -> &'ctx Const where | [src] |
Internalize a constant.
See ScoreBoard::intern_const
.
pub fn intern_ty<T>(&self, ty: T) -> &'ctx Ty where | [src] |
Internalize a type.
See ScoreBoard::intern_ty
.
impl<'lazy, 'sb, 'ast, 'ctx> ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> ScoreContext<'lazy, 'sb, 'ast, 'ctx>
pub fn map_type(&self, ty: &Ty) -> Result<Type> | [src] |
Map a VHDL type to the corresponding LLHD type.
pub fn map_const(&self, konst: &Const) -> Result<ValueRef> | [src] |
Map a constant value to the LLHD counterpart.
impl<'lazy, 'sb, 'ast, 'ctx> ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> ScoreContext<'lazy, 'sb, 'ast, 'ctx>
pub fn deref_named_type<'a>(&self, ty: &'a Ty) -> Result<&'a Ty> where | [src] |
Replace Ty::Named
by the actual type definition recursively.
impl<'lazy, 'sb, 'ast, 'ctx> ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> ScoreContext<'lazy, 'sb, 'ast, 'ctx>
pub fn make_range_ty( | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> ScoreContext<'lazy, 'sb, 'ast, 'ctx>
pub fn with_scope<F, R>(&self, scope: ScopeRef, f: F) -> Result<R> where | [src] |
Lookup a scope and perform an operation on it.
pub fn subscope(&self, scope: ScopeRef, parent: ScopeRef) | [src] |
Create a subscope of another scope.
pub fn define( | [src] |
Define a new name in a scope.
pub fn import_def( | [src] |
Import a definition into a scope.
pub fn import_scope(&self, scope: ScopeRef, into: ScopeRef) -> Result<()> | [src] |
Import an entire scope into another scope.
Trait Implementations
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<DeclInBlockRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<DeclInBlockRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<ConstDeclRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<ConstDeclRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<VarDeclRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<VarDeclRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<SignalDeclRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<SignalDeclRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<FileDeclRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<FileDeclRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<ConcStmtRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<ConcStmtRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<BlockStmtRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<BlockStmtRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<ProcessStmtRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<ProcessStmtRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<ConcCallStmtRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<ConcCallStmtRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<ConcAssertStmtRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<ConcAssertStmtRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<ConcSigAssignStmtRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<ConcSigAssignStmtRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<CompInstStmtRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<CompInstStmtRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<ForGenStmtRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<ForGenStmtRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<IfGenStmtRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<IfGenStmtRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<CaseGenStmtRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<CaseGenStmtRef, Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx, 'a> Codegen<SeqStmtRef, InstBuilder<'a>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx, 'a> Codegen<SeqStmtRef, InstBuilder<'a>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn codegen(&self, id: SeqStmtRef, _ctx: &mut InstBuilder<'a>) -> Result<()> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<SubprogDeclRef, ()> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<SubprogDeclRef, ()> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<SubprogBodyRef, ()> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<SubprogBodyRef, ()> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<SubprogInstRef, ()> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<SubprogInstRef, ()> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<PkgDeclRef, ()> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<PkgDeclRef, ()> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<PkgBodyRef, ()> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<PkgBodyRef, ()> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<PkgInstRef, ()> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<PkgInstRef, ()> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<CompDeclRef, ()> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> Codegen<CompDeclRef, ()> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx, I> TypeckNode<'ctx, I> for ScoreContext<'lazy, 'sb, 'ast, 'ctx> where
ScoreContext<'lazy, 'sb, 'ast, 'ctx>: NodeMaker<I, &'ctx Ty>,
[src]
impl<'lazy, 'sb, 'ast, 'ctx, I> TypeckNode<'ctx, I> for ScoreContext<'lazy, 'sb, 'ast, 'ctx> where
ScoreContext<'lazy, 'sb, 'ast, 'ctx>: NodeMaker<I, &'ctx Ty>,
fn typeck_node(&self, id: I, expected: &'ctx Ty) -> Result<()> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> DiagEmitter for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> DiagEmitter for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn emit(&self, diag: DiagBuilder2) | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<EntityRef, &'ctx Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<EntityRef, &'ctx Entity> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<IntfSignalRef, &'ctx IntfSignal> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<IntfSignalRef, &'ctx IntfSignal> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: IntfSignalRef) -> Result<&'ctx IntfSignal> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<PkgDeclRef, &'ctx Package> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<PkgDeclRef, &'ctx Package> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: PkgDeclRef) -> Result<&'ctx Package> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<PkgBodyRef, &'ctx PackageBody> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<PkgBodyRef, &'ctx PackageBody> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: PkgBodyRef) -> Result<&'ctx PackageBody> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<PkgInstRef, &'ctx PackageInst> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<PkgInstRef, &'ctx PackageInst> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: PkgInstRef) -> Result<&'ctx PackageInst> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SubtypeDeclRef, &'ctx SubtypeDecl> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SubtypeDeclRef, &'ctx SubtypeDecl> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: SubtypeDeclRef) -> Result<&'ctx SubtypeDecl> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ArchRef, &'ctx Arch> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ArchRef, &'ctx Arch> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ProcessStmtRef, &'ctx ProcessStmt> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ProcessStmtRef, &'ctx ProcessStmt> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: ProcessStmtRef) -> Result<&'ctx ProcessStmt> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SigAssignStmtRef, &'ctx SigAssignStmt> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SigAssignStmtRef, &'ctx SigAssignStmt> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: SigAssignStmtRef) -> Result<&'ctx SigAssignStmt> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ArrayTypeIndexRef, &'ctx Spanned<ArrayTypeIndex>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ArrayTypeIndexRef, &'ctx Spanned<ArrayTypeIndex>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: ArrayTypeIndexRef) -> Result<&'ctx Spanned<ArrayTypeIndex>> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SubprogDeclRef, &'ctx Subprog> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SubprogDeclRef, &'ctx Subprog> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: SubprogDeclRef) -> Result<&'ctx Subprog> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SubprogBodyRef, &'ctx SubprogBody> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SubprogBodyRef, &'ctx SubprogBody> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: SubprogBodyRef) -> Result<&'ctx SubprogBody> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SubprogInstRef, &'ctx SubprogInst> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SubprogInstRef, &'ctx SubprogInst> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: SubprogInstRef) -> Result<&'ctx SubprogInst> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<LatentTypeMarkRef, Spanned<TypeMarkRef>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<LatentTypeMarkRef, Spanned<TypeMarkRef>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: LatentTypeMarkRef) -> Result<Spanned<TypeMarkRef>> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ScopeRef, &'ctx HashMap<ResolvableName, Vec<Spanned<Def>>, RandomState>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ScopeRef, &'ctx HashMap<ResolvableName, Vec<Spanned<Def>>, RandomState>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ScopeRef, &'ctx Scope> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ScopeRef, &'ctx Scope> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<LibRef, &'ctx HashMap<ResolvableName, Vec<Spanned<Def>>, RandomState>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<LibRef, &'ctx HashMap<ResolvableName, Vec<Spanned<Def>>, RandomState>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<CtxItemsRef, &'ctx HashMap<ResolvableName, Vec<Spanned<Def>>, RandomState>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<CtxItemsRef, &'ctx HashMap<ResolvableName, Vec<Spanned<Def>>, RandomState>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: CtxItemsRef) -> Result<&'ctx Defs> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<CtxItemsRef, &'ctx Scope> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<CtxItemsRef, &'ctx Scope> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, _id: CtxItemsRef) -> Result<&'ctx Scope> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<EntityRef, &'ctx HashMap<ResolvableName, Vec<Spanned<Def>>, RandomState>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<EntityRef, &'ctx HashMap<ResolvableName, Vec<Spanned<Def>>, RandomState>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ArchRef, &'ctx HashMap<ResolvableName, Vec<Spanned<Def>>, RandomState>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ArchRef, &'ctx HashMap<ResolvableName, Vec<Spanned<Def>>, RandomState>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<PkgDeclRef, &'ctx HashMap<ResolvableName, Vec<Spanned<Def>>, RandomState>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<PkgDeclRef, &'ctx HashMap<ResolvableName, Vec<Spanned<Def>>, RandomState>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, _id: PkgDeclRef) -> Result<&'ctx Defs> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<PkgBodyRef, &'ctx HashMap<ResolvableName, Vec<Spanned<Def>>, RandomState>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<PkgBodyRef, &'ctx HashMap<ResolvableName, Vec<Spanned<Def>>, RandomState>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: PkgBodyRef) -> Result<&'ctx Defs> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SubprogDeclRef, &'ctx HashMap<ResolvableName, Vec<Spanned<Def>>, RandomState>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SubprogDeclRef, &'ctx HashMap<ResolvableName, Vec<Spanned<Def>>, RandomState>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: SubprogDeclRef) -> Result<&'ctx Defs> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SubprogBodyRef, &'ctx HashMap<ResolvableName, Vec<Spanned<Def>>, RandomState>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SubprogBodyRef, &'ctx HashMap<ResolvableName, Vec<Spanned<Def>>, RandomState>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: SubprogBodyRef) -> Result<&'ctx Defs> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<LibRef, &'ctx Scope> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<LibRef, &'ctx Scope> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<EntityRef, &'ctx Scope> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<EntityRef, &'ctx Scope> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ArchRef, &'ctx Scope> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ArchRef, &'ctx Scope> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<PkgDeclRef, &'ctx Scope> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<PkgDeclRef, &'ctx Scope> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: PkgDeclRef) -> Result<&'ctx Scope> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<PkgBodyRef, &'ctx Scope> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<PkgBodyRef, &'ctx Scope> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: PkgBodyRef) -> Result<&'ctx Scope> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SubprogDeclRef, &'ctx Scope> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SubprogDeclRef, &'ctx Scope> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: SubprogDeclRef) -> Result<&'ctx Scope> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SubprogBodyRef, &'ctx Scope> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SubprogBodyRef, &'ctx Scope> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: SubprogBodyRef) -> Result<&'ctx Scope> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ProcessStmtRef, &'ctx HashMap<ResolvableName, Vec<Spanned<Def>>, RandomState>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ProcessStmtRef, &'ctx HashMap<ResolvableName, Vec<Spanned<Def>>, RandomState>> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: ProcessStmtRef) -> Result<&'ctx Defs> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ProcessStmtRef, &'ctx Scope> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ProcessStmtRef, &'ctx Scope> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: ProcessStmtRef) -> Result<&'ctx Scope> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ExprRef, &'ctx Const> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ExprRef, &'ctx Const> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<LibRef, &'ctx Lib> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<LibRef, &'ctx Lib> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<LibRef, &'ctx ArchTable> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<LibRef, &'ctx ArchTable> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ArchRef, DeclValueRef> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ArchRef, DeclValueRef> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, _: ArchRef) -> Result<DeclValueRef> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ArchRef, DefValueRef> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<ArchRef, DefValueRef> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: ArchRef) -> Result<DefValueRef> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<IntfConstRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<IntfConstRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: IntfConstRef) -> Result<&'ctx Ty> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<IntfVarRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<IntfVarRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: IntfVarRef) -> Result<&'ctx Ty> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<IntfSignalRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<IntfSignalRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: IntfSignalRef) -> Result<&'ctx Ty> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<IntfFileRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<IntfFileRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: IntfFileRef) -> Result<&'ctx Ty> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<TypeMarkRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<TypeMarkRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: TypeMarkRef) -> Result<&'ctx Ty> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SubtypeIndRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SubtypeIndRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: SubtypeIndRef) -> Result<&'ctx Ty> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<TypeDeclRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<TypeDeclRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: TypeDeclRef) -> Result<&'ctx Ty> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SubtypeDeclRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SubtypeDeclRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: SubtypeDeclRef) -> Result<&'ctx Ty> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<TypedNodeRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<TypedNodeRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: TypedNodeRef) -> Result<&'ctx Ty> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SignalRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SignalRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<IntfObjRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<IntfObjRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: IntfObjRef) -> Result<&'ctx Ty> | [src] |
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<LatentTypeMarkRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]
impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<LatentTypeMarkRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
fn make(&self, id: LatentTypeMarkRef) -> Result<&'ctx Ty> | [src] |
Auto Trait Implementations
impl<'lazy, 'sb, 'ast, 'ctx> !Send for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> !Send for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> !Sync for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
impl<'lazy, 'sb, 'ast, 'ctx> !Sync for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
Blanket Implementations
impl<T, U> Into for T where
U: From<T>,
[src]
impl<T, U> Into for T where
U: From<T>,
impl<T> From for T
[src]
impl<T> From for T
impl<T, U> TryFrom for T where
T: From<U>,
[src]
impl<T, U> TryFrom for T where
T: From<U>,
type Error = !
try_from
)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> | [src] |
impl<T> Borrow for T where
T: ?Sized,
[src]
impl<T> Borrow for T where
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
impl<T> Any for T where
T: 'static + ?Sized,
fn get_type_id(&self) -> TypeId | [src] |
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
try_from
)The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error> | [src] |
impl<T> BorrowMut for T where
T: ?Sized,
[src]
impl<T> BorrowMut for T where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T | [src] |