Lookupable

chisel3.experimental.hierarchy.core.Lookupable
See theLookupable companion trait
object Lookupable

Attributes

Companion
trait
Source
Lookupable.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Lookupable.type

Members list

Type members

Deprecated classlikes

class SimpleLookupable[X] extends Lookupable[X]

Attributes

Deprecated
[Since version Chisel 7.0.0] Use Lookupable.isLookupable instead of extending this.
Source
Lookupable.scala
Supertypes
trait Lookupable[X]
class Object
trait Matchable
class Any

Types

type Aux[B, C0] = Lookupable[B] { type C = C0; }

Type alias for simplifying explicit Lookupable type ascriptions

Type alias for simplifying explicit Lookupable type ascriptions

Attributes

Source
Lookupable.scala
type Simple[B] = Aux[B, B]

Type alias for simple Lookupable types

Type alias for simple Lookupable types

Attributes

Source
Lookupable.scala

Value members

Concrete methods

def isLookupable[X]: Simple[X]

Provides a lookupable for a type X that does not need special handling

Provides a lookupable for a type X that does not need special handling

This can only be used by types that do not contain a Data, BaseModule, or any IsInstantiable.

Attributes

Source
Lookupable.scala
def product1[X, T1 : Lookupable](in: X => T1, out: T1 => X)(implicit evidence$1: Lookupable[T1], sourceInfo: SourceInfo): Simple[X]

Factory method for creating Lookupable for user-defined types

Factory method for creating Lookupable for user-defined types

Attributes

Source
Lookupable.scala
def product2[X, T1 : Lookupable, T2 : Lookupable](in: X => (T1, T2), out: (T1, T2) => X)(implicit evidence$1: Lookupable[T1], evidence$2: Lookupable[T2], sourceInfo: SourceInfo): Simple[X]

Factory method for creating Lookupable for user-defined types

Factory method for creating Lookupable for user-defined types

Attributes

Source
Lookupable.scala
def product3[X, T1 : Lookupable, T2 : Lookupable, T3 : Lookupable](in: X => (T1, T2, T3), out: (T1, T2, T3) => X)(implicit evidence$1: Lookupable[T1], evidence$2: Lookupable[T2], evidence$3: Lookupable[T3], sourceInfo: SourceInfo): Simple[X]

Factory method for creating Lookupable for user-defined types

Factory method for creating Lookupable for user-defined types

Attributes

Source
Lookupable.scala
def product4[X, T1 : Lookupable, T2 : Lookupable, T3 : Lookupable, T4 : Lookupable](in: X => (T1, T2, T3, T4), out: (T1, T2, T3, T4) => X)(implicit evidence$1: Lookupable[T1], evidence$2: Lookupable[T2], evidence$3: Lookupable[T3], evidence$4: Lookupable[T4], sourceInfo: SourceInfo): Simple[X]

Factory method for creating Lookupable for user-defined types

Factory method for creating Lookupable for user-defined types

Attributes

Source
Lookupable.scala
def product5[X, T1 : Lookupable, T2 : Lookupable, T3 : Lookupable, T4 : Lookupable, T5 : Lookupable](in: X => (T1, T2, T3, T4, T5), out: (T1, T2, T3, T4, T5) => X)(implicit evidence$1: Lookupable[T1], evidence$2: Lookupable[T2], evidence$3: Lookupable[T3], evidence$4: Lookupable[T4], evidence$5: Lookupable[T5], sourceInfo: SourceInfo): Simple[X]

Factory method for creating Lookupable for user-defined types

Factory method for creating Lookupable for user-defined types

Attributes

Source
Lookupable.scala

Implicits

Implicits

implicit val lookupBigInt: Simple[BigInt]

Attributes

Source
Lookupable.scala
implicit val lookupBoolean: Simple[Boolean]

Attributes

Source
Lookupable.scala
implicit val lookupByte: Simple[Byte]

Attributes

Source
Lookupable.scala
implicit val lookupChar: Simple[Char]

Attributes

Source
Lookupable.scala
implicit def lookupData[B <: Data](implicit sourceInfo: SourceInfo): Simple[B]

Attributes

Source
Lookupable.scala
implicit val lookupDouble: Simple[Double]

