class DependencyGraph extends AnyRef

A (probably overly complex) map of the names to expressions that occur in @circuit This is used by the expression evaluator to follow dependencies It also maintains lists or sets of ports, registers, memories, stop and printf statements. The above information is created by the companion object which does the actual work of traversing the circuit and discovering the various components and expressions

Source
DependencyGraph.scala
Linear Supertypes
AnyRef, Any
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. DependencyGraph
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new DependencyGraph(circuit: Circuit, module: Module, blackBoxFactories: Seq[BlackBoxFactory] = Seq.empty)

    circuit

    the AST being analyzed

    module

    top level module in the AST, used elsewhere to find top level ports

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def addInstanceName(instanceName: String, moduleName: String): Unit
  5. def addKind(key: String): String
  6. def addMemory(defMemory: DefMemory): Memory
  7. def addPrint(printStatement: Print): Unit
  8. def addSourceInfo(name: String, info: Info): Unit
  9. def addStop(stopStatement: Stop): Unit
  10. def apply(key: String): Option[Expression]
  11. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  12. val blackBoxFactories: Seq[BlackBoxFactory]
  13. val circuit: Circuit
  14. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  15. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  16. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  17. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  18. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  19. def getInfo(name: String): String
  20. def getInfo: String
  21. def getType(key: String): Type
  22. def hasInput(name: String): Boolean
  23. def hasOutput(name: String): Boolean
  24. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  25. val inlinedPorts: HashSet[String]
  26. val inputPorts: HashSet[String]
  27. val instanceNames: HashMap[String, String]
  28. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  29. def keys: Iterable[String]
  30. val memories: HashMap[String, Memory]
  31. val memoryKeys: HashMap[String, Memory]
  32. val memoryOutputKeys: HashMap[String, Seq[String]]
  33. val module: Module
  34. val nameToExpression: HashMap[String, Expression]
  35. val nameToType: HashMap[String, Type]
  36. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  37. val nodes: HashSet[String]
  38. final def notify(): Unit
    Definition Classes
    AnyRef
  39. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  40. var numberOfMuxes: Int
  41. var numberOfNodes: Int
  42. var numberOfStatements: Int
  43. val outputPorts: HashSet[String]
  44. val prints: ArrayBuffer[Print]
  45. def recordName(key: String): Unit
  46. def recordType(key: String, tpe: Type): Unit
  47. val registerNames: HashSet[String]
  48. val registers: HashMap[String, DefRegister]
  49. val sourceInfo: HashMap[String, String]
  50. val stops: ArrayBuffer[Stop]
  51. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  52. def toString(): String
    Definition Classes
    AnyRef → Any
  53. def update(key: String, e: Expression): Unit
  54. val validNames: HashSet[String]
  55. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  56. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  57. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  58. val wires: HashSet[String]

Inherited from AnyRef

Inherited from Any

Ungrouped