Struct FrontendNodeIndex
pub struct FrontendNodeIndex {
pub items: PrimaryMap<ItemId, ItemKind>,
pub item_parents: SecondaryMap<ItemId, Option<FrontendParent>>,
pub statements: PrimaryMap<StmtId, StmtKind>,
pub statement_parents: SecondaryMap<StmtId, Option<FrontendParent>>,
pub expressions: PrimaryMap<ExprId, ExprKind>,
pub expression_parents: SecondaryMap<ExprId, Option<FrontendParent>>,
pub meta_statements: PrimaryMap<MetaStmtId, MetaStmtKind>,
pub meta_statement_parents: SecondaryMap<MetaStmtId, Option<FrontendParent>>,
pub meta_expressions: PrimaryMap<MetaExprId, MetaExprKind>,
pub meta_expression_parents: SecondaryMap<MetaExprId, Option<FrontendParent>>,
pub types: PrimaryMap<TypeId, TypeKind>,
pub type_parents: SecondaryMap<TypeId, Option<FrontendParent>>,
}Expand description
Side-table index of frontend nodes discovered in deterministic traversal order.
Fields§
§items: PrimaryMap<ItemId, ItemKind>Top-level items in traversal order.
item_parents: SecondaryMap<ItemId, Option<FrontendParent>>Parent item for each top-level item when nested provenance is known.
statements: PrimaryMap<StmtId, StmtKind>Runtime statements in traversal order.
statement_parents: SecondaryMap<StmtId, Option<FrontendParent>>Parent link for each runtime statement.
expressions: PrimaryMap<ExprId, ExprKind>Runtime expressions in traversal order.
expression_parents: SecondaryMap<ExprId, Option<FrontendParent>>Parent link for each runtime expression.
meta_statements: PrimaryMap<MetaStmtId, MetaStmtKind>Meta statements in traversal order.
meta_statement_parents: SecondaryMap<MetaStmtId, Option<FrontendParent>>Parent link for each meta statement.
meta_expressions: PrimaryMap<MetaExprId, MetaExprKind>Meta expressions in traversal order.
meta_expression_parents: SecondaryMap<MetaExprId, Option<FrontendParent>>Parent link for each meta expression.
types: PrimaryMap<TypeId, TypeKind>Type expressions in traversal order.
type_parents: SecondaryMap<TypeId, Option<FrontendParent>>Parent link for each type expression.
Implementations§
§impl FrontendNodeIndex
impl FrontendNodeIndex
pub fn build(program: &Program) -> FrontendNodeIndex
pub fn build(program: &Program) -> FrontendNodeIndex
Build a stable frontend-node index for a parsed program.
Trait Implementations§
§impl Clone for FrontendNodeIndex
impl Clone for FrontendNodeIndex
§fn clone(&self) -> FrontendNodeIndex
fn clone(&self) -> FrontendNodeIndex
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for FrontendNodeIndex
impl RefUnwindSafe for FrontendNodeIndex
impl Send for FrontendNodeIndex
impl Sync for FrontendNodeIndex
impl Unpin for FrontendNodeIndex
impl UnwindSafe for FrontendNodeIndex
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more