mirror of https://codeberg.org/topola/topola.git
general refactor: omit unnecessary clones
This commit is contained in:
parent
4f40c26bac
commit
5c377e805b
|
|
@ -39,11 +39,7 @@ impl MeasureLengthExecutionStepper {
|
||||||
let mut length = 0.0;
|
let mut length = 0.0;
|
||||||
|
|
||||||
for selector in self.selection.selectors() {
|
for selector in self.selection.selectors() {
|
||||||
let band = autorouter
|
let band = autorouter.board.bandname_band(&selector.band).unwrap().0;
|
||||||
.board
|
|
||||||
.bandname_band(selector.band.clone())
|
|
||||||
.unwrap()
|
|
||||||
.0;
|
|
||||||
length += band.ref_(autorouter.board.layout().drawing()).length();
|
length += band.ref_(autorouter.board.layout().drawing()).length();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -35,11 +35,7 @@ impl RemoveBandsExecutionStepper {
|
||||||
self.done = true;
|
self.done = true;
|
||||||
|
|
||||||
for selector in self.selection.selectors() {
|
for selector in self.selection.selectors() {
|
||||||
let band = autorouter
|
let band = autorouter.board.bandname_band(&selector.band).unwrap().0;
|
||||||
.board
|
|
||||||
.bandname_band(selector.band.clone())
|
|
||||||
.unwrap()
|
|
||||||
.0;
|
|
||||||
autorouter.board.layout_mut().remove_band(band);
|
autorouter.board.layout_mut().remove_band(band);
|
||||||
}
|
}
|
||||||
Ok(())
|
Ok(())
|
||||||
|
|
|
||||||
|
|
@ -63,7 +63,7 @@ impl PinSelection {
|
||||||
};
|
};
|
||||||
|
|
||||||
if let (Some(pinname), Some(layername)) = (
|
if let (Some(pinname), Some(layername)) = (
|
||||||
board.node_pinname(node),
|
board.node_pinname(&node),
|
||||||
board.layout().rules().layer_layername(layer),
|
board.layout().rules().layer_layername(layer),
|
||||||
) {
|
) {
|
||||||
Some(PinSelector {
|
Some(PinSelector {
|
||||||
|
|
@ -127,7 +127,7 @@ impl BandSelection {
|
||||||
|
|
||||||
Some(BandSelector {
|
Some(BandSelector {
|
||||||
band: board
|
band: board
|
||||||
.band_bandname(board.layout().drawing().collect().loose_band_uid(loose))?
|
.band_bandname(&board.layout().drawing().collect().loose_band_uid(loose))?
|
||||||
.clone(),
|
.clone(),
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -86,7 +86,7 @@ impl<M: AccessMesadata> Board<M> {
|
||||||
) -> FixedDotIndex {
|
) -> FixedDotIndex {
|
||||||
let dot = self.layout.add_poly_fixed_dot_infringably(weight, poly);
|
let dot = self.layout.add_poly_fixed_dot_infringably(weight, poly);
|
||||||
|
|
||||||
if let Some(pin) = self.node_pinname(GenericNode::Compound(poly.into())) {
|
if let Some(pin) = self.node_pinname(&GenericNode::Compound(poly.into())) {
|
||||||
self.node_to_pinname
|
self.node_to_pinname
|
||||||
.insert(GenericNode::Primitive(dot.into()), pin.to_string());
|
.insert(GenericNode::Primitive(dot.into()), pin.to_string());
|
||||||
}
|
}
|
||||||
|
|
@ -128,7 +128,7 @@ impl<M: AccessMesadata> Board<M> {
|
||||||
.layout
|
.layout
|
||||||
.add_poly_fixed_seg_infringably(from, to, weight, poly);
|
.add_poly_fixed_seg_infringably(from, to, weight, poly);
|
||||||
|
|
||||||
if let Some(pin) = self.node_pinname(GenericNode::Compound(poly.into())) {
|
if let Some(pin) = self.node_pinname(&GenericNode::Compound(poly.into())) {
|
||||||
self.node_to_pinname
|
self.node_to_pinname
|
||||||
.insert(GenericNode::Primitive(seg.into()), pin.to_string());
|
.insert(GenericNode::Primitive(seg.into()), pin.to_string());
|
||||||
}
|
}
|
||||||
|
|
@ -176,18 +176,18 @@ impl<M: AccessMesadata> Board<M> {
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Returns the pin name associated with a given node.
|
/// Returns the pin name associated with a given node.
|
||||||
pub fn node_pinname(&self, node: NodeIndex) -> Option<&String> {
|
pub fn node_pinname(&self, node: &NodeIndex) -> Option<&String> {
|
||||||
self.node_to_pinname.get(&node)
|
self.node_to_pinname.get(node)
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Returns the band name associated with a given band.
|
/// Returns the band name associated with a given band.
|
||||||
pub fn band_bandname(&self, band: BandUid) -> Option<&BandName> {
|
pub fn band_bandname(&self, band: &BandUid) -> Option<&BandName> {
|
||||||
self.band_bandname.get_by_left(&band)
|
self.band_bandname.get_by_left(band)
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Returns the unique id associated with a given band name.
|
/// Returns the unique id associated with a given band name.
|
||||||
pub fn bandname_band(&self, bandname: BandName) -> Option<&BandUid> {
|
pub fn bandname_band(&self, bandname: &BandName) -> Option<&BandUid> {
|
||||||
self.band_bandname.get_by_right(&bandname)
|
self.band_bandname.get_by_right(bandname)
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Creates band between the two nodes
|
/// Creates band between the two nodes
|
||||||
|
|
@ -198,11 +198,11 @@ impl<M: AccessMesadata> Board<M> {
|
||||||
band: BandUid,
|
band: BandUid,
|
||||||
) {
|
) {
|
||||||
let source_pinname = self
|
let source_pinname = self
|
||||||
.node_pinname(GenericNode::Primitive(source.into()))
|
.node_pinname(&GenericNode::Primitive(source.into()))
|
||||||
.unwrap()
|
.unwrap()
|
||||||
.to_string();
|
.to_string();
|
||||||
let target_pinname = self
|
let target_pinname = self
|
||||||
.node_pinname(GenericNode::Primitive(target.into()))
|
.node_pinname(&GenericNode::Primitive(target.into()))
|
||||||
.unwrap()
|
.unwrap()
|
||||||
.to_string();
|
.to_string();
|
||||||
self.band_bandname
|
self.band_bandname
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue