case class CircuitSerializationAnnotation(circuit: Circuit, filename: String, format: Format) extends NoTargetAnnotation with BufferedCustomFileEmission with WriteableCircuitAnnotation with Product with Serializable

Wraps a Circuit for serialization via CustomFileEmission

circuit

a Chisel Circuit

filename

name of destination file (excludes file extension)

format

serialization file format (sets file extension)

Source
ChiselAnnotations.scala
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. CircuitSerializationAnnotation
  2. Serializable
  3. WriteableCircuitAnnotation
  4. BufferedCustomFileEmission
  5. CustomFileEmission
  6. NoTargetAnnotation
  7. Annotation
  8. Product
  9. Equals
  10. AnyRef
  11. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new CircuitSerializationAnnotation(circuit: Circuit, filename: String, format: Format)

    circuit

    a Chisel Circuit

    filename

    name of destination file (excludes file extension)

    format

    serialization file format (sets file extension)

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String
    Implicit
    This member is added by an implicit conversion from CircuitSerializationAnnotation toany2stringadd[CircuitSerializationAnnotation] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (CircuitSerializationAnnotation, B)
    Implicit
    This member is added by an implicit conversion from CircuitSerializationAnnotation toArrowAssoc[CircuitSerializationAnnotation] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. def baseFileName(annotations: AnnotationSeq): String

    Output filename where serialized content will be written

    Output filename where serialized content will be written

    The full annotation sequence is a parameter to allow for the location where this annotation will be serialized to be a function of other annotations, e.g., if the location where information is written is controlled by a separate file location annotation.

    annotations

    the annotation sequence at the time of emission

    Attributes
    protected
    Definition Classes
    CircuitSerializationAnnotationCustomFileEmission
  8. val circuit: Circuit
  9. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  10. def emitLazily(annos: Seq[Annotation]): Iterable[String]

    Emit the circuit including annotations

    Emit the circuit including annotations

    Note

    This API is lazy to improve performance and enable emitting circuits larger than 2 GiB

  11. def ensuring(cond: (CircuitSerializationAnnotation) => Boolean, msg: => Any): CircuitSerializationAnnotation
    Implicit
    This member is added by an implicit conversion from CircuitSerializationAnnotation toEnsuring[CircuitSerializationAnnotation] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  12. def ensuring(cond: (CircuitSerializationAnnotation) => Boolean): CircuitSerializationAnnotation
    Implicit
    This member is added by an implicit conversion from CircuitSerializationAnnotation toEnsuring[CircuitSerializationAnnotation] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  13. def ensuring(cond: Boolean, msg: => Any): CircuitSerializationAnnotation
    Implicit
    This member is added by an implicit conversion from CircuitSerializationAnnotation toEnsuring[CircuitSerializationAnnotation] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  14. def ensuring(cond: Boolean): CircuitSerializationAnnotation
    Implicit
    This member is added by an implicit conversion from CircuitSerializationAnnotation toEnsuring[CircuitSerializationAnnotation] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  15. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  16. final def filename(annotations: AnnotationSeq): File

    Method that returns the filename where this annotation will be serialized.

    Method that returns the filename where this annotation will be serialized.

    annotations

    the annotations at the time of serialization

    Definition Classes
    CustomFileEmission
  17. val filename: String
  18. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  19. val format: Format
  20. final def getBytes: Iterable[Byte]

    A method that can convert this annotation to bytes that will be written to a file.

    A method that can convert this annotation to bytes that will be written to a file.

    If you only need to serialize a string, you can use the getBytes method:

    def getBytes: Iterable[Byte] = myString.getBytes
    Definition Classes
    BufferedCustomFileEmissionCustomFileEmission
  21. def getBytesBuffered: Iterable[Array[Byte]]

    A buffered version of getBytes for more efficient serialization

    A buffered version of getBytes for more efficient serialization

    If you only need to serialize an Iterable[String], you can use the String.getBytes method. It's also helpful to create a view which will do the .map lazily instead of eagerly, improving GC performance.

    def getBytesBuffered: Iterable[Array[Byte]] = myListString.view.map(_.getBytes)
    Definition Classes
    CircuitSerializationAnnotationBufferedCustomFileEmission
  22. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  23. lazy val hashCode: Int
    Definition Classes
    CircuitSerializationAnnotation → AnyRef → Any
  24. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  25. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  26. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  27. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  28. def productElementNames: Iterator[String]
    Definition Classes
    Product
  29. def replacements(file: File): AnnotationSeq

    Optionally, a sequence of annotations that will replace this annotation in the output annotation file.

    Optionally, a sequence of annotations that will replace this annotation in the output annotation file.

    A non-empty implementation of this method is a mechanism for telling a downstream Stage how to deserialize the information that was serialized to a separate file. For example, if a FIRRTL circuit is serialized to a separate file, this method could include an input file annotation that a later stage can use to read the serialized FIRRTL circuit back in.

    Definition Classes
    CustomFileEmission
  30. def serialize: String

    Optional pretty print

    Optional pretty print

    Definition Classes
    Annotation
    Note

    rarely used

  31. def suffix: Option[String]

    Optional suffix of the output file

    Optional suffix of the output file

    Attributes
    protected
    Definition Classes
    CircuitSerializationAnnotationCustomFileEmission
  32. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  33. def update(renames: RenameMap): Seq[NoTargetAnnotation]

    Update the target based on how signals are renamed

    Update the target based on how signals are renamed

    Definition Classes
    NoTargetAnnotationAnnotation
  34. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  35. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  36. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  37. def writeToFileImpl(file: File, annos: Seq[Annotation]): Unit

    Write the circuit and annotations to the .fir file

    Write the circuit and annotations to the .fir file

    Attributes
    protected
    Definition Classes
    CircuitSerializationAnnotationWriteableCircuitAnnotation

Deprecated Value Members

  1. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from CircuitSerializationAnnotation toStringFormat[CircuitSerializationAnnotation] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @deprecated @inline()
    Deprecated

    (Since version 2.12.16) Use formatString.format(value) instead of value.formatted(formatString), or use the f"" string interpolator. In Java 15 and later, formatted resolves to the new method in String which has reversed parameters.

  2. def [B](y: B): (CircuitSerializationAnnotation, B)
    Implicit
    This member is added by an implicit conversion from CircuitSerializationAnnotation toArrowAssoc[CircuitSerializationAnnotation] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use -> instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.

Inherited from Serializable

Inherited from CustomFileEmission

Inherited from NoTargetAnnotation

Inherited from Annotation

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd fromCircuitSerializationAnnotation to any2stringadd[CircuitSerializationAnnotation]

Inherited by implicit conversion StringFormat fromCircuitSerializationAnnotation to StringFormat[CircuitSerializationAnnotation]

Inherited by implicit conversion Ensuring fromCircuitSerializationAnnotation to Ensuring[CircuitSerializationAnnotation]

Inherited by implicit conversion ArrowAssoc fromCircuitSerializationAnnotation to ArrowAssoc[CircuitSerializationAnnotation]

Ungrouped