sealed class DataView[T, V <: Data] extends AnyRef
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( ... )
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
- Alphabetic
- By Inheritance
- DataView
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
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
andThen[V2 <: Data](g: DataView[V, V2])(implicit sourceInfo: SourceInfo): DataView[T, V2]
Compose two
DataViews
together to construct a view from the target of thisDataView
to the view type of the secondDataView
Compose two
DataViews
together to construct a view from the target of thisDataView
to the view type of the secondDataView
- V2
View type of
DataView
g
- g
a DataView from
V
to new view-typeV2
- returns
a new
DataView
from the originalT
to new view-typeV2
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native() @HotSpotIntrinsicCandidate()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
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()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- DataView → AnyRef → Any
-
def
total: Boolean
Indicates if the mapping contains every field of the target
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )