chisel6.4.0 < Back


# Packages

-  package root
  Definition Classes
    root
-  package chisel3

  This package contains the main chisel3 API.

  This package contains the main chisel3 API.

  Definition Classes
    root
-  package experimental

  Package for experimental features, which may have their API changed, be removed, etc.

  Package for experimental features, which may have their API changed, be removed, etc.

  Because its contents won't necessarily have the same level of stability and support as non-experimental, you must explicitly import this package to use its contents.

  Definition Classes
    chisel3
-  package hierarchy
  Definition Classes
    experimental
-  package core
  Definition Classes
    hierarchy
- Clone
- Definition
- Hierarchy
- ImportDefinitionAnnotation
- Instance
- IsClone
- IsInstantiable
- IsLookupable
- Lookupable
- Proto
- Underlying

c

chisel3.experimental.hierarchy.core

# Instance

###
Companion object Instance

#### 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

Linear Supertypes
Serializable, Product, Equals, SealedHierarchy[A], Hierarchy[A], AnyRef, Any
Type Hierarchy

Ordering

1. Alphabetic
2. By Inheritance

Inherited

1. Instance
2. Serializable
3. Product
4. Equals
5. SealedHierarchy
6. Hierarchy
7. AnyRef
8. Any

Implicitly

1. by InstanceBaseModuleExtensions
2. by HierarchyBaseModuleExtensions
3. by any2stringadd
4. by StringFormat
5. by Ensuring
6. by ArrowAssoc

1. Hide All
2. Show All

Visibility

1. Public
2. Protected

### 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 Instance[A] toany2stringadd[Instance[A]] performed by method any2stringadd in scala.Predef.
   Definition Classes
     any2stringadd
4.  def ->[B](y: B): (Instance[A], B)
   Implicit
     This member is added by an implicit conversion from Instance[A] toArrowAssoc[Instance[A]] performed by method ArrowAssoc in scala.Predef.
   Definition Classes
     ArrowAssoc
   Annotations
     @inline()
5.  final def ==(arg0: Any): Boolean
   Definition Classes
     AnyRef → Any
6.  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

   Definition Classes
     Instance → Hierarchy
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: (Instance[A]) => Boolean, msg: => Any): Instance[A]
   Implicit
     This member is added by an implicit conversion from Instance[A] toEnsuring[Instance[A]] performed by method Ensuring in scala.Predef.
   Definition Classes
     Ensuring
10.  def ensuring(cond: (Instance[A]) => Boolean): Instance[A]
    Implicit
      This member is added by an implicit conversion from Instance[A] toEnsuring[Instance[A]] performed by method Ensuring in scala.Predef.
    Definition Classes
      Ensuring
11.  def ensuring(cond: Boolean, msg: => Any): Instance[A]
    Implicit
      This member is added by an implicit conversion from Instance[A] toEnsuring[Instance[A]] performed by method Ensuring in scala.Predef.
    Definition Classes
      Ensuring
12.  def ensuring(cond: Boolean): Instance[A]
    Implicit
      This member is added by an implicit conversion from Instance[A] toEnsuring[Instance[A]] performed by method Ensuring in scala.Predef.
    Definition Classes
      Ensuring
13.  final def eq(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
14.  def finalize(): Unit
    Attributes
      protected[lang]
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.Throwable])
15.  final def getClass(): Class[_ <: AnyRef]
    Definition Classes
      AnyRef → Any
    Annotations
      @native()
16.  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]

17.  final def isInstanceOf[T0]: Boolean
    Definition Classes
      Any
18.  final def ne(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
19.  final def notify(): Unit
    Definition Classes
      AnyRef
    Annotations
      @native()
20.  final def notifyAll(): Unit
    Definition Classes
      AnyRef
    Annotations
      @native()
21.  def productElementNames: Iterator[String]
    Definition Classes
      Product
22.  def suggestName(name: String): Unit
    Implicit
      This member is added by an implicit conversion from Instance[A] toInstanceBaseModuleExtensions[A] performed by method InstanceBaseModuleExtensions in chisel3.experimental.hierarchy.core.Instance.This conversion will take place only if A is a subclass of BaseModule (A <: BaseModule).
    Definition Classes
      InstanceBaseModuleExtensions
23.  final def synchronized[T0](arg0: => T0): T0
    Definition Classes
      AnyRef
24.  def toDefinition: Definition[A]

    Returns the definition of this Instance

    Returns the definition of this Instance

    returns

      Return the underlying Definition[A] of this Hierarchy[A]

    Definition Classes
      Instance → Hierarchy
25.  def toInstance: Instance[A]

    returns

      Convert this Hierarchy[A] as a top-level Instance[A]

    Definition Classes
      Instance → Hierarchy
26.  final def wait(): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.InterruptedException])
27.  final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.InterruptedException])
28.  final def wait(arg0: Long): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.InterruptedException]) @native()

