Module libreda_db::netlist::traits
source · Expand description
Traits for netlist data types.
Instead of putting a netlist data structure into the center of the world,
this data base concentrates on the way how a netlist can be accessed and modified.
The basic necessary operations are defined in the [NetlistBase'] trait and in the [NetlistEdit`] trait.
More complex operations on netlist are provided by the NetlistUtil and NetlistEditUtil traits.
Re-exports
pub use super::util::NetlistEditUtil;pub use super::util::NetlistUtil;pub use crate::traits::HierarchyBase;pub use crate::traits::HierarchyBase;pub use crate::traits::HierarchyEdit;pub use crate::traits::HierarchyEdit;
Modules
Traits
- Most basic trait for traversing a netlist. A netlist extends the
HierarchyBaseand hence is hierarchical.NetlistBaseextends the components of the hierarchy with pins and nets. Each cell can have pins. Each cell instance has pin instances that correspond one-to-one to the pins of the template cell. Cells can contain nets. Each pin and each pin instance can be connected to one or zero nets. A net can be connected to an arbitrary number of pins and pin instances. - Helper trait which constrains
NetlistBasefor such that ID types areSendandSyncas commonly used for parallel algorithms. - Trait for netlists that support editing.
- Identifier types used for components of netlists.