Packages

class IRLookup extends AnyRef

Handy lookup for obtaining AST information about a given Target

Source
IRLookup.scala
Linear Supertypes
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. IRLookup
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def allTargets(r: ReferenceTarget): Seq[ReferenceTarget]

    Given: A firrtl.annotations.ReferenceTarget of ~Top|Module>ref, which is a type of {foo: {bar: UInt}} Return: Seq(~Top|Module>ref, ~Top|Module>ref.foo, ~Top|Module>ref.foo.bar)

    Given: A firrtl.annotations.ReferenceTarget of ~Top|Module>ref, which is a type of {foo: {bar: UInt}} Return: Seq(~Top|Module>ref, ~Top|Module>ref.foo, ~Top|Module>ref.foo.bar)

    returns

    a target to each sub-component, including intermediate subcomponents

  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def asLocalRef(t: ReferenceTarget): ReferenceTarget

    returns

    the target converted to its local reference

    Example:
    1. Given ~Top|MyModule/inst:Other>foo.bar, returns ~Top|Other>foo

  7. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  8. def contains(mt: IsModule): Boolean

    mt

    firrtl.annotations.ModuleTarget or firrtl.annotations.InstanceTarget to be queried.

    returns

    whether a ModuleTarget or InstanceTarget is contained in this IRLookup

  9. def contains(t: ReferenceTarget): Boolean

    t

    firrtl.annotations.ReferenceTarget to be queried.

    returns

    whether a ReferenceTarget is contained in this IRLookup

  10. def declaration(t: ReferenceTarget): FirrtlNode

    t

    firrtl.annotations.ReferenceTarget to be queried.

    returns

    the statement containing the declaration of the target

  11. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  12. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  13. def expr(t: ReferenceTarget, flow: Flow = UnknownFlow): Expression

    t

    firrtl.annotations.ReferenceTarget to be queried.

    flow

    flow of the target

    returns

    expression of t

  14. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  15. def flow(t: ReferenceTarget): Flow
  16. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  17. def getExpr(t: ReferenceTarget, flow: Flow): Option[Expression]

    get expression of the target.

    get expression of the target. It can return None for many reasons, including

    • declaration is missing
    • flow is wrong
    • component is wrong
    t

    firrtl.annotations.ReferenceTarget to be queried.

    flow

    flow of the target

    returns

    Some(e) if expression exists, None if it does not

  18. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  19. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  20. def kind(t: ReferenceTarget): Kind
  21. def kindFinder(moduleTarget: ModuleTarget, kind: Kind): Seq[ReferenceTarget]

    Find firrtl.annotations.ReferenceTarget with a specific firrtl.Kind in a firrtl.annotations.ModuleTarget

  22. def leafTargets(r: ReferenceTarget): Seq[ReferenceTarget]

    Given: A firrtl.annotations.ReferenceTarget of ~Top|Module>ref and a type of {foo: {bar: UInt}} Return: Seq(~Top|Module>ref.foo.bar)

    Given: A firrtl.annotations.ReferenceTarget of ~Top|Module>ref and a type of {foo: {bar: UInt}} Return: Seq(~Top|Module>ref.foo.bar)

    returns

    a target to each sub-component, excluding intermediate subcomponents.

  23. def moduleLeafPortTargets(m: ModuleTarget): (Seq[(ReferenceTarget, Type)], Seq[(ReferenceTarget, Type)])

    returns

    Returns ((inputs, outputs)) target and type of each module port.

  24. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  25. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  26. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  27. def ports(mt: ModuleTarget): Seq[ReferenceTarget]

    Returns the references to the module's ports

    Returns the references to the module's ports

    mt

    firrtl.annotations.ModuleTarget to be queried.

    returns

    the port references of mt

  28. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  29. def toString(): String
    Definition Classes
    AnyRef → Any
  30. def tpe(t: ReferenceTarget): Type
  31. def validPath(t: IsModule): Boolean

    t

    firrtl.annotations.ReferenceTarget to be queried.

    returns

    whether a given firrtl.annotations.IsModule is valid, given the circuit's module/instance hierarchy

  32. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  33. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  34. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()

Inherited from AnyRef

Inherited from Any

Ungrouped