Super-trait for Instance and Definition
Enables writing functions which are Instance/Definition agnostic
Attributes
- Companion
- object
- Source
- Hierarchy.scala
- Graph
-
- Supertypes
Members list
Value members
Abstract methods
Used by Chisel's internal macros. DO NOT USE in your normal Chisel code!!! Instead, mark the field you are accessing with public
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 hierarchy.
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.
Value parameters
- 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
- that
-
a user-specified lookup function
Attributes
- Source
- Hierarchy.scala
Attributes
- Returns
-
Return the underlying Definition[A] of this Hierarchy[A]
- Source
- Hierarchy.scala
Attributes
- Returns
-
Convert this Hierarchy[A] as a top-level Instance[A]
- Source
- Hierarchy.scala
Concrete methods
Returns the toAbsoluteTarget of this hierarchy
Returns the toAbsoluteTarget of this hierarchy
Attributes
- Returns
-
absoluteTarget of this Hierarchy
- Source
- Hierarchy.scala
Returns the toRelativeTarget of this hierarchy
Returns the toRelativeTarget of this hierarchy
Attributes
- Returns
-
relativeTarget of this Hierarchy
- Source
- Hierarchy.scala
Returns the toRelativeTarget of this hierarchy
Returns the toRelativeTarget of this hierarchy
Attributes
- Returns
-
relativeTarget of this Hierarchy
- Source
- Hierarchy.scala
Returns the toTarget of this hierarchy
Returns the toTarget of this hierarchy
Attributes
- Returns
-
target of this hierarchy
- Source
- Hierarchy.scala
Inherited methods
Determine whether underlying proto is of type provided.
Determine whether underlying proto is of type provided.
Attributes
- Returns
-
Whether underlying proto is of provided type (with caveats outlined above)
- 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]
- Inherited from:
- HierarchyIsA
- Source
- IsA.scala