dfhdl.compiler.ir

Members list

Type members

Classlikes

object ClkCfg

Attributes

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

Sets the policy for inclusing the clock or reset signals when they are not needed

Sets the policy for inclusing the clock or reset signals when they are not needed

Attributes

Supertypes
trait Enum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
sealed trait ComposedDFType extends DFType

Attributes

Supertypes
trait DFType
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
class DFOpaque
class DFStruct
class DFVector
object ConfigN

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
ConfigN.type
object ConnectToMap

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
final case class DB(members: List[DFMember], refTable: Map[DFRefAny, DFMember], globalTags: Map[(Any, ClassTag[_]), DFTag], srcFiles: List[SourceFile])

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
case object DFBit extends DFBoolOrBit

Attributes

Supertypes
trait Singleton
trait Product
trait Mirror
trait DFBoolOrBit
trait DFType
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
DFBit.type
final case class DFBits(widthParamRef: IntParamRef) extends DFType

Attributes

Companion
object
Supertypes
trait DFType
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object DFBits

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
DFBits.type
sealed trait DFBlock extends DFOwner

Attributes

Supertypes
trait DFOwner
trait DFMember
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
trait Block
class DFCaseBlock
trait Block
class DFForBlock
class DFWhileBlock
class DomainBlock
class ProcessBlock
class StepBlock
Show all
case object DFBool extends DFBoolOrBit

Attributes

Supertypes
trait Singleton
trait Product
trait Mirror
trait DFBoolOrBit
trait DFType
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
DFBool.type
sealed trait DFBoolOrBit extends DFType

Attributes

Companion
object
Supertypes
trait DFType
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
object DFBit
object DFBool
object DFBoolOrBit

Attributes

Companion
trait
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type
object DFConditional

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
final case class DFDecimal(signed: Boolean, widthParamRef: IntParamRef, fractionWidth: Int, nativeType: NativeType) extends DFType

Attributes

Companion
object
Supertypes
trait DFType
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object DFDecimal

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
DFDecimal.type
final case class DFDesignBlock(domainType: DomainType, dclMeta: Meta, instMode: InstMode, ownerRef: Ref, meta: Meta, tags: DFTags) extends DFBlock, DFDomainOwner

Attributes

Companion
object
Supertypes
trait DFOwnerNamed
trait Named
trait DFBlock
trait DFOwner
trait DFMember
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object DFDesignBlock

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
sealed trait DFDomainOwner extends DFOwnerNamed

Attributes

Supertypes
trait DFOwnerNamed
trait Named
trait DFOwner
trait DFMember
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
sealed trait DFDouble extends DFType

Attributes

Companion
object
Supertypes
trait DFType
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
object DFDouble
case object DFDouble extends DFDouble

Attributes

Companion
trait
Supertypes
trait Singleton
trait Product
trait Mirror
trait DFDouble
trait DFType
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
DFDouble.type
final case class DFEnum(name: String, widthParam: Int, entries: ListMap[String, BigInt]) extends NamedDFType

Attributes

Companion
object
Supertypes
trait NamedDFType
trait NamedGlobal
trait DFType
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object DFEnum

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
DFEnum.type
final case class DFInterfaceOwner(domainType: DomainType, ownerRef: Ref, meta: Meta, tags: DFTags) extends DFDomainOwner

Attributes

Supertypes
trait DFOwnerNamed
trait Named
trait DFOwner
trait DFMember
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object DFLoop

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
DFLoop.type
sealed trait DFMember extends Product, Serializable, HasRefCompare[DFMember]

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
trait Empty
object Empty
object FirstStep
object NextStep
object ThisStep
trait Named
trait DFOwnerNamed
class DomainBlock
class ProcessBlock
trait DFVal
trait CanBeExpr
trait Header
class DFIfHeader
trait Alias
trait Consumer
class History
trait Partial
class ApplyIdx
class ApplyRange
class AsIs
class SelectField
trait CanBeGlobal
class Const
class Func
class DesignParam
class NOTHING
class Dcl
class OPEN
class StepBlock
trait DFOwner
trait DFBlock
trait Block
class DFCaseBlock
trait Block
class DFForBlock
class DFWhileBlock
class DFRange
trait Statement
class DFNet
class Goto
class TextOut
class Wait
Show all
object DFMember

