Packages

c

spinal.core

SpinalEnumCraft

class SpinalEnumCraft[T <: SpinalEnum] extends BaseType with InferableEnumEncodingImpl with DataPrimitives[SpinalEnumCraft[T]]

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SpinalEnumCraft
  2. DataPrimitives
  3. InferableEnumEncodingImpl
  4. InferableEnumEncoding
  5. EnumEncoded
  6. BaseType
  7. Expression
  8. StatementDoubleLinkedContainer
  9. DoubleLinkedContainer
  10. DeclarationStatement
  11. LeafStatement
  12. Statement
  13. BaseNode
  14. ExpressionContainer
  15. Data
  16. SpinalTagReady
  17. Assignable
  18. NameableByComponent
  19. Nameable
  20. OwnableRef
  21. ContextUser
  22. ScalaLocated
  23. GlobalDataUser
  24. AnyRef
  25. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new SpinalEnumCraft(spinalEnum: T)

Type Members

  1. abstract type RefOwnerType
    Definition Classes
    OwnableRef

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. def ##(right: Data): Bits

    Concatenation between two data

    Concatenation between two data

    Definition Classes
    Data
  3. final def ##(): Int
    Definition Classes
    AnyRef → Any
  4. def :=(that: SpinalEnumElement[T]): Unit
  5. def :=(that: SpinalEnumCraft[T]): Unit

    Assign a data to this

    Assign a data to this

    Definition Classes
    DataPrimitives
  6. def <>(that: SpinalEnumCraft[T]): Unit

    Auto connection between two data

    Auto connection between two data

    Definition Classes
    DataPrimitives
  7. def =/=(that: SpinalEnumElement[T]): Bool
  8. def =/=(that: SpinalEnumCraft[T]): Bool
    Definition Classes
    DataPrimitives
  9. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  10. def ===(that: SpinalEnumElement[T]): Bool
  11. def ===(that: SpinalEnumCraft[T]): Bool

    Comparison between two data

    Comparison between two data

    Definition Classes
    DataPrimitives
  12. def \(that: SpinalEnumCraft[T]): SpinalEnumCraft[T]

    Use as \= to have the same behavioral thant VHDL variable

    Use as \= to have the same behavioral thant VHDL variable

    Definition Classes
    DataPrimitives
  13. val _spinalTags: Set[SpinalTag]
    Definition Classes
    SpinalTagReady
  14. def addAttribute(attribute: Attribute): SpinalEnumCraft.this.type
    Definition Classes
    BaseTypeDataSpinalTagReady
  15. def addAttribute(name: String, value: String): SpinalEnumCraft.this.type
    Definition Classes
    SpinalTagReady
  16. def addAttribute(name: String): SpinalEnumCraft.this.type
    Definition Classes
    SpinalTagReady
  17. def addTag[T <: SpinalTag](spinalTag: T): SpinalEnumCraft.this.type
    Definition Classes
    SpinalTagReady
  18. def addTags[T <: SpinalTag](tags: Iterable[T]): SpinalEnumCraft.this.type
    Definition Classes
    SpinalTagReady
  19. val algoIncrementale: Int
    Definition Classes
    BaseNode
  20. val algoInt: Int
    Definition Classes
    BaseNode
  21. def allowDirectionLessIo: SpinalEnumCraft.this.type
    Definition Classes
    Data
  22. def allowOverride: SpinalEnumCraft.this.type

    Allow a data to be overrided

    Allow a data to be overrided

    Definition Classes
    Data
  23. def allowPruning(): SpinalEnumCraft.this.type
    Definition Classes
    Data
  24. def allowSimplifyIt(): SpinalEnumCraft.this.type
    Definition Classes
    BaseTypeData
  25. def allowUnsetRegToAvoidLatch: SpinalEnumCraft.this.type
    Definition Classes
    Data
  26. def as[T <: Data](dataType: HardType[T]): T
    Definition Classes
    Data
  27. def asBits: Bits

    Cast data to Bits

    Cast data to Bits

    Definition Classes
    SpinalEnumCraftData
  28. def asData: Data
    Definition Classes
    Data
  29. def asInOut(): SpinalEnumCraft.this.type

    set a data as inout

    set a data as inout

    Definition Classes
    BaseTypeData
  30. def asInput(): SpinalEnumCraft.this.type

    Set a data as input

    Set a data as input

    Definition Classes
    BaseTypeData
  31. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  32. def asOutput(): SpinalEnumCraft.this.type

    Set a data as output

    Set a data as output

    Definition Classes
    BaseTypeData
  33. def assignDontCare(): SpinalEnumCraft.this.type
    Definition Classes
    SpinalEnumCraftData
  34. final def assignFrom(that: AnyRef, target: AnyRef = this): Unit
    Definition Classes
    Data
  35. def assignFromBits(bits: Bits, hi: Int, lo: Int): Unit
    Definition Classes
    SpinalEnumCraftData
  36. def assignFromBits(bits: Bits): Unit
    Definition Classes
    SpinalEnumCraftData
  37. def assignFromBits(bits: Bits, offset: Int, bitCount: BitCount): Unit
    Definition Classes
    Data
  38. def bootInferration(): Unit
  39. var clockDomain: ClockDomain
    Definition Classes
    BaseType
  40. def clone(): SpinalEnumCraft.this.type
    Definition Classes
    SpinalEnumCraftBaseTypeData → AnyRef
  41. def component: Component
    Definition Classes
    ContextUser
  42. final def compositAssignFrom(that: AnyRef, target: AnyRef, kind: AnyRef): Unit
    Definition Classes
    Assignable
  43. val compositeAssign: Assignable
    Definition Classes
    Assignable
  44. def copyEncodingConfig(that: InferableEnumEncodingImpl): Unit
    Definition Classes
    InferableEnumEncodingImpl
  45. def default(that: ⇒ SpinalEnumCraft[T]): SpinalEnumCraft[T]

    Set a default value to a data

    Set a default value to a data

    Definition Classes
    DataPrimitives
  46. def dirString(): String
    Definition Classes
    Data
  47. def dlcAppend(that: AssignmentStatement): SpinalEnumCraft.this.type
    Definition Classes
    DoubleLinkedContainer
  48. def dlcForeach[T >: AssignmentStatement](func: (T) ⇒ Unit): Unit
    Definition Classes
    DoubleLinkedContainer
  49. def dlcHasOnlyOne: Boolean
    Definition Classes
    DoubleLinkedContainer
  50. val dlcHead: AssignmentStatement
    Definition Classes
    DoubleLinkedContainer
  51. def dlcIsEmpty: Boolean
    Definition Classes
    DoubleLinkedContainer
  52. val dlcLast: AssignmentStatement
    Definition Classes
    DoubleLinkedContainer
  53. def dlcPrepend(that: AssignmentStatement): SpinalEnumCraft.this.type
    Definition Classes
    DoubleLinkedContainer
  54. def dontSimplifyIt(): SpinalEnumCraft.this.type
    Definition Classes
    BaseTypeData
  55. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  56. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  57. def existsTag(cond: (SpinalTag) ⇒ Boolean): Boolean
    Definition Classes
    SpinalTagReady
  58. def filterTag(cond: (SpinalTag) ⇒ Boolean): Iterable[SpinalTag]
    Definition Classes
    SpinalTagReady
  59. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  60. def findTag(cond: (SpinalTag) ⇒ Boolean): Option[SpinalTag]
    Definition Classes
    SpinalTagReady
  61. def fixEncoding(e: SpinalEnumEncoding): Unit
    Definition Classes
    InferableEnumEncodingImpl
  62. def flatten: Seq[BaseType]
    Definition Classes
    BaseTypeData
  63. def flattenForeach(body: (BaseType) ⇒ Unit): Unit
    Definition Classes
    BaseTypeData
  64. def flattenLocalName: Seq[String]
    Definition Classes
    BaseTypeData
  65. def flip(): SpinalEnumCraft.this.type

    flip the direction of the data

    flip the direction of the data

    Definition Classes
    Data
  66. def foreachClockDomain(func: (ClockDomain) ⇒ Unit): Unit
    Definition Classes
    BaseTypeStatement
  67. def foreachDrivingExpression(func: (Expression) ⇒ Unit): Unit
    Definition Classes
    ExpressionContainer
  68. def foreachExpression(func: (Expression) ⇒ Unit): Unit
  69. def foreachReflectableNameables(doThat: (Any) ⇒ Unit): Unit
    Definition Classes
    Nameable
  70. def foreachStatements(func: (AssignmentStatement) ⇒ Unit): Unit
  71. def genIf(cond: Boolean): SpinalEnumCraft.this.type

    Generate this if condition is true

    Generate this if condition is true

    Definition Classes
    Data
  72. def getBitsWidth: Int

    Return the width of the data

    Return the width of the data

    Definition Classes
    SpinalEnumCraftData
  73. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  74. def getComponent(): Component
    Definition Classes
    DataNameableByComponent
  75. def getComponents(): Seq[Component]

    Get current component with all parents

    Get current component with all parents

    Definition Classes
    Data
  76. def getDefinition: SpinalEnum
    Definition Classes
    SpinalEnumCraftEnumEncoded
  77. def getDisplayName(): String
    Definition Classes
    Nameable
  78. def getDrivingReg: SpinalEnumCraft.this.type
    Definition Classes
    BaseType
  79. def getEncoding: SpinalEnumEncoding
    Definition Classes
    InferableEnumEncodingImplEnumEncoded
  80. def getInstanceCounter: Int
    Definition Classes
    ContextUser
  81. def getMode: Byte
    Attributes
    protected
    Definition Classes
    Nameable
  82. def getName(default: String): String
    Definition Classes
    NameableByComponentNameable
  83. def getName(): String
    Definition Classes
    Nameable
  84. def getRealSource: Any
    Definition Classes
    Assignable
  85. def getRealSourceNoRec: Any
    Definition Classes
    DataAssignable
  86. def getRefOwnersChain(): List[Any]
    Definition Classes
    OwnableRef
  87. def getRootParent: Data
    Definition Classes
    Data
  88. def getScalaLocationLong: String
    Definition Classes
    ScalaLocated
  89. def getScalaLocationShort: String
    Definition Classes
    ScalaLocated
  90. def getScalaTrace(): Throwable
    Definition Classes
    ScalaLocated
  91. def getSingleDriver: Option[SpinalEnumCraft.this.type]
    Definition Classes
    BaseType
  92. def getTag[T <: SpinalTag](clazz: Class[T]): Option[T]
    Definition Classes
    SpinalTagReady
  93. def getTags(): Set[SpinalTag]
    Definition Classes
    SpinalTagReady
  94. def getTypeObject: Any
    Definition Classes
    SpinalEnumCraftExpression
  95. def getZero: SpinalEnumCraft.this.type

    Create a data set to 0

    Create a data set to 0

    Definition Classes
    SpinalEnumCraftData
  96. val globalData: GlobalData
    Definition Classes
    GlobalDataUser
  97. def hasAssignement: Boolean
    Definition Classes
    BaseType
  98. def hasInit: Boolean

    Does the base type have initial value

    Does the base type have initial value

    Definition Classes
    BaseType
  99. def hasOnlyOneStatement: Boolean
  100. def hasTag[T <: SpinalTag](clazz: Class[T]): Boolean
    Definition Classes
    SpinalTagReady
  101. def hasTag(spinalTag: SpinalTag): Boolean
    Definition Classes
    SpinalTagReady
  102. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  103. def head: AssignmentStatement
  104. def init(enumElement: SpinalEnumElement[T]): SpinalEnumCraft.this.type
  105. def init(that: SpinalEnumCraft[T]): SpinalEnumCraft[T]

    Set inital value to a data

    Set inital value to a data

    Definition Classes
    DataPrimitives
  106. final def initFrom(that: AnyRef, target: AnyRef = this): Unit
    Definition Classes
    Data
  107. def insertNext(s: Statement): Unit
    Definition Classes
    Statement
  108. def instanceAttributes(language: Language): Iterable[Attribute]
    Definition Classes
    SpinalTagReady
  109. def instanceAttributes: Iterable[Attribute]
    Definition Classes
    SpinalTagReady
  110. def isAnalog: Boolean
    Definition Classes
    BaseTypeData
  111. def isComb: Boolean
    Definition Classes
    BaseTypeData
  112. def isDirectionLess: Boolean
    Definition Classes
    Data
  113. def isEmptyOfTag: Boolean
    Definition Classes
    SpinalTagReady
  114. def isEquals(that: Any): Bool
    Definition Classes
    SpinalEnumCraftData
  115. def isInOut: Boolean
    Definition Classes
    Data
  116. def isInput: Boolean
    Definition Classes
    Data
  117. def isInputOrInOut: Boolean
    Definition Classes
    Data
  118. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  119. def isNamed: Boolean
    Definition Classes
    NameableByComponentNameable
  120. def isNotEquals(that: Any): Bool
    Definition Classes
    SpinalEnumCraftData
  121. def isOutput: Boolean
    Definition Classes
    Data
  122. def isOutputOrInOut: Boolean
    Definition Classes
    Data
  123. def isPriorityApplicable(namePriority: Byte): Boolean
    Definition Classes
    Nameable
  124. def isReg: Boolean
    Definition Classes
    BaseTypeData
  125. def isTypeNode: Boolean

    Is the baseType a node

    Is the baseType a node

    Definition Classes
    BaseType
  126. def isUnnamed: Boolean
    Definition Classes
    Nameable
  127. def isUsingResetSignal: Boolean

    Is the basetype using reset signal

    Is the basetype using reset signal

    Definition Classes
    BaseType
  128. def isUsingSoftResetSignal: Boolean

    Is the basetype using soft reset signal

    Is the basetype using soft reset signal

    Definition Classes
    BaseType
  129. def isVital: Boolean

    Check if the baseType is vital

    Check if the baseType is vital

    Definition Classes
    BaseType
  130. def keep(): SpinalEnumCraft.this.type
    Definition Classes
    Data
  131. val lastScopeStatement: Statement
    Definition Classes
    Statement
  132. def mux[T2 <: Data](mappings: (Any, T2)*): T2
    Definition Classes
    BaseType
  133. def muxList[T2 <: Data](defaultValue: T2, mappings: Seq[(Any, T2)]): T2
    Definition Classes
    BaseType
  134. def muxList[T2 <: Data](mappings: Seq[(Any, T2)]): T2
    Definition Classes
    BaseType
  135. def muxListDc[T2 <: Data](mappings: Seq[(Any, T2)]): T2
    Definition Classes
    BaseType
  136. val name: String
    Attributes
    protected
    Definition Classes
    Nameable
  137. val nameableRef: Nameable
    Attributes
    protected
    Definition Classes
    Nameable
  138. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  139. val nextScopeStatement: Statement
    Definition Classes
    Statement
  140. def noBackendCombMerge: SpinalEnumCraft.this.type
    Definition Classes
    Data
  141. def noCombLoopCheck: SpinalEnumCraft.this.type
    Definition Classes
    Data
  142. def normalizeInputs: Unit
    Definition Classes
    SpinalEnumCraftBaseTypeExpressionContainer
  143. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  144. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  145. def onEachAttributes(doIt: (Attribute) ⇒ Unit): Unit
    Definition Classes
    SpinalTagReady
  146. def opName: String
    Definition Classes
    SpinalEnumCraftExpression
  147. val parent: Data
    Definition Classes
    Data
  148. val parentScope: ScopeStatement
    Definition Classes
    ContextUser
  149. def propagateEncoding: Boolean
    Definition Classes
    InferableEnumEncodingImplEnumEncoded
  150. def pull(): SpinalEnumCraft.this.type

    Pull a signal to the top level (use for debugging)

    Pull a signal to the top level (use for debugging)

    Definition Classes
    Data
  151. def purify(): SpinalEnumCraft.this.type
    Definition Classes
    Data
  152. def randBoot(): SpinalEnumCraft.this.type

    Usefull for register that doesn't need a reset value in RTL, but need a randome value for simulation (avoid x-propagation)

    Usefull for register that doesn't need a reset value in RTL, but need a randome value for simulation (avoid x-propagation)

    Definition Classes
    Data
  153. val refOwner: RefOwnerType
    Definition Classes
    OwnableRef
    Annotations
    @dontName()
  154. def reflectNames(): Unit
    Definition Classes
    Nameable
  155. def remapDrivingExpressions(func: (Expression) ⇒ Expression): Unit
    Definition Classes
    ExpressionContainer
  156. def remapExpressions(func: (Expression) ⇒ Expression): Unit
  157. def removeAssignments(): SpinalEnumCraft.this.type

    Remove all assignements of the base type

    Remove all assignements of the base type

    Definition Classes
    BaseTypeData
  158. def removeStatement(): Unit
    Definition Classes
    BaseTypeStatement
  159. def removeStatementFromScope(): Unit
    Definition Classes
    Statement
  160. def removeTag(spinalTag: SpinalTag): SpinalEnumCraft.this.type
    Definition Classes
    SpinalTagReady
  161. def removeTags(tags: Iterable[SpinalTag]): SpinalEnumCraft.this.type
    Definition Classes
    SpinalTagReady
  162. def resized: SpinalEnumCraft.this.type

    Resized data regarding target

    Resized data regarding target

    Definition Classes
    Data
  163. def rootScopeStatement: ScopeStatement
    Definition Classes
    BaseTypeStatement
  164. def setAsAnalog(): SpinalEnumCraft.this.type
    Definition Classes
    BaseTypeData
  165. def setAsComb(): SpinalEnumCraft.this.type

    Set baseType to Combinatorial

    Set baseType to Combinatorial

    Definition Classes
    BaseTypeData
  166. def setAsDirectionLess(): SpinalEnumCraft.this.type

    remove the direction (in,out,inout) to a data

    remove the direction (in,out,inout) to a data

    Definition Classes
    BaseTypeData
  167. def setAsReg(): SpinalEnumCraft.this.type

    Set baseType to reg

    Set baseType to reg

    Definition Classes
    BaseTypeData
  168. def setAsTypeNode(): SpinalEnumCraft.this.type

    Set baseType to Node

    Set baseType to Node

    Definition Classes
    BaseType
  169. def setAsVital(): SpinalEnumCraft.this.type

    Set the baseType to vital

    Set the baseType to vital

    Definition Classes
    BaseType
  170. def setCompositeName(nameable: Nameable, postfix: String, namePriority: Byte): SpinalEnumCraft.this.type
    Definition Classes
    Nameable
  171. def setCompositeName(nameable: Nameable, postfix: String, weak: Boolean): SpinalEnumCraft.this.type
    Definition Classes
    Nameable
  172. def setCompositeName(nameable: Nameable, postfix: String): SpinalEnumCraft.this.type
    Definition Classes
    Nameable
  173. def setCompositeName(nameable: Nameable, namePriority: Byte): SpinalEnumCraft.this.type
    Definition Classes
    Nameable
  174. def setCompositeName(nameable: Nameable, weak: Boolean): SpinalEnumCraft.this.type
    Definition Classes
    Nameable
  175. def setCompositeName(nameable: Nameable): SpinalEnumCraft.this.type
    Definition Classes
    Nameable
  176. def setName(name: String, namePriority: Byte): SpinalEnumCraft.this.type
    Definition Classes
    Nameable
  177. def setName(name: String, weak: Boolean): SpinalEnumCraft.this.type
    Definition Classes
    Nameable
  178. def setName(name: String): SpinalEnumCraft.this.type
    Definition Classes
    Nameable
  179. def setPartialName(name: String, namePriority: Byte): SpinalEnumCraft.this.type
    Definition Classes
    Nameable
  180. def setPartialName(name: String, weak: Boolean): SpinalEnumCraft.this.type
    Definition Classes
    Nameable
  181. def setPartialName(owner: Nameable, name: String, namePriority: Byte): SpinalEnumCraft.this.type
    Definition Classes
    Nameable
  182. def setPartialName(owner: Nameable, name: String, weak: Boolean): SpinalEnumCraft.this.type
    Definition Classes
    Nameable
  183. def setPartialName(name: String): SpinalEnumCraft.this.type
    Definition Classes
    Nameable
  184. def setPartialName(owner: Nameable, name: String): SpinalEnumCraft.this.type
    Definition Classes
    Nameable
  185. def setRefOwner(that: Any): Unit
    Definition Classes
    OwnableRef
  186. def setScalaLocated(source: ScalaLocated): SpinalEnumCraft.this.type
    Definition Classes
    ScalaLocated
  187. def setWeakName(name: String): SpinalEnumCraft.this.type
    Definition Classes
    Nameable
  188. def simplifyNode: Expression
    Definition Classes
    Expression
  189. val spinalEnum: T
  190. def spinalTags: Set[SpinalTag]
    Definition Classes
    SpinalTagReady
  191. def swapEncoding(encoding: SpinalEnumEncoding): Unit
    Definition Classes
    InferableEnumEncodingImplEnumEncoded
  192. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  193. def toString(): String
    Definition Classes
    BaseTypeExpressionNameable → AnyRef → Any
  194. def toStringMultiLine(): String
    Definition Classes
    BaseNode
  195. def unsetName(): SpinalEnumCraft.this.type
    Definition Classes
    Nameable
  196. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  197. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  198. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  199. def walkDrivingExpressions(func: (Expression) ⇒ Unit): Unit
    Definition Classes
    ExpressionContainer
  200. def walkExpression(func: (Expression) ⇒ Unit): Unit
    Definition Classes
    ExpressionContainer
  201. def walkParentTreeStatements(func: (TreeStatement) ⇒ Unit): Unit
    Definition Classes
    Statement
  202. def walkParentTreeStatementsUntilRootScope(func: (TreeStatement) ⇒ Unit): Unit
    Definition Classes
    Statement
  203. def walkRemapDrivingExpressions(func: (Expression) ⇒ Expression): Unit
    Definition Classes
    ExpressionContainer
  204. def walkRemapExpressions(func: (Expression) ⇒ Expression): Unit
    Definition Classes
    ExpressionContainer
  205. def wrapCast[T <: BaseType](result: T, node: Cast): T
    Definition Classes
    BaseType

Deprecated Value Members

  1. def !==(that: SpinalEnumElement[T]): Bool
    Annotations
    @deprecated
    Deprecated

    (Since version ???) Use =/= instead

  2. def asDirectionLess(): SpinalEnumCraft.this.type
    Definition Classes
    Data
    Annotations
    @deprecated
    Deprecated

    (Since version ???) use setAsDirectionLess instead

Inherited from DataPrimitives[SpinalEnumCraft[T]]

Inherited from InferableEnumEncodingImpl

Inherited from InferableEnumEncoding

Inherited from EnumEncoded

Inherited from BaseType

Inherited from Expression

Inherited from DeclarationStatement

Inherited from LeafStatement

Inherited from Statement

Inherited from BaseNode

Inherited from ExpressionContainer

Inherited from Data

Inherited from SpinalTagReady

Inherited from Assignable

Inherited from NameableByComponent

Inherited from Nameable

Inherited from OwnableRef

Inherited from ContextUser

Inherited from ScalaLocated

Inherited from GlobalDataUser

Inherited from AnyRef

Inherited from Any

Ungrouped