### Shadowed Implicit Value Members

1.  def toAbsoluteTarget: IsModule

   If this is an instance of a Module, returns the toAbsoluteTarget of this instance

   If this is an instance of a Module, returns the toAbsoluteTarget of this instance

   returns

     absoluteTarget of this instance

   Implicit
     This member is added by an implicit conversion from Instance[A] toInstanceBaseModuleExtensions[A] performed by method InstanceBaseModuleExtensions in chisel3.experimental.hierarchy.core.Instance.This conversion will take place only if A is a subclass of BaseModule (A <: BaseModule).
   Shadowing
     This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
     To access this member you can use a type ascription:

         (instance: InstanceBaseModuleExtensions[A]).toAbsoluteTarget

   Definition Classes
     InstanceBaseModuleExtensions
2.  def toAbsoluteTarget: IsModule

   Returns the toAbsoluteTarget of this hierarchy

   Returns the toAbsoluteTarget of this hierarchy

   returns

     absoluteTarget of this Hierarchy

   Implicit
     This member is added by an implicit conversion from Instance[A] toHierarchyBaseModuleExtensions[A] performed by method HierarchyBaseModuleExtensions in chisel3.experimental.hierarchy.core.Hierarchy.This conversion will take place only if A is a subclass of BaseModule (A <: BaseModule).
   Shadowing
     This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
     To access this member you can use a type ascription:

         (instance: HierarchyBaseModuleExtensions[A]).toAbsoluteTarget

   Definition Classes
     HierarchyBaseModuleExtensions
3.  def toTarget: IsModule

   If this is an instance of a Module, returns the toTarget of this instance

   If this is an instance of a Module, returns the toTarget of this instance

   returns

     target of this instance

   Implicit
     This member is added by an implicit conversion from Instance[A] toInstanceBaseModuleExtensions[A] performed by method InstanceBaseModuleExtensions in chisel3.experimental.hierarchy.core.Instance.This conversion will take place only if A is a subclass of BaseModule (A <: BaseModule).
   Shadowing
     This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
     To access this member you can use a type ascription:

         (instance: InstanceBaseModuleExtensions[A]).toTarget

   Definition Classes
     InstanceBaseModuleExtensions
4.  def toTarget: IsModule

   Returns the toTarget of this hierarchy

   Returns the toTarget of this hierarchy

   returns

     target of this hierarchy

   Implicit
     This member is added by an implicit conversion from Instance[A] toHierarchyBaseModuleExtensions[A] performed by method HierarchyBaseModuleExtensions in chisel3.experimental.hierarchy.core.Hierarchy.This conversion will take place only if A is a subclass of BaseModule (A <: BaseModule).
   Shadowing
     This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
     To access this member you can use a type ascription:

         (instance: HierarchyBaseModuleExtensions[A]).toTarget

   Definition Classes
     HierarchyBaseModuleExtensions

### Deprecated Value Members

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

### Inherited from Equals

### Inherited from SealedHierarchy[A]

### Inherited from Hierarchy[A]

### Inherited from AnyRef

### Inherited from Any

### Inherited by implicit conversion InstanceBaseModuleExtensions fromInstance[A] to InstanceBaseModuleExtensions[A]

### Inherited by implicit conversion HierarchyBaseModuleExtensions fromInstance[A] to HierarchyBaseModuleExtensions[A]

### Inherited by implicit conversion any2stringadd fromInstance[A] to any2stringadd[Instance[A]]

### Inherited by implicit conversion StringFormat fromInstance[A] to StringFormat[Instance[A]]

### Inherited by implicit conversion Ensuring fromInstance[A] to Ensuring[Instance[A]]

### Inherited by implicit conversion ArrowAssoc fromInstance[A] to ArrowAssoc[Instance[A]]

### Ungrouped