Packages

package dataview

Source
package.scala
Linear Supertypes
Content Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. dataview
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. trait DataProduct[-A] extends AnyRef

    Typeclass interface for getting elements of type Data

    Typeclass interface for getting elements of type Data

    This is needed for validating DataViews targeting type A. Can be thought of as "can be the Target of a DataView".

    Chisel provides some implementations in object DataProduct that are available by default in the implicit scope.

    A

    Type that has elements of type Data

    Annotations
    @implicitNotFound()
    See also

    Detailed Documentation

  2. sealed class DataView[T, V <: Data] extends AnyRef

    Mapping between a target type T and a view type V

    Mapping between a target type T and a view type V

    Enables calling .viewAs[T] on instances of the target type.

    Detailed documentation

    T

    Target type (must have an implementation of DataProduct)

    V

    View type

    Annotations
    @implicitNotFound()
    Example:
    1. class Foo(val w: Int) extends Bundle {
        val a = UInt(w.W)
      }
      class Bar(val w: Int) extends Bundle {
        val b = UInt(w.W)
      }
      // DataViews are created using factory methods in the companion object
      implicit val view = DataView[Foo, Bar](
        // The first argument is a function constructing a Foo from a Bar
        foo => new Bar(foo.w)
        // The remaining arguments are a variable number of field pairings
        _.a -> _.b
      )
    See also

    object DataView for factory methods

    object PartialDataView for defining non-total DataViews

  3. implicit class DataViewable[T] extends AnyRef

    Provides viewAs for types that have an implementation of DataProduct

    Provides viewAs for types that have an implementation of DataProduct

    Calling viewAs also requires an implementation of DataView for the target type

  4. case class InvalidViewException(message: String) extends ChiselException with Product with Serializable
  5. sealed trait LowPriorityDataProduct extends AnyRef

    Low priority built-in implementations of DataProduct

    Low priority built-in implementations of DataProduct

    Note

    This trait exists so that dataDataProduct can be lower priority than iterableDataProduct to resolve ambiguity

  6. implicit class RecordUpcastable[T <: Record] extends AnyRef

    Provides viewAsSupertype for subclasses of Record

Value Members

  1. object DataProduct extends LowPriorityDataProduct

    Encapsulating object for built-in implementations of DataProduct

    Encapsulating object for built-in implementations of DataProduct

    Note

    DataProduct implementations provided in this object are available in the implicit scope

  2. object DataView

    Factory methods for constructing DataViews, see class for example use

  3. object PartialDataView

    Factory methods for constructing non-total DataViews

Inherited from AnyRef

Inherited from Any

Ungrouped