Packages

sealed abstract class Printable extends AnyRef

Superclass of things that can be printed in the resulting circuit

Usually created using the custom string interpolator p"...". Printable string interpolation is similar to String interpolation in Scala For example:

printf(p"The value of wire = $wire\n")

This is equivalent to writing:

printf("The value of wire = %d\n", wire)

All Chisel data types have a method .toPrintable that gives a default pretty print that can be accessed via p"...". This works even for aggregate types, for example:

val myVec = VecInit(5.U, 10.U, 13.U)
printf(p"myVec = $myVec\n")
// myVec = Vec(5, 10, 13)

val myBundle = Wire(new Bundle {
  val foo = UInt()
  val bar = UInt()
})
myBundle.foo := 3.U
myBundle.bar := 11.U
printf(p"myBundle = $myBundle\n")
// myBundle = Bundle(a -> 3, b -> 11)

Users can override the default behavior of .toPrintable in custom Bundle and Record types.

Source
Printable.scala
Linear Supertypes
AnyRef, Any
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Printable
  2. AnyRef
  3. Any
Implicitly
  1. by Extensions
  2. by any2stringadd
  3. by StringFormat
  4. by Ensuring
  5. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Abstract Value Members

  1. abstract def unpack: (String, Seq[Data])

    Unpack into format String and a List of Data arguments

  2. abstract def unpack(ctx: Component)(implicit info: SourceInfo): (String, Iterable[String])

    Unpack into format String and a List of String arguments (identifiers)

    Unpack into format String and a List of String arguments (identifiers)

    Annotations
    @deprecated
    Deprecated

    (Since version Chisel 7.0.0) Use unpack with no arguments instead.

    Note

    This must be called after elaboration when Chisel nodes actually have names

  3. abstract def unpackArgs: Seq[Bits]

    Unpack into a Seq of captured Bits arguments

    Unpack into a Seq of captured Bits arguments

    Annotations
    @deprecated
    Deprecated

    (Since version Chisel 7.0.0) Use unpack with no arguments instead.

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def +(that: String): Printables

    Allow for appending Strings to Printables

  4. def +(that: Printable): Printables

    Allow for appending Printables like Strings

  5. def ->[B](y: B): (Printable, B)
    Implicit
    This member is added by an implicit conversion from Printable toArrowAssoc[Printable] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  6. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  7. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  8. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  9. def ensuring(cond: (Printable) => Boolean, msg: => Any): Printable
    Implicit
    This member is added by an implicit conversion from Printable toEnsuring[Printable] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  10. def ensuring(cond: (Printable) => Boolean): Printable
    Implicit
    This member is added by an implicit conversion from Printable toEnsuring[Printable] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  11. def ensuring(cond: Boolean, msg: => Any): Printable
    Implicit
    This member is added by an implicit conversion from Printable toEnsuring[Printable] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  12. def ensuring(cond: Boolean): Printable
    Implicit
    This member is added by an implicit conversion from Printable toEnsuring[Printable] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  13. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  14. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  15. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  16. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  17. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  18. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  19. def map(f: (Printable) => Printable): Printable

    Build a new Printable by applying a function to all sub-Printables

    Build a new Printable by applying a function to all sub-Printables

    Implicit
    This member is added by an implicit conversion from Printable toExtensions performed by method Extensions in chisel3.Printable.
    Definition Classes
    Extensions
    Note

    This is an extension method instead of normal method to avoid conflicts with the implicit conversion from String to Printable

  20. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  21. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  22. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  23. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  24. def toString(): String
    Definition Classes
    AnyRef → Any
  25. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  26. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  27. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Shadowed Implicit Value Members

  1. def +(other: String): String
    Implicit
    This member is added by an implicit conversion from Printable toany2stringadd[Printable] performed by method any2stringadd in scala.Predef.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (printable: any2stringadd[Printable]).+(other)
    Definition Classes
    any2stringadd

Deprecated Value Members

  1. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from Printable toStringFormat[Printable] 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): (Printable, B)
    Implicit
    This member is added by an implicit conversion from Printable toArrowAssoc[Printable] 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 AnyRef

Inherited from Any

Inherited by implicit conversion Extensions fromPrintable to Extensions

Inherited by implicit conversion any2stringadd fromPrintable to any2stringadd[Printable]

Inherited by implicit conversion StringFormat fromPrintable to StringFormat[Printable]

Inherited by implicit conversion Ensuring fromPrintable to Ensuring[Printable]

Inherited by implicit conversion ArrowAssoc fromPrintable to ArrowAssoc[Printable]

Ungrouped