Class

firrtl.annotations

ReferenceTarget

Related Doc: package annotations

Permalink

case class ReferenceTarget(circuit: String, module: String, path: Seq[(Instance, OfModule)], ref: String, component: Seq[TargetToken]) extends IsComponent with Product with Serializable

Target pointing to a declared named component in a firrtl.ir.DefModule This includes: firrtl.ir.Port, firrtl.ir.DefWire, firrtl.ir.DefRegister, firrtl.ir.DefInstance, firrtl.ir.DefMemory, firrtl.ir.DefNode

circuit

Name of the encapsulating circuit

module

Name of the root module of this reference

path

Path through instance/ofModules

ref

Name of component

component

Subcomponent of this reference, e.g. field or index

Source
Target.scala
Linear Supertypes
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ReferenceTarget
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. IsComponent
  7. IsMember
  8. CompleteTarget
  9. Target
  10. Named
  11. AnyRef
  12. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ReferenceTarget(circuit: String, module: String, path: Seq[(Instance, OfModule)], ref: String, component: Seq[TargetToken])

    Permalink

    circuit

    Name of the encapsulating circuit

    module

    Name of the root module of this reference

    path

    Path through instance/ofModules

    ref

    Name of component

    component

    Subcomponent of this reference, e.g. field or index

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def addHierarchy(root: String, instance: String): ReferenceTarget

    Permalink

    Adds another level of instance hierarchy Example: Given root=A and instance=b, transforms (Top, B)/c:C -> (Top, A)/b:B/c:C

    Adds another level of instance hierarchy Example: Given root=A and instance=b, transforms (Top, B)/c:C -> (Top, A)/b:B/c:C

    Definition Classes
    ReferenceTargetCompleteTarget
  5. def allSubTargets(tpe: Type): Seq[ReferenceTarget]

    Permalink
  6. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  7. def asPath: Seq[(Instance, OfModule)]

    Permalink

    returns

    Creates a path, assuming all Instance and OfModules in this IsMember is used as a path

    Definition Classes
    ReferenceTargetIsMember
  8. val circuit: String

    Permalink

    Name of the encapsulating circuit

    Name of the encapsulating circuit

    Definition Classes
    ReferenceTargetCompleteTarget
  9. def circuitOpt: Option[String]

    Permalink

    returns

    Circuit name, if it exists

    Definition Classes
    ReferenceTargetTarget
  10. def circuitTarget: CircuitTarget

    Permalink

    returns

    The CircuitTarget of this target's circuit

    Definition Classes
    CompleteTarget
  11. def clock: ReferenceTarget

    Permalink

    returns

    The clock signal of this reference, must be to a firrtl.ir.DefRegister

  12. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  13. def complete: CompleteTarget

    Permalink

    returns

    Converts this Target into a CompleteTarget

    Definition Classes
    Target
  14. val component: Seq[TargetToken]

    Permalink

    Subcomponent of this reference, e.g.

    Subcomponent of this reference, e.g. field or index

  15. def componentType(baseType: Type): Type

    Permalink

    returns

    the type of the subcomponent specified by this target's component

  16. def encapsulatedBy(other: IsModule): Boolean

    Permalink

    Checks whether this is inside of other

    Checks whether this is inside of other

    Definition Classes
    Target
  17. def encapsulatingModule: String

    Permalink

    returns

    The ModuleTarget of the module that directly contains this component

    Definition Classes
    IsMember
  18. def encapsulatingModuleTarget: ModuleTarget

    Permalink
    Definition Classes
    IsMember
  19. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  20. def field(value: String): ReferenceTarget

    Permalink

    value

    Field name of this target

    returns

    A new ReferenceTarget to the specified field of this ReferenceTarget

  21. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  22. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  23. def getComplete: Option[CompleteTarget]

    Permalink

    returns

    If legal, convert this Target into a CompleteTarget

    Definition Classes
    CompleteTargetTarget
  24. def index(value: Int): ReferenceTarget

    Permalink

    value

    Index value of this target

    returns

    A new ReferenceTarget to the specified index of this ReferenceTarget

  25. def init: ReferenceTarget

    Permalink

    returns

    The initialization value of this reference, must be to a firrtl.ir.DefRegister

  26. def isClock: Boolean

    Permalink
  27. def isInit: Boolean

    Permalink
  28. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  29. def isLocal: Boolean

    Permalink

    Whether the target is directly instantiated in its root module

    Whether the target is directly instantiated in its root module

    Definition Classes
    IsComponentTarget
  30. def isReset: Boolean

    Permalink
  31. def justPath: Seq[TargetToken]

    Permalink

    returns

    Tokens of just this member's path

    Definition Classes
    IsComponentIsMember
  32. def leafModule: String

    Permalink
    Definition Classes
    ReferenceTargetIsMember
  33. def leafSubTargets(tpe: Type): Seq[ReferenceTarget]

    Permalink
  34. def modify(circuitOpt: Option[String] = circuitOpt, moduleOpt: Option[String] = moduleOpt, tokens: Seq[TargetToken] = tokens): GenericTarget

    Permalink

    returns

    Returns a new GenericTarget with new values

    Definition Classes
    Target
  35. val module: String

    Permalink

    Name of the root module of this reference

    Name of the root module of this reference

    Definition Classes
    ReferenceTargetIsMember
  36. def moduleOpt: Option[String]

    Permalink

    returns

    Module name, if it exists

    Definition Classes
    ReferenceTargetTarget
  37. def moduleTarget: ModuleTarget

    Permalink

    returns

    Member's top-level module target

    Definition Classes
    IsMember
  38. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  39. def noComponents: ReferenceTarget

    Permalink
  40. def notPath: Seq[TargetToken]

    Permalink

    returns

    Local tokens of what this member points (not a path)

    Definition Classes
    ReferenceTargetIsMember
  41. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  42. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  43. val path: Seq[(Instance, OfModule)]

    Permalink

    Path through instance/ofModules

    Path through instance/ofModules

    Definition Classes
    ReferenceTargetIsMemberTarget
  44. def pathAsTargets: Seq[InstanceTarget]

    Permalink

    returns

    List of local Instance Targets refering to each instance/ofModule in this member's path

    Definition Classes
    IsMember
  45. def pathTarget: IsModule

    Permalink

    returns

    Member's path target

    Definition Classes
    IsComponentIsMember
  46. def pathlessTarget: ReferenceTarget

    Permalink

    returns

    Same target without a path

    Definition Classes
    ReferenceTargetIsMember
  47. def prettyPrint(tab: String = ""): String

    Permalink

    Pretty serialization, ideal for error messages.

    Pretty serialization, ideal for error messages. Cannot be deserialized.

    returns

    Human-readable serialization

    Definition Classes
    Target
  48. val ref: String

    Permalink

    Name of component

  49. def reset: ReferenceTarget

    Permalink

    returns

    The reset signal of this reference, must be to a firrtl.ir.DefRegister

  50. def serialize: String

    Permalink

    returns

    Human-readable serialization

    Definition Classes
    TargetNamed
  51. def setPathTarget(newPath: IsModule): ReferenceTarget

    Permalink

    Resets this target to have a new path

    Resets this target to have a new path

    Definition Classes
    ReferenceTargetIsMember
  52. def sharedRoot(other: Target): Boolean

    Permalink

    Share root module

    Share root module

    Definition Classes
    Target
  53. def stripHierarchy(n: Int): ReferenceTarget

    Permalink

    Removes n levels of instance hierarchy

    Removes n levels of instance hierarchy

    Example: n=1, transforms (Top, A)/b:B/c:C -> (Top, B)/c:C

    Definition Classes
    ReferenceTargetIsComponent
  54. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  55. def targetParent: CompleteTarget

    Permalink

    returns

    Member's parent target

    Definition Classes
    ReferenceTargetIsMember
  56. def toGenericTarget: GenericTarget

    Permalink

    returns

    Converts this Target into a GenericTarget

    Definition Classes
    Target
  57. def toNamed: ComponentName

    Permalink

    returns

    Converts this Target into either a CircuitName, ModuleName, or ComponentName

    Definition Classes
    IsComponentTarget
  58. def toString(): String

    Permalink
    Definition Classes
    CompleteTarget → AnyRef → Any
  59. def toTarget: CompleteTarget

    Permalink
    Definition Classes
    CompleteTargetNamed
  60. def tokens: Seq[TargetToken]

    Permalink

    returns

    Target tokens

    Definition Classes
    IsComponentTarget
  61. def tryToComplete: Target

    Permalink

    returns

    Converts this Target into a CompleteTarget, or if it can't, return original Target

    Definition Classes
    Target
  62. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  63. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  64. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from IsComponent

Inherited from IsMember

Inherited from CompleteTarget

Inherited from Target

Inherited from Named

Inherited from AnyRef

Inherited from Any

Ungrouped