Trait libreda_db::decorator::netlist::NetlistEditDecorator
source · [−]pub trait NetlistEditDecorator: MutDecorator where
Self::D: NetlistEdit, {
fn d_create_pin(
&mut self,
cell: &<Self::D as HierarchyBase>::CellId,
name: <Self::D as HierarchyBase>::NameType,
direction: Direction
) -> <Self::D as NetlistBase>::PinId { ... }
fn d_remove_pin(&mut self, id: &<Self::D as NetlistBase>::PinId) { ... }
fn d_rename_pin(
&mut self,
pin: &<Self::D as NetlistBase>::PinId,
new_name: <Self::D as HierarchyBase>::NameType
) -> <Self::D as HierarchyBase>::NameType { ... }
fn d_create_net(
&mut self,
parent: &<Self::D as HierarchyBase>::CellId,
name: Option<<Self::D as HierarchyBase>::NameType>
) -> <Self::D as NetlistBase>::NetId { ... }
fn d_rename_net(
&mut self,
net_id: &<Self::D as NetlistBase>::NetId,
new_name: Option<<Self::D as HierarchyBase>::NameType>
) -> Option<<Self::D as HierarchyBase>::NameType> { ... }
fn d_remove_net(&mut self, net: &<Self::D as NetlistBase>::NetId) { ... }
fn d_connect_pin(
&mut self,
pin: &<Self::D as NetlistBase>::PinId,
net: Option<<Self::D as NetlistBase>::NetId>
) -> Option<<Self::D as NetlistBase>::NetId> { ... }
fn d_connect_pin_instance(
&mut self,
pin: &<Self::D as NetlistBase>::PinInstId,
net: Option<<Self::D as NetlistBase>::NetId>
) -> Option<<Self::D as NetlistBase>::NetId> { ... }
}
Provided Methods
fn d_create_pin(
&mut self,
cell: &<Self::D as HierarchyBase>::CellId,
name: <Self::D as HierarchyBase>::NameType,
direction: Direction
) -> <Self::D as NetlistBase>::PinId
fn d_create_pin(
&mut self,
cell: &<Self::D as HierarchyBase>::CellId,
name: <Self::D as HierarchyBase>::NameType,
direction: Direction
) -> <Self::D as NetlistBase>::PinId
Create a new pin in this cell. Also adds the pin to all instances of the cell.
fn d_remove_pin(&mut self, id: &<Self::D as NetlistBase>::PinId)
fn d_remove_pin(&mut self, id: &<Self::D as NetlistBase>::PinId)
Remove the pin from this circuit and from all instances of this circuit.
fn d_rename_pin(
&mut self,
pin: &<Self::D as NetlistBase>::PinId,
new_name: <Self::D as HierarchyBase>::NameType
) -> <Self::D as HierarchyBase>::NameType
fn d_rename_pin(
&mut self,
pin: &<Self::D as NetlistBase>::PinId,
new_name: <Self::D as HierarchyBase>::NameType
) -> <Self::D as HierarchyBase>::NameType
fn d_create_net(
&mut self,
parent: &<Self::D as HierarchyBase>::CellId,
name: Option<<Self::D as HierarchyBase>::NameType>
) -> <Self::D as NetlistBase>::NetId
fn d_create_net(
&mut self,
parent: &<Self::D as HierarchyBase>::CellId,
name: Option<<Self::D as HierarchyBase>::NameType>
) -> <Self::D as NetlistBase>::NetId
Create a net net that lives in the parent
circuit.
fn d_rename_net(
&mut self,
net_id: &<Self::D as NetlistBase>::NetId,
new_name: Option<<Self::D as HierarchyBase>::NameType>
) -> Option<<Self::D as HierarchyBase>::NameType>
fn d_rename_net(
&mut self,
net_id: &<Self::D as NetlistBase>::NetId,
new_name: Option<<Self::D as HierarchyBase>::NameType>
) -> Option<<Self::D as HierarchyBase>::NameType>
Set a new name for the net. This might panic if the name already exists. Returns the old name.
fn d_remove_net(&mut self, net: &<Self::D as NetlistBase>::NetId)
fn d_remove_net(&mut self, net: &<Self::D as NetlistBase>::NetId)
Delete the net if it exists and disconnect all connected terminals.
fn d_connect_pin(
&mut self,
pin: &<Self::D as NetlistBase>::PinId,
net: Option<<Self::D as NetlistBase>::NetId>
) -> Option<<Self::D as NetlistBase>::NetId>
fn d_connect_pin(
&mut self,
pin: &<Self::D as NetlistBase>::PinId,
net: Option<<Self::D as NetlistBase>::NetId>
) -> Option<<Self::D as NetlistBase>::NetId>
Connect a pin to a net. Returns the old connected net, if any.
fn d_connect_pin_instance(
&mut self,
pin: &<Self::D as NetlistBase>::PinInstId,
net: Option<<Self::D as NetlistBase>::NetId>
) -> Option<<Self::D as NetlistBase>::NetId>
fn d_connect_pin_instance(
&mut self,
pin: &<Self::D as NetlistBase>::PinInstId,
net: Option<<Self::D as NetlistBase>::NetId>
) -> Option<<Self::D as NetlistBase>::NetId>
Connect a pin instance to a net. Returns the old connected net, if any.