DependencyManager
A TransformLike that resolves a linear ordering of dependencies based on requirements.
Type parameters
- A
-
the type over which this transforms
- B
-
the type of the TransformLike
Attributes
- Deprecated
-
[Since version Chisel 7.0.0]All APIs in package firrtl are deprecated. - Source
- DependencyManager.scala
- Graph
-
- Supertypes
-
trait DependencyAPI[B]trait TransformLike[A]trait LazyLoggingclass Objecttrait Matchableclass AnyShow all
- Known subtypes
-
class PhaseManager
Members list
Value members
Abstract methods
A method that will create a copy of this DependencyManager, but with different requirements. This is used to solve sub-problems arising from invalidations.
A method that will create a copy of this DependencyManager, but with different requirements. This is used to solve sub-problems arising from invalidations.
Attributes
- Source
- DependencyManager.scala
A sequence of TransformLikes that have been run. Internally, this will be converted to an ordered set.
A sequence of TransformLikes that have been run. Internally, this will be converted to an ordered set.
Attributes
- Source
- DependencyManager.scala
Existing transform objects that have already been constructed
Existing transform objects that have already been constructed
Attributes
- Source
- DependencyManager.scala
Requested TransformLikes that should be run. Internally, this will be converted to a set based on the ordering defined here.
Requested TransformLikes that should be run. Internally, this will be converted to a set based on the ordering defined here.
Attributes
- Source
- DependencyManager.scala
Concrete methods
A method that can be overridden to define custom print handling. This is useful if you would like to make some transform print additional information.
A method that can be overridden to define custom print handling. This is useful if you would like to make some transform print additional information.
Value parameters
- charSet
-
the character set in use
- size
-
the number of nodes at the current level of the tree
- tab
-
the current tab setting
Attributes
- Source
- DependencyManager.scala
Convert all prerequisites, optionalPrerequisites, optionalPrerequisiteOf, and invalidates to a Graphviz representation.
Convert all prerequisites, optionalPrerequisites, optionalPrerequisiteOf, and invalidates to a Graphviz representation.
Value parameters
- file
-
the name of the output file
Attributes
- Source
- DependencyManager.scala
A function that, given another transform (parameter a) will return true if this transform invalidates/undos the effects of the other transform (parameter a).
A function that, given another transform (parameter a) will return true if this transform invalidates/undos the effects of the other transform (parameter a).
Value parameters
- a
-
transform
Attributes
- Definition Classes
- Source
- DependencyManager.scala
A sequence of transforms to add this transform as an optionalPrerequisite. The use of optionalPrerequisiteOf enables the transform declaring them to always run before some other transforms. However, declaring optionalPrerequisiteOf will not result in the sequence of transforms executing.
A sequence of transforms to add this transform as an optionalPrerequisite. The use of optionalPrerequisiteOf enables the transform declaring them to always run before some other transforms. However, declaring optionalPrerequisiteOf will not result in the sequence of transforms executing.
This is useful for providing an ordering constraint to guarantee that other transforms (e.g., emitters) will not be scheduled before you.
Attributes
- Note
-
This method will not result in the listed transforms running. If you want to add multiple transforms at once, you should use a
DependencyManagerwith multiple targets. - Definition Classes
- Source
- DependencyManager.scala
All transforms that, if a prerequisite of another transform, will run before this transform.
All transforms that, if a prerequisite of another transform, will run before this transform.
Attributes
- Note
-
The use of a Seq here is to preserve input order. Internally, this will be converted to a private, ordered Set.
- Definition Classes
- Source
- DependencyManager.scala
All transform that must run before this transform
All transform that must run before this transform
Attributes
- Note
-
The use of a Seq here is to preserve input order. Internally, this will be converted to a private, ordered Set.
- Definition Classes
- Source
- DependencyManager.scala
Textually show the determined transform order
Textually show the determined transform order
Value parameters
- charSet
-
a collection of characters to use when printing
- tab
-
an indentation string to use for every line of output
Attributes
- Source
- DependencyManager.scala
Helper utility when recursing during pretty printing
Helper utility when recursing during pretty printing
Value parameters
- charSet
-
a collection of characters to use when printing
- preprocess
-
a partial function that will be used before any other printing logic
- tab
-
an indentation string to use for every line of output
Attributes
- Source
- DependencyManager.scala
A mathematical transform on some type
A mathematical transform on some type
Value parameters
- a
-
an input object
Attributes
- Returns
-
an output object of the same type
- Definition Classes
- Source
- DependencyManager.scala
Attributes
- Source
- DependencyManager.scala
A sequence of wrappers to apply to the resulting TransformLike sequence. This can be used to, e.g., add automated pre-processing and post-processing.
A sequence of wrappers to apply to the resulting TransformLike sequence. This can be used to, e.g., add automated pre-processing and post-processing.
Attributes
- Source
- DependencyManager.scala
Inherited methods
Attributes
- Inherited from:
- LazyLogging
- Source
- Logger.scala
Inherited and Abstract methods
An identifier of this TransformLike that can be used for logging and informational printing
An identifier of this TransformLike that can be used for logging and informational printing
Attributes
- Inherited from:
- TransformLike
- Source
- Phase.scala
Concrete fields
This colormap uses Colorbrewer's 4-class OrRd color scheme
This colormap uses Colorbrewer's 4-class OrRd color scheme
Attributes
- Source
- DependencyManager.scala
A directed graph consisting of all prerequisites, including prerequisites derived from optionalPrerequisites and optionalPrerequisiteOf
A directed graph consisting of all prerequisites, including prerequisites derived from optionalPrerequisites and optionalPrerequisiteOf
Attributes
- Source
- DependencyManager.scala
Store of conversions between classes and objects. Objects that do not exist in the map will be lazily constructed.
Store of conversions between classes and objects. Objects that do not exist in the map will be lazily constructed.
Attributes
- Source
- DependencyManager.scala
A version of the transformOrder that flattens the transforms of any internal DependencyManagers.
A version of the transformOrder that flattens the transforms of any internal DependencyManagers.
Attributes
- Source
- DependencyManager.scala
A directed graph consisting of invalidation edges
An ordering of TransformLikes that causes the requested firrtl.options.DependencyManager.targets targets to be executed starting from the currentState. This ordering respects prerequisites, optionalPrerequisites, optionalPrerequisiteOf, and invalidates of all constituent TransformLikes. This uses an algorithm that attempts to reduce the number of re-lowerings due to invalidations. Re-lowerings are implemented as new firrtl.options.DependencyManagers.
An ordering of TransformLikes that causes the requested firrtl.options.DependencyManager.targets targets to be executed starting from the currentState. This ordering respects prerequisites, optionalPrerequisites, optionalPrerequisiteOf, and invalidates of all constituent TransformLikes. This uses an algorithm that attempts to reduce the number of re-lowerings due to invalidations. Re-lowerings are implemented as new firrtl.options.DependencyManagers.
Attributes
- Throws
-
firrtl.options.DependencyManagerException
if a cycle exists in either the firrtl.options.DependencyManager.dependencyGraph dependencyGraph or the invalidateGraph.
- Source
- DependencyManager.scala
Inherited fields
Attributes
- Inherited from:
- LazyLogging
- Source
- Logger.scala