dfhdl.compiler.analysis

Members list

Type members

Classlikes

object AsOpaque

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
AsOpaque.type
object Bind

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
Bind.type
object ClkEdge

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
ClkEdge.type
class ComposedDFTypeReplacement[H](preCheck: DFType => Option[H], updateFunc: PartialFunction[(DFType, H), DFType])(using x$3: MemberGetSet)

An extractor that transforms a DFType using a provided update function.

An extractor that transforms a DFType using a provided update function.

This extractor works in two phases:

  1. It first applies the preCheck predicate to determine if the type should be transformed and to extract a helper object of type H.
  2. Then it recursively processes any nested types (for structs, vectors, opaques).
  3. Finally, it applies the updateFunc to either the original type or the recursively processed type, along with the helper object.

Type parameters

H

The type of the helper object produced by preCheck and consumed by updateFunc

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
object DclConst

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
DclConst.type
object DclIn

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
DclIn.type
object DclOut

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
DclOut.type
object DclPort

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
DclPort.type
object DclVar

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
DclVar.type

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
final class DomainAnalysis(designDB: DB)

Used to get context of existing clock and reset sources per design and domain configuration

Used to get context of existing clock and reset sources per design and domain configuration

Attributes

Supertypes
class Object
trait Matchable
class Any
object Ident

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
Ident.type
object IteratorDcl

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
object OpaqueActual

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
object RstActive

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
RstActive.type
object StateAnalysis

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type

Extensions

Extensions

extension [CB <: Block](cb: CB)(using MemberGetSet)
def getFirstCB: CB
def getGuardOption: Option[DFVal]
def getLastCB: CB
def getLeadingChain: List[CB]
def getNextCB: Option[CB]
def getPrevCB: Option[CB]
def isExhaustive: Option[Boolean]
def isFirstCB: Boolean
def isLastCB: Boolean
extension [CH <: Header](ch: CH)(using MemberGetSet)
def getCBList: List[ch.TBlock]
def getFirstCB: ch.TBlock
def getLastCB: ch.TBlock
extension (designDB: DB)
extension (dfVal: DFVal)
def existsInComposedReadDeps(cond: DFVal => Boolean)(using MemberGetSet): Boolean
def flatName(using MemberGetSet): String
def getConnectionTo(using MemberGetSet): Option[DFNet]
def getReadDeps(using MemberGetSet): Set[TextOut | DFNet | DFVal | Block]
def isConstVAR(using MemberGetSet): Boolean
def isReferencedByAnyDcl(using MemberGetSet): Boolean
def suggestName(using MemberGetSet): Option[String]
extension (domainOwner: DFDomainOwner)
def isDependentOn(thatDomainOwner: DFDomainOwner)(using getSet: MemberGetSet): Boolean
extension (member: DFMember)
extension (member: DFMember)
def consumesCycles(using MemberGetSet): Boolean
extension (members: List[DFMember])
extension (mh: DFMatchHeader)(using MemberGetSet)
def hasWildcards: Boolean
extension (net: DFNet)
extension (origVal: DFVal)
def collectRelMembers(includeOrigVal: Boolean)(using MemberGetSet): List[DFVal]
extension (owner: DFOwner)
def getVeryLastMember(using getSet: MemberGetSet): Option[DFMember]
def members(memberView: MemberView)(using MemberGetSet): List[DFMember]
extension (pattern: Pattern)(using MemberGetSet)
def hasWildcards: Boolean
extension (patterns: Iterable[Pattern])
def flattenPatterns: Iterable[Pattern]
extension (pb: ProcessBlock)(using MemberGetSet)
def isSequential: Boolean
extension (ref: TwoWayAny)
extension (refTW: Ref)
def isViaRef(using MemberGetSet): Boolean
extension (textOut: TextOut)