IsLookupable
chisel3.experimental.hierarchy.core.IsLookupable
trait IsLookupable
A User-extendable trait to mark metadata-containers, e.g. parameter case classes, as valid to return unchanged from an instance.
This should only be true of the metadata returned is identical for ALL instances!
Attributes
- Example
-
For instances of the same proto, metadata or other construction parameters may be useful to access outside of the instance construction. For parameters that are the same for all instances, we should mark it as IsLookupable
case class Params(debugMessage: String) extends IsLookupable class MyModule(p: Params) extends Module { printf(p.debugMessage) } val myParams = Params("Hello World") val definition = Definition(new MyModule(myParams)) val i0 = Instance(definition) val i1 = Instance(definition) require(i0.p == i1.p) // p is only accessable because it extends IsLookupable - Source
- IsLookupable.scala
- Graph
-
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
class Definition[A]
In this article