Attributes

Source
Lookupable.scala
implicit def lookupEither[L, R](implicit sourceInfo: SourceInfo, lookupableL: Lookupable[L], lookupableR: Lookupable[R]): Aux[Either[L, R], Either[lookupableL.C, lookupableR.C]]

Attributes

Source
Lookupable.scala
implicit val lookupFloat: Simple[Float]

Attributes

Source
Lookupable.scala
implicit def lookupHasTarget(implicit sourceInfo: SourceInfo): Simple[HasTarget]

Attributes

Source
Lookupable.scala
implicit def lookupInstance[B <: BaseModule](implicit sourceInfo: SourceInfo): Simple[Instance[B]]

Attributes

Source
Lookupable.scala
implicit val lookupInt: Simple[Int]

Attributes

Source
Lookupable.scala
implicit def lookupIsLookupable[B <: IsLookupable](implicit sourceInfo: SourceInfo): Simple[B]

Attributes

Source
Lookupable.scala
implicit def lookupIterable[B, F <: (Iterable)](implicit sourceInfo: SourceInfo, lookupable: Lookupable[B]): Aux[F[B], F[lookupable.C]]

Attributes

Source
Lookupable.scala
implicit val lookupLong: Simple[Long]

Attributes

Source
Lookupable.scala
implicit def lookupMem[B <: MemBase[_]](implicit sourceInfo: SourceInfo): Simple[B]

Attributes

Source
Lookupable.scala
implicit def lookupOption[B](implicit sourceInfo: SourceInfo, lookupable: Lookupable[B]): Aux[Option[B], Option[lookupable.C]]

Attributes

Source
Lookupable.scala
implicit val lookupShort: Simple[Short]

Attributes

Source
Lookupable.scala
implicit val lookupString: Simple[String]

Attributes

Source
Lookupable.scala
implicit def lookupTuple2[T1, T2](implicit sourceInfo: SourceInfo, lookupableT1: Lookupable[T1], lookupableT2: Lookupable[T2]): Aux[(T1, T2), (lookupableT1.C, lookupableT2.C)]

Attributes

Source
Lookupable.scala
implicit def lookupTuple3[T1, T2, T3](implicit sourceInfo: SourceInfo, lookupableT1: Lookupable[T1], lookupableT2: Lookupable[T2], lookupableT3: Lookupable[T3]): Aux[(T1, T2, T3), (lookupableT1.C, lookupableT2.C, lookupableT3.C)]

Attributes

Source
Lookupable.scala
implicit def lookupTuple4[T1, T2, T3, T4](implicit sourceInfo: SourceInfo, lookupableT1: Lookupable[T1], lookupableT2: Lookupable[T2], lookupableT3: Lookupable[T3], lookupableT4: Lookupable[T4]): Aux[(T1, T2, T3, T4), (lookupableT1.C, lookupableT2.C, lookupableT3.C, lookupableT4.C)]

Attributes

Source
Lookupable.scala
implicit def lookupTuple5[T1, T2, T3, T4, T5](implicit sourceInfo: SourceInfo, lookupableT1: Lookupable[T1], lookupableT2: Lookupable[T2], lookupableT3: Lookupable[T3], lookupableT4: Lookupable[T4], lookupableT5: Lookupable[T5]): Aux[(T1, T2, T3, T4, T5), (lookupableT1.C, lookupableT2.C, lookupableT3.C, lookupableT4.C, lookupableT5.C)]

Attributes

Source
Lookupable.scala
implicit val lookupUnit: Simple[Unit]

Attributes

Source
Lookupable.scala

Deprecated implicits

implicit def lookupIsInstantiable[B <: IsInstantiable](implicit sourceInfo: SourceInfo): Aux[B, Instance[B]]

Attributes

Deprecated
[Since version Chisel 7.0.0] Use of @instantiable on user-defined types is deprecated. Implement Lookupable for your type instead.
Source
Lookupable.scala
implicit def lookupModule[B <: BaseModule](implicit sourceInfo: SourceInfo): Aux[B, Instance[B]]

Attributes

Deprecated
[Since version Chisel 7.0.0] Looking up Modules is deprecated, please cast to Instance instead (.toInstance).
Source
Lookupable.scala