Attributes

Companion
trait
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type
DFMember.type
final case class DFNet(lhsRef: Ref, op: Op, rhsRef: Ref, ownerRef: Ref, meta: Meta, tags: DFTags) extends Statement

Attributes

Companion
object
Supertypes
trait Statement
trait DFMember
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object DFNet

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
DFNet.type
sealed trait DFNothing extends DFUnbounded

Attributes

Companion
object
Supertypes
trait DFUnbounded
trait DFType
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
object DFNothing
case object DFNothing extends DFNothing

Attributes

Companion
trait
Supertypes
trait Singleton
trait Product
trait Mirror
trait DFNothing
trait DFUnbounded
trait DFType
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
DFNothing.type
final case class DFOpaque(name: String, id: Id, actualType: DFType) extends NamedDFType, ComposedDFType

Attributes

Companion
object
Supertypes
trait NamedDFType
trait NamedGlobal
trait DFType
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object DFOpaque

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
DFOpaque.type
sealed trait DFOwner extends DFMember

Attributes

Companion
object
Supertypes
trait DFMember
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
trait DFBlock
trait Block
class DFCaseBlock
trait Block
class DFForBlock
class DFWhileBlock
class DomainBlock
class ProcessBlock
class StepBlock
trait DFOwnerNamed
Show all
object DFOwner

Attributes

Companion
trait
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type
DFOwner.type
sealed trait DFOwnerNamed extends DFOwner, Named

Attributes

Supertypes
trait Named
trait DFOwner
trait DFMember
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
final case class DFPhysical(unit: Unit) extends DFUnbounded

Attributes

Companion
object
Supertypes
trait DFUnbounded
trait DFType
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object DFPhysical

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
DFPhysical.type
final case class DFRange(startRef: Ref, endRef: Ref, op: Op, stepRef: Ref, ownerRef: Ref, meta: Meta, tags: DFTags) extends DFMember

Attributes

Companion
object
Supertypes
trait DFMember
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object DFRange

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
DFRange.type
sealed trait DFRef[+M <: DFMember]

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes
trait Empty
object Empty
object Empty
trait OneWay[M]
trait TwoWay[M, O]
trait TypeRef
Show all
object DFRef

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
DFRef.type
object DFSInt

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
DFSInt.type
sealed trait DFString extends DFUnbounded

Attributes

Companion
object
Supertypes
trait DFUnbounded
trait DFType
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
object DFString
case object DFString extends DFString

Attributes

Companion
trait
Supertypes
trait Singleton
trait Product
trait Mirror
trait DFString
trait DFUnbounded
trait DFType
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
DFString.type
final case class DFStruct(name: String, fieldMap: ListMap[String, DFType]) extends NamedDFType, ComposedDFType

Attributes

Companion
object
Supertypes
trait NamedDFType
trait NamedGlobal
trait DFType
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object DFStruct

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
DFStruct.type
sealed trait DFTag extends Product, Serializable

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
trait DFTagOf[T]
object Tag
object Combinational
object IdentTag
object IteratorTag
object DuplicateTag
class Explicit
class NameTag
Show all
trait DFTagOf[-T <: DFMember] extends DFTag

Attributes

Supertypes
trait DFTag
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
object Tag
object Combinational
object IdentTag
object IteratorTag
object DuplicateTag
class Explicit
Show all
object DFTags

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
DFTags.type
object DFTuple

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
DFTuple.type
sealed trait DFType extends Product, Serializable, HasRefCompare[DFType]

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
class DFOpaque
class DFStruct
class DFVector
class DFBits
trait DFBoolOrBit
object DFBit
object DFBool
class DFDecimal
trait DFDouble
object DFDouble
trait DFUnbounded
trait DFNothing
object DFNothing
class DFPhysical
trait DFString
object DFString
trait DFUnit
object DFUnit
trait NamedDFType
class DFEnum
Show all
object DFType

