Class

chisel3.aop.injecting

InjectingAspect

Related Doc: package injecting

Permalink

case class InjectingAspect[T <: RawModule, M <: RawModule](selectRoots: (T) ⇒ Iterable[M], injection: (M) ⇒ Unit) extends InjectorAspect[T, M] with Product with Serializable

Aspect to inject Chisel code into a module of type M

T

Type of top-level module

M

Type of root module (join point)

selectRoots

Given top-level module, pick the instances of a module to apply the aspect (root module)

injection

Function to generate Chisel hardware that will be injected to the end of module m Signals in m can be referenced and assigned to as if inside m (yes, it is a bit magical)

Source
InjectingAspect.scala
Linear Supertypes
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. InjectingAspect
  2. Serializable
  3. Serializable
  4. InjectorAspect
  5. Aspect
  6. NoTargetAnnotation
  7. Unserializable
  8. Annotation
  9. Product
  10. Equals
  11. AnyRef
  12. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new InjectingAspect(selectRoots: (T) ⇒ Iterable[M], injection: (M) ⇒ Unit)

    Permalink

    selectRoots

    Given top-level module, pick the instances of a module to apply the aspect (root module)

    injection

    Function to generate Chisel hardware that will be injected to the end of module m Signals in m can be referenced and assigned to as if inside m (yes, it is a bit magical)

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. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  7. def finalize(): Unit

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

    Permalink
    Definition Classes
    AnyRef → Any
  9. def getTargets: Seq[Target]

    Permalink
    Definition Classes
    Annotation
  10. val injection: (M) ⇒ Unit

    Permalink

    Function to generate Chisel hardware that will be injected to the end of module m Signals in m can be referenced and assigned to as if inside m (yes, it is a bit magical)

  11. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  12. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  13. final def notify(): Unit

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

    Permalink
    Definition Classes
    AnyRef
  15. val selectRoots: (T) ⇒ Iterable[M]

    Permalink

    Given top-level module, pick the instances of a module to apply the aspect (root module)

  16. def serialize: String

    Permalink
    Definition Classes
    Annotation
  17. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  18. final def toAnnotation(modules: Iterable[M], circuit: String): AnnotationSeq

    Permalink
    Definition Classes
    InjectorAspect
  19. final def toAnnotation(top: T): AnnotationSeq

    Permalink
    Definition Classes
    InjectorAspect → Aspect
  20. def update(renames: RenameMap): Seq[NoTargetAnnotation]

    Permalink
    Definition Classes
    NoTargetAnnotation → Annotation
  21. final def wait(): Unit

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

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

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

Inherited from Serializable

Inherited from Serializable

Inherited from InjectorAspect[T, M]

Inherited from Aspect[T]

Inherited from NoTargetAnnotation

Inherited from Unserializable

Inherited from Annotation

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped