trait Lookupable[-B] extends AnyRef
Typeclass used to recontextualize values from an original Definition to an Instance
Implementations for Chisel types and other common Scala types are provided in the companion object. Users can define Lookupable for their own types.
- Annotations
- @implicitNotFound() @deprecatedInheritance()
- Source
- Lookupable.scala
case class Foo[T <: Data](name: String, data: T) object Foo { implicit def lookupable[T <: Data]: Lookupable.Simple[Foo[T]] = Lookupable.product2[Foo[T], String, T]( x => (x.name, x.data), Foo.apply ) }
- Alphabetic
- By Inheritance
- Lookupable
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- Protected
Type Members
- abstract type C
Abstract Value Members
- abstract def definitionLookup[A](that: (A) => B, definition: Definition[A]): C
Function called to modify the returned value of type B from A, into C
Function called to modify the returned value of type B from A, into C
- that
function that selects B from A
- definition
Definition of A, used to determine C's context
- abstract def instanceLookup[A](that: (A) => B, instance: Instance[A]): C
Function called to modify the returned value of type B from A, into C
Function called to modify the returned value of type B from A, into C
- that
function that selects B from A
- instance
Instance of A, used to determine C's context
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- def +(other: String): String
- Implicit
- This member is added by an implicit conversion from Lookupable[B] toany2stringadd[Lookupable[B]] performed by method any2stringadd in scala.Predef.
- Definition Classes
- any2stringadd
- def ->[B](y: B): (Lookupable[B], B)
- Implicit
- This member is added by an implicit conversion from Lookupable[B] toArrowAssoc[Lookupable[B]] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def ensuring(cond: (Lookupable[B]) => Boolean, msg: => Any): Lookupable[B]
- Implicit
- This member is added by an implicit conversion from Lookupable[B] toEnsuring[Lookupable[B]] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: (Lookupable[B]) => Boolean): Lookupable[B]
- Implicit
- This member is added by an implicit conversion from Lookupable[B] toEnsuring[Lookupable[B]] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: Boolean, msg: => Any): Lookupable[B]
- Implicit
- This member is added by an implicit conversion from Lookupable[B] toEnsuring[Lookupable[B]] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: Boolean): Lookupable[B]
- Implicit
- This member is added by an implicit conversion from Lookupable[B] toEnsuring[Lookupable[B]] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def getProto[A](h: Hierarchy[A]): A
- Attributes
- protected
- def getUnderlying[A](h: Hierarchy[A]): Underlying[A]
- Attributes
- protected
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
Deprecated Value Members
- def formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from Lookupable[B] toStringFormat[Lookupable[B]] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @deprecated @inline()
- Deprecated
(Since version 2.12.16) Use
formatString.format(value)
instead ofvalue.formatted(formatString)
, or use thef""
string interpolator. In Java 15 and later,formatted
resolves to the new method in String which has reversed parameters.
- def →[B](y: B): (Lookupable[B], B)
- Implicit
- This member is added by an implicit conversion from Lookupable[B] toArrowAssoc[Lookupable[B]] 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.
This is the documentation for Chisel.
Package structure
The chisel3 package presents the public API of Chisel. It contains the concrete core types
UInt
,SInt
,Bool
,Clock
, andReg
, the abstract typesBits
,Aggregate
, andData
, and the aggregate typesBundle
andVec
.The Chisel package is a compatibility layer that attempts to provide chisel2 compatibility in chisel3.
Utility objects and methods are found in the
util
package.The
testers
package defines the basic interface for chisel testers.