Optionalconfig: KernelConfigAnalyze incrementally.
Only analyzes changed files and their dependents for faster re-analysis.
Optionaloptions: IncrementalAnalysisOptionsIncremental analysis options
Promise resolving to incremental analysis result
Analyze with parallel execution.
Executes analysis rules in parallel across source files for improved performance.
Optionaloptions: ParallelAnalysisOptionsParallel analysis options
Promise resolving to analysis results
Get the build validator instance. Creates one lazily if it doesn't exist.
BuildValidator instance
Get the cache manager if enabled. Returns undefined if caching is not configured.
Get Kernel configuration (read-only).
Get the file system adapter. Plugins can use this for file operations.
Get the incremental analyzer.
Get orchestration statistics.
Get the parallel executor if enabled. Returns undefined if parallel execution is not configured.
Get the parser orchestrator instance.
The parser orchestrator automatically selects the best parser strategy based on project characteristics (external decorators, path aliases, etc.) and provides fallback mechanisms for resilient parsing.
ParserOrchestrator instance
Get a plugin by name. Returns undefined if the plugin is not registered.
The unique name of the plugin
Get the progress reporter.
Get the cached project context.
Project context is detected during initialization using ProjectCompatibilityValidator. It contains information about custom decorators, path aliases, complex constructors, and Angular version. This context is used by ParserOrchestrator for parser selection.
ProjectContext detected during initialization
Get the project root directory.
Returns path.dirname(tsConfigPath) when tsConfigPath is set, or process.cwd() otherwise. Safe to call before initialize() - reads only from this.config which is set in the constructor.
Get the resource manager.
Check if the Kernel is initialized.
Transform a single source file using all applicable transformation rules.
This method delegates to the TransformationCoordinator to execute transformation rules from all loaded plugins on the specified file.
The source file to transform
Transformation configuration
Promise resolving to transformation result
The Kernel - Core infrastructure manager.
The Kernel is domain-agnostic: it knows nothing about Angular, components or transformations. All domain logic lives in plugins.
Responsibilities:
Example usage: