Expand description
Hook traits for the analyzer plugin system.
Hooks allow plugins to intercept and modify the analysis process at various points:
ProgramHook: Program-level events (before/after program analysis)StatementHook: Statement analysis (before/after each statement)ExpressionHook: Expression analysis (before/after each expression)FunctionCallHook: Function call analysisMethodCallHook: Method call analysisStaticMethodCallHook: Static method call analysisNullSafeMethodCallHook: Nullsafe method call analysisClassDeclarationHook: Class declaration analysisInterfaceDeclarationHook: Interface declaration analysisTraitDeclarationHook: Trait declaration analysisEnumDeclarationHook: Enum declaration analysisFunctionDeclarationHook: Function declaration analysisIssueFilterHook: Filter issues at the end of analysis
All hooks receive real AST references and a HookContext
that provides mutable access to the analysis state.
Enums§
- Expression
Hook Result - Result type for expression hooks that can provide a custom type when skipping.
- Hook
Action - Action to take after a hook runs (for statement hooks).
- Issue
Filter Decision - Decision for an issue filter.
Traits§
- Class
Declaration Hook - Hook trait for intercepting class declaration analysis.
- Enum
Declaration Hook - Hook trait for intercepting enum declaration analysis.
- Expression
Hook - Hook trait for intercepting expression analysis.
- Function
Call Hook - Hook trait for intercepting function call analysis.
- Function
Declaration Hook - Hook trait for intercepting function declaration analysis.
- Interface
Declaration Hook - Hook trait for intercepting interface declaration analysis.
- Issue
Filter Hook - Hook for filtering issues at the end of analysis.
- Method
Call Hook - Hook trait for intercepting method call analysis.
- Null
Safe Method Call Hook - Hook trait for intercepting nullsafe method call analysis.
- Program
Hook - Hook trait for intercepting program-level analysis.
- Statement
Hook - Hook trait for intercepting statement analysis.
- Static
Method Call Hook - Hook trait for intercepting static method call analysis.
- Trait
Declaration Hook - Hook trait for intercepting trait declaration analysis.