Skip to main content

NetlistView

Trait NetlistView 

Source
pub trait NetlistView {
    // Required methods
    fn registration_order(&self) -> Vec<InstanceId>;
    fn hierarchical_path(&self, id: InstanceId) -> &str;
    fn resolve_hier_path(&self, path: &str) -> Option<InstantiatedSignalId>;
    fn dedup_key(&self, tmpl: TemplateId) -> &TemplateKey;
    fn tick_ns_per_unit(&self) -> u64;
    fn instance(&self, id: InstanceId) -> &InstanceNode;
    fn template(&self, id: TemplateId) -> &Template;
}

Required Methods§

Source

fn registration_order(&self) -> Vec<InstanceId>

Source

fn hierarchical_path(&self, id: InstanceId) -> &str

Source

fn resolve_hier_path(&self, path: &str) -> Option<InstantiatedSignalId>

Source

fn dedup_key(&self, tmpl: TemplateId) -> &TemplateKey

Source

fn tick_ns_per_unit(&self) -> u64

The single source of truth for the scheduler’s time precision (netlist-analysis.md Decision 8).

Source

fn instance(&self, id: InstanceId) -> &InstanceNode

NL-024 (Task 4): the instance-level query half of the public surface netlist-analysis.md’s impl<'d> Netlist<'d> specifies. Purely additive to this trait (Deviation #1) — every existing method keeps its exact signature.

Source

fn template(&self, id: TemplateId) -> &Template

NL-024 (Task 4): the template-level query half.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl<'d> NetlistView for Netlist<'d>