final case class Instance[+A] extends SealedHierarchy[A] with Product with Serializable
User-facing Instance type. Represents a unique instance of type A which are marked as @instantiable Can be created using Instance.apply method.
- Source
- Instance.scala
- Alphabetic
- By Inheritance
- Instance
- Serializable
- Product
- Equals
- SealedHierarchy
- Hierarchy
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def _lookup[B, C](that: (A) => B)(implicit lookup: Lookupable[B], macroGenerated: MacroGenerated): C
Used by Chisel's internal macros.
Used by Chisel's internal macros. DO NOT USE in your normal Chisel code!!! Instead, mark the field you are accessing with @public
Given a selector function (that) which selects a member from the original, return the corresponding member from the instance.
Our @instantiable and @public macros generate the calls to this apply method
By calling this function, we summon the proper Lookupable typeclass from our implicit scope.
- that
a user-specified lookup function
- lookup
typeclass which contains the correct lookup function, based on the types of A and B
- macroGenerated
a value created in the macro, to make it harder for users to use this API
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def isA[B](implicit arg0: scala.reflect.api.JavaUniverse.TypeTag[B]): Boolean
Determine whether underlying proto is of type provided.
Determine whether underlying proto is of type provided.
- returns
Whether underlying proto is of provided type (with caveats outlined above)
- Definition Classes
- Hierarchy
- Note
IMPORTANT: this function requires summoning a TypeTag[B], which will fail if B is an inner class.
,IMPORTANT: this function IGNORES type parameters, akin to normal type erasure.
,IMPORTANT: this function relies on Java reflection for underlying proto, but Scala reflection for provided type E.g. isA[List[Int]] will return true, even if underlying proto is of type List[String]
- 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() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toDefinition: Definition[A]
Returns the definition of this Instance
- def toInstance: Instance[A]
- 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()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
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,FixedPoint,Clock, andReg, the abstract typesBits,Aggregate, andData, and the aggregate typesBundleandVec.The Chisel package is a compatibility layer that attempts to provide chisel2 compatibility in chisel3.
Utility objects and methods are found in the
utilpackage.The
testerspackage defines the basic interface for chisel testers.