Struct hir::ir::Scope [] [src]

pub struct Scope {
    pub variables: HashMap<NodeId, Variable>,
    pub variable_names: HashMap<String, NodeId>,
    pub basic_blocks: HashMap<NodeId, BasicBlock>,
    pub labels: HashMap<NodeId, Label>,
    pub label_names: HashMap<String, NodeId>,
    pub expressions: HashMap<NodeId, Expression>,
    pub entry_point: NodeId,
    // some fields omitted
}

Fields

All the variables available in the current scope.

A convenience table for looking up a node given its NodeId.

The NodeId of the first basic block in this scope.

Methods

impl Scope
[src]

Get a dynamically typed item by its NodeId.

Iterate over all IrNodes in this Scope.

Trait Implementations

impl Debug for Scope
[src]

Formats the value using the given formatter. Read more

impl Default for Scope
[src]

Returns the "default value" for a type. Read more

impl Clone for Scope
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl PartialEq for Scope
[src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

impl HeapSizeOf for Scope
[src]

Measure the size of any heap-allocated structures that hang off this value, but not the space taken up by the value itself (i.e. what size_of:: measures, more or less); that space is handled by the implementation of HeapSizeOf for Box below. Read more

impl IrNode for Scope
[src]

Auto Trait Implementations

impl Send for Scope

impl Sync for Scope