Attributes

Companion
trait
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type
DFType.type
object DFUInt

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
DFUInt.type
sealed trait DFUnbounded extends DFType

Attributes

Supertypes
trait DFType
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
trait DFNothing
object DFNothing
class DFPhysical
trait DFString
object DFString
trait DFUnit
object DFUnit
Show all
sealed trait DFUnit extends DFUnbounded

Attributes

Companion
object
Supertypes
trait DFUnbounded
trait DFType
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
object DFUnit
case object DFUnit extends DFUnit

Attributes

Companion
trait
Supertypes
trait Singleton
trait Product
trait Mirror
trait DFUnit
trait DFUnbounded
trait DFType
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
DFUnit.type
sealed trait DFVal extends Named

Attributes

Companion
object
Supertypes
trait Named
trait DFMember
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
trait CanBeExpr
trait Header
class DFIfHeader
trait Alias
trait Consumer
class History
trait Partial
class ApplyIdx
class ApplyRange
class AsIs
class SelectField
trait CanBeGlobal
class Const
class Func
class DesignParam
class NOTHING
class Dcl
class OPEN
Show all
object DFVal

Attributes

Companion
trait
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type
DFVal.type
final case class DFVector(cellType: DFType, cellDimParamRefs: List[IntParamRef]) extends ComposedDFType

Attributes

Companion
object
Supertypes
trait DFType
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object DFVector

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
DFVector.type
object DFXInt

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
DFXInt.type
final case class DomainBlock(domainType: DomainType, ownerRef: Ref, meta: Meta, tags: DFTags) extends DFBlock, DFDomainOwner

Attributes

Supertypes
trait DFOwnerNamed
trait Named
trait DFBlock
trait DFOwner
trait DFMember
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Supertypes
trait Enum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
case object DuplicateTag extends DFTagOf[DFDesignBlock]

Attributes

Supertypes
trait Singleton
trait Product
trait Mirror
trait DFTag
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
final case class Goto(stepRef: Ref, ownerRef: Ref, meta: Meta, tags: DFTags) extends Statement

Attributes

Companion
object
Supertypes
trait Statement
trait DFMember
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object Goto

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Goto.type
abstract class HWAnnotation extends StaticAnnotation, HasTypeName, Product, Serializable

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait HasTypeName
trait StaticAnnotation
class Annotation
class Object
trait Matchable
class Any
Show all
Known subtypes
class pure
trait HasRefCompare[T <: HasRefCompare[T]]

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Explicit
trait Pattern
class Alternative
class Bind
class BindSI
object CatchAll
class NamedArg
class Singleton
class Struct
trait DFMember
trait Empty
object Empty
object FirstStep
object NextStep
object ThisStep
trait Named
trait DFOwnerNamed
class DomainBlock
class ProcessBlock
trait DFVal
trait CanBeExpr
trait Header
class DFIfHeader
trait Alias
trait Consumer
class History
trait Partial
class ApplyIdx
class ApplyRange
class AsIs
class SelectField
trait CanBeGlobal
class Const
class Func
class DesignParam
class NOTHING
class Dcl
class OPEN
class StepBlock
trait DFOwner
trait DFBlock
trait Block
class DFCaseBlock
trait Block
class DFForBlock
class DFWhileBlock
class DFRange
trait Statement
class DFNet
class Goto
class TextOut
class Wait
trait DFType
class DFOpaque
class DFStruct
class DFVector
class DFBits
trait DFBoolOrBit
object DFBit
object DFBool
class DFDecimal
trait DFDouble
object DFDouble
trait DFUnbounded
trait DFNothing
object DFNothing
class DFPhysical
trait DFString
object DFString
trait DFUnit
object DFUnit
trait NamedDFType
class DFEnum
enum DomainType
trait Sensitivity
object All
class List
class Related
class Explicit
enum Op
class Report
class Assert
Show all

