CpgPassBase
Base trait for all CPG passes. Defines the lifecycle methods that every pass must implement: createAndApply for standalone execution, and runWithBuilder for composing passes that share a single DiffGraphBuilder.
Attributes
- Graph
-
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
Members list
Value members
Abstract methods
Runs the cpg pass, adding changes to the passed builder. Use with caution -- API is unstable. Returns max(nParts, 1), where nParts is either the number of parallel parts, or the number of iterarator elements in case of legacy passes. Includes init() and finish() logic.
Runs the cpg pass, adding changes to the passed builder. Use with caution -- API is unstable. Returns max(nParts, 1), where nParts is either the number of parallel parts, or the number of iterarator elements in case of legacy passes. Includes init() and finish() logic.
Attributes
Concrete methods
Name of the pass. By default it is inferred from the name of the class, override if needed.
Name of the pass. By default it is inferred from the name of the class, override if needed.
Attributes
Wraps runWithBuilder with logging and exception handling. Use with caution — API is unstable.
Wraps runWithBuilder with logging and exception handling. Use with caution — API is unstable.
Value parameters
- builder
-
the DiffGraphBuilder to absorb changes into
Attributes
- Returns
-
the number of parts processed, or
-1if the pass threw an exception
Executes fun while logging the pass start and completion time (including duration via MDC).
Executes fun while logging the pass start and completion time (including duration via MDC).
Type parameters
- A
-
the return type of the wrapped computation
Value parameters
- fun
-
the computation to execute
Attributes
- Returns
-
the result of
fun
Deprecated methods
Attributes
- Deprecated
- Please use createAndApply
Attributes
- Deprecated
- true