case class DuplicationHelper(existingModules: Set[String]) extends Product with Serializable
Used by firrtl.annotations.transforms.EliminateTargetPaths to eliminate target paths Calculates needed modifications to a circuit's module/instance hierarchy
- Source
- DuplicationHelper.scala
- Alphabetic
- By Inheritance
- DuplicationHelper
- Serializable
- Serializable
- Product
- Equals
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new DuplicationHelper(existingModules: Set[String])
Type Members
- type DupMap = HashMap[String, ModuleHasInstanceOfModuleMap]
- type InstanceOfModuleMap = HashMap[Instance, OfModule]
- type ModuleHasInstanceOfModuleMap = HashMap[String, InstanceOfModuleMap]
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- val existingModules: Set[String]
-
def
expandHierarchy(t: IsMember): Unit
Updates internal state (dupMap) to calculate instance hierarchy modifications so t's tokens in an instance can be expressed as a tokens in a module (e.g.
Updates internal state (dupMap) to calculate instance hierarchy modifications so t's tokens in an instance can be expressed as a tokens in a module (e.g. uniquify/duplicate the instance path in t's tokens)
- t
An instance-resolved component
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
getDuplicates(module: String): Set[String]
Returns the names of this module's duplicated (including the original name)
-
def
getModuleName(top: String, path: Seq[(Instance, OfModule)]): String
Deterministic name-creation of a duplicated module
-
def
getNewOfModule(originalModule: String, newModule: String, instance: Instance, originalOfModule: OfModule): OfModule
Return the duplicated module (formerly originalOfModule) instantiated by instance in newModule (formerly originalModule)
Return the duplicated module (formerly originalOfModule) instantiated by instance in newModule (formerly originalModule)
- originalModule
original encapsulating module
- newModule
new name of encapsulating module
- instance
instance name being declared in encapsulating module
- originalOfModule
original module being instantiated in originalModule
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
makePathless(t: IsMember): Seq[IsMember]
Rewrites t with new module/instance hierarchy calculated after repeated calls to expandHierarchy
Rewrites t with new module/instance hierarchy calculated after repeated calls to expandHierarchy
- t
A target
- returns
t rewritten, is a seq because if the t.module has been duplicated, it must now refer to multiple modules
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
This is the documentation for Firrtl.