Attributes

Companion
object
Supertypes
trait Enum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
enum
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type

Attributes

Supertypes
trait Enum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object IntParamRef

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
trait MemberGetSet

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
object getSet
enum MemberView

Attributes

Supertypes
trait Enum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
final case class Meta(nameOpt: Option[String], position: Position, docOpt: Option[String], annotations: List[HWAnnotation])

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object Meta

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Meta.type
final case class NameTag(name: String) extends DFTag

Attributes

Supertypes
trait DFTag
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
sealed trait NamedDFType extends DFType, NamedGlobal

Attributes

Supertypes
trait NamedGlobal
trait DFType
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
class DFEnum
class DFOpaque
class DFStruct
object NamedDFTypes

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
trait NamedGlobal

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
trait NamedDFType
class DFEnum
class DFOpaque
class DFStruct
class Explicit
final case class ProcessBlock(sensitivity: Sensitivity, ownerRef: Ref, meta: Meta, tags: DFTags) extends DFBlock, DFOwnerNamed

Attributes

Companion
object
Supertypes
trait DFOwnerNamed
trait Named
trait DFBlock
trait DFOwner
trait DFMember
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object ProcessBlock

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type

Attributes

Companion
object
Supertypes
trait Enum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
class Related
class Explicit
object RTDomainCfg

Attributes

Companion
enum
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type
object RstCfg

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
RstCfg.type
final case class SourceFile(sourceOrigin: SourceOrigin, sourceType: SourceType, path: String, contents: String)

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Supertypes
trait Enum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
sealed trait SourceType extends Product, Serializable

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
enum Design
trait Tool
object SourceType

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
SourceType.type
sealed trait Statement extends DFMember

Attributes

Supertypes
trait DFMember
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
class DFNet
class Goto
class TextOut
class Wait
final case class StepBlock(ownerRef: Ref, meta: Meta, tags: DFTags) extends DFBlock, Named

Attributes

Companion
object
Supertypes
trait Named
trait DFBlock
trait DFOwner
trait DFMember
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object StepBlock

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
StepBlock.type
final case class TextOut(op: Op, msgParts: List[String], msgArgs: List[Ref], ownerRef: Ref, meta: Meta, tags: DFTags) extends Statement

Attributes

Companion
object
Supertypes
trait Statement
trait DFMember
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object TextOut

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
TextOut.type
case object ToScalaValueAccess extends DFTagOf[DFVal]

Attributes

Supertypes
trait Singleton
trait Product
trait Mirror
trait DFTagOf[DFVal]
trait DFTag
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
final case class Wait(triggerRef: TriggerRef, ownerRef: Ref, meta: Meta, tags: DFTags) extends Statement

Attributes

Companion
object
Supertypes
trait Statement
trait DFMember
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object Wait

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Wait.type

Types

opaque type ConfigN[T]
opaque type ConnectToMap
opaque type DFTags
opaque type IntParamRef

Value members

Concrete methods

def calcFuncData[OT <: DFType](outType: OT, op: Op, argTypes: List[DFType], argData: List[Any])(using MemberGetSet): outType.Data
def dataConversion[TT <: DFType, FT <: DFType](toType: TT, fromType: FT)(fromData: fromType.Data)(using MemberGetSet): toType.Data
def selBitRangeData(fromData: (BitVector, BitVector), relBitHigh: Int, relBitLow: Int): (BitVector, BitVector)

Concrete fields

final val DFInt32: DFDecimal

Extensions

Extensions

extension (annotList: List[Annotation])
extension (intCompanion: Int.type)
def unapply(intParamRef: IntParamRef)(using MemberGetSet): Option[Int]