pub struct InstanceMap {
pub inner: HashMap<NameID, BTreeMap<String, NameID>>,
}
Expand description
Mapping between instances and the module it instantiates Example:
entity y() {} // NameID: y_n0
entity x() {inst y()} // NameID: x_n1
entity main() { // NameID: main_n2
inst y();
inst x()
}
Results in the following pseudo verilog:
module main();
x x_0();
y y_0();
endmodule
module x();
y y_0();
endmodule
module y();
endmodule
Which would have the following name map
(y has no modules, so no mapping) (x_n1, “x_0”) -> y_n0 (main_n2, “x_0”) -> x_n1 (main_n2, “y_0”) -> y_n0
Fields§
§inner: HashMap<NameID, BTreeMap<String, NameID>>
Implementations§
Source§impl InstanceMap
impl InstanceMap
Trait Implementations§
Source§impl Debug for InstanceMap
impl Debug for InstanceMap
Source§impl Default for InstanceMap
impl Default for InstanceMap
Source§impl<'de> Deserialize<'de> for InstanceMap
impl<'de> Deserialize<'de> for InstanceMap
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for InstanceMap
impl RefUnwindSafe for InstanceMap
impl Send for InstanceMap
impl Sync for InstanceMap
impl Unpin for InstanceMap
impl UnwindSafe for InstanceMap
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more