Extract EP list pages content to generated pages

This commit is contained in:
Karol Lewandowski 2025-05-21 17:14:31 +02:00
parent 534bb20fa2
commit fa652386c1
26 changed files with 5968 additions and 5821 deletions

View File

@ -0,0 +1,433 @@
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- GENERATED FILE, DO NOT EDIT -->
<!-- This file is generated with the SDK Docs Authoring Tools plugin ('Generate SDK Docs EP Lists' action) -->
<!-- Revision: b815cfdcaa594a8842ccf89e6ac2bf7615401920 -->
<!--
EP List Directories:
- /community/android
-->
<snippet id="content">
110 Extension Points and 34 Listeners
<include from="snippets.topic" element-id="ep_list_legend"/>
## Android Plugin
### Android Plugin Listeners
| Topic | Listener |
|-------|----------|
| [`BuildAnalyzerStorageManager.Companion#DATA_IS_READY_TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.build.attribution.BuildAnalyzerStorageManager.Listener) | [`Listener`](%gh-ij-android%/build-attribution/src/com/android/build/attribution/BuildAnalyzerStorageManager.kt) |
| [`StatefulButtonNotifier#BUTTON_STATE_TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.assistant.StatefulButtonNotifier) ![Project-Level][project-level] | [`StatefulButtonNotifier`](%gh-ij-android%/assistant/src/com/android/tools/idea/assistant/StatefulButtonNotifier.java) |
| [`TutorialCardRefreshNotifier#TUTORIAL_CARD_TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.assistant.TutorialCardRefreshNotifier) | [`TutorialCardRefreshNotifier`](%gh-ij-android%/assistant/src/com/android/tools/idea/assistant/TutorialCardRefreshNotifier.java) |
| [`AvdLaunchListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.avdmanager.AvdLaunchListener) | [`AvdLaunchListener`](%gh-ij-android%/android/src/com/android/tools/idea/avdmanager/AvdLaunchListener.java) |
| [`EmulatorLogListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.avdmanager.EmulatorLogListener) | [`EmulatorLogListener`](%gh-ij-android%/android/src/com/android/tools/idea/avdmanager/EmulatorLogListener.kt) |
| [`IssueProviderListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.common.error.IssueProviderListener) ![Project-Level][project-level] | [`IssueProviderListener`](%gh-ij-android%/designer/src/com/android/tools/idea/common/error/IssueProvider.kt) |
| [`IssueProviderListener#UI_CHECK`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.common.error.IssueProviderListener) ![Project-Level][project-level] | [`IssueProviderListener`](%gh-ij-android%/designer/src/com/android/tools/idea/common/error/IssueProvider.kt) |
| [`ComposeAnimationListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.compose.preview.ComposePreviewRepresentation.ComposeAnimationListener) | [`ComposeAnimationListener`](%gh-ij-android%/compose-designer/src/com/android/tools/idea/compose/preview/Preview.kt) |
| [`FastPreviewManager#FAST_PREVIEW_MANAGER_TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.editors.fast.FastPreviewManager.Companion.FastPreviewManagerListener) | [`FastPreviewManagerListener`](%gh-ij-android%/android/src/com/android/tools/idea/editors/fast/FastPreviewManager.kt) |
| [`GradleBuildState#GRADLE_BUILD_TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.gradle.project.build.GradleBuildListener) | [`GradleBuildListener`](%gh-ij-android%/project-system-gradle/src/com/android/tools/idea/gradle/project/build/GradleBuildListener.java) |
| [`GradleSyncStateImplKt#GRADLE_SYNC_TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.gradle.project.sync.GradleSyncListenerWithRoot) | [`GradleSyncListenerWithRoot`](%gh-ij-android%/project-system-gradle/src/com/android/tools/idea/gradle/project/sync/GradleSyncListenerWithRoot.kt) |
| [`FilterStatusChanged.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.logcat.filters.FilterTextField.FilterStatusChanged) | [`FilterStatusChanged`](%gh-ij-android%/logcat/src/com/android/tools/idea/logcat/filters/FilterTextField.kt) |
| [`MergedManifestSnapshotComputeListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.model.MergedManifestSnapshotComputeListener) | [`MergedManifestSnapshotComputeListener`](%gh-ij-android%/android/src/com/android/tools/idea/model/MergedManifestManager.kt) |
| [`SafeArgsModeModuleService#MODE_CHANGED`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.nav.safeargs.module.SafeArgsModeModuleService.SafeArgsModeChangedListener) | [`SafeArgsModeChangedListener`](%gh-ij-android%/nav/safeargs/common/src/com/android/tools/idea/nav/safeargs/module/SafeArgsModeModuleService.kt) |
| [`NavigationResourcesModificationListenerKt#NAVIGATION_RESOURCES_CHANGED`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.nav.safeargs.project.NavigationResourcesChangeListener) | [`NavigationResourcesChangeListener`](%gh-ij-android%/nav/safeargs/common/src/com/android/tools/idea/nav/safeargs/project/NavigationResourcesModificationListener.kt) |
| [`MultiTemplateRenderer#TEMPLATE_RENDERER_TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.npw.model.MultiTemplateRenderer.TemplateRendererListener) | [`TemplateRendererListener`](%gh-ij-android%/android-npw/src/com/android/tools/idea/npw/model/MultiTemplateRenderer.kt) |
| [`ProjectApplicationIdsProvider.Companion#PROJECT_APPLICATION_IDS_CHANGED_TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.projectsystem.ProjectApplicationIdsProvider.ProjectApplicationIdsListener) | [`ProjectApplicationIdsListener`](%gh-ij-android%/project-system/src/com/android/tools/idea/projectsystem/ProjectApplicationIdsProvider.kt) |
| [`ProjectSystemBuildUtil#PROJECT_SYSTEM_BUILD_TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.projectsystem.ProjectSystemBuildManager.BuildListener) | [`BuildListener`](%gh-ij-android%/project-system/src/com/android/tools/idea/projectsystem/ProjectSystemBuildManager.kt) |
| [`ProjectSystemSyncUtil#PROJECT_SYSTEM_SYNC_TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.projectsystem.ProjectSystemSyncManager.SyncResultListener) | [`SyncResultListener`](%gh-ij-android%/project-system/src/com/android/tools/idea/projectsystem/ProjectSystemSyncManager.kt) |
| [`ClearLogcatListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.run.ClearLogcatListener) | [`ClearLogcatListener`](%gh-ij-android%/android/src/com/android/tools/idea/run/ClearLogcatListener.kt) |
| [`DeviceHeadsUpListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.run.DeviceHeadsUpListener) | [`DeviceHeadsUpListener`](%gh-ij-android%/android/src/com/android/tools/idea/run/DeviceHeadsUpListener.java) |
| [`ShowLogcatListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.run.ShowLogcatListener) | [`ShowLogcatListener`](%gh-ij-android%/android/src/com/android/tools/idea/run/ShowLogcatListener.kt) |
| [`ApplicationDeployListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.run.configuration.execution.ApplicationDeployListener) | [`ApplicationDeployListener`](%gh-ij-android%/android/src/com/android/tools/idea/run/configuration/execution/ApplicationDeployerImpl.kt) |
| [`SdkInstallListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.sdk.SdkInstallListener) | [`SdkInstallListener`](%gh-ij-android%/android/src/com/android/tools/idea/sdk/SdkInstallListener.kt) |
| [`DeviceMirroringSettingsListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.streaming.DeviceMirroringSettingsListener) | [`DeviceMirroringSettingsListener`](%gh-ij-android%/android/src/com/android/tools/idea/streaming/DeviceMirroringSettingsListener.java) |
| [`EmulatorSettingsListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.streaming.EmulatorSettingsListener) | [`EmulatorSettingsListener`](%gh-ij-android%/android/src/com/android/tools/idea/streaming/EmulatorSettingsListener.java) |
| [`Listener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.streaming.emulator.actions.FloatingXrToolbarState.Listener) | [`Listener`](%gh-ij-android%/streaming/src/com/android/tools/idea/streaming/emulator/actions/ToggleFloatingXrToolbarAction.kt) |
| [`TransportDeviceManager#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.transport.TransportDeviceManager.TransportDeviceManagerListener) | [`TransportDeviceManagerListener`](%gh-ij-android%/android-transport/src/com/android/tools/idea/transport/TransportDeviceManager.java) |
| [`Listener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.uibuilder.options.NlOptionsConfigurable.Listener) | [`Listener`](%gh-ij-android%/designer/src/com/android/tools/idea/uibuilder/options/NlOptionsConfigurable.kt) |
| [`OpenHomeTabListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.profilers.taskbased.home.OpenHomeTabListener) | [`OpenHomeTabListener`](%gh-ij-android%/profilers/src/com/android/tools/profilers/taskbased/home/OpenHomeTabListener.kt) |
| [`OpenPastRecordingsTabListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.profilers.taskbased.pastrecordings.OpenPastRecordingsTabListener) | [`OpenPastRecordingsTabListener`](%gh-ij-android%/profilers/src/com/android/tools/profilers/taskbased/pastrecordings/OpenPastRecordingsTabListener.kt) |
| [`CreateProfilerTaskTabListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.profilers.taskbased.task.CreateProfilerTaskTabListener) | [`CreateProfilerTaskTabListener`](%gh-ij-android%/profilers/src/com/android/tools/profilers/taskbased/task/CreateProfilerTaskTabListener.kt) |
| [`OpenProfilerTaskTabListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.profilers.taskbased.task.OpenProfilerTaskTabListener) | [`OpenProfilerTaskTabListener`](%gh-ij-android%/profilers/src/com/android/tools/profilers/taskbased/task/OpenProfilerTaskTabListener.kt) |
| [`ResourceFolderManager#TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.android.facet.ResourceFolderManager.ResourceFolderListener) ![Project-Level][project-level] | [`ResourceFolderListener`](%gh-ij-android%/android/src/org/jetbrains/android/facet/ResourceFolderManager.kt) |
### adt-ui.xml
[`adt-ui.xml`](%gh-ij-android%/adt-ui/resources/META-INF/adt-ui.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.android.toolWindow"/></include> ![Non-Dynamic][non-dynamic] ![DumbAware][dumb-aware] | [`ToolWindowFactory`](%gh-ic%/platform/platform-api/src/com/intellij/openapi/wm/ToolWindowFactory.kt) |
### aiplugin-api.xml
[`aiplugin-api.xml`](%gh-ij-android%/ml-api/src/resources/META-INF/aiplugin-api.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.gemini.geminiPluginApi"/></include> ![Non-Dynamic][non-dynamic] | [`GeminiPluginApi`](%gh-ij-android%/ml-api/src/main/kotlin/com/android/tools/idea/gemini/GeminiPluginApi.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.ml.studioBotExternalFlags"/></include> ![Non-Dynamic][non-dynamic] | [`StudioBotExternalFlags`](%gh-ij-android%/ml-api/src/main/kotlin/com/android/tools/idea/gemini/StudioBotExternalFlags.kt) |
### android-adb.xml
[`android-adb.xml`](%gh-ij-android%/android-adb/resources/META-INF/android-adb.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.run.deviceNameRenderer"/></include> ![Non-Dynamic][non-dynamic] | [`DeviceNameRendererEx`](%gh-ij-android%/android-adb/src/com/android/tools/idea/ddms/DeviceNameRendererEx.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.deviceProvisioner"/></include> ![Non-Dynamic][non-dynamic] | [`DeviceProvisionerFactory`](%gh-ij-android%/android-adb/src/com/android/tools/idea/deviceprovisioner/DeviceProvisionerFactory.kt) |
### android-editing-metrics.xml
[`android-editing-metrics.xml`](%gh-ij-android%/android/editing/metrics/resources/META-INF/android-editing-metrics.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.editing.metrics.codeEditedListener"/></include> | [`CodeEditedListener`](%gh-ij-android%/android/editing/metrics/src/com/android/tools/idea/editing/metrics/CodeEditedListener.kt) |
### android-execution-common.xml
[`android-execution-common.xml`](%gh-ij-android%/execution/common/resources/META-INF/android-execution-common.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.execution.common.androidConfigurationExecutorProvider"/></include> ![Non-Dynamic][non-dynamic] | [`Provider`](%gh-ij-android%/execution/common/src/com/android/tools/idea/execution/common/AndroidConfigurationExecutor.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.execution.common.debug.utils.facetFinderToken"/></include> ![Non-Dynamic][non-dynamic] | [`FacetFinderToken`](%gh-ij-android%/execution/common/src/com/android/tools/idea/execution/common/debug/utils/FacetFinder.kt) |
### android-kotlin-extensions-common.xml
[`android-kotlin-extensions-common.xml`](%gh-ij-android%/android-kotlin/android-extensions-idea-common/resources/META-INF/android-kotlin-extensions-common.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.kotlin.android.model.androidModuleInfoProvider"/></include> ![Deprecated][deprecated] ![Non-Dynamic][non-dynamic] | [`AndroidModuleInfoProvider`](%gh-ij-android%/android-kotlin/android-extensions-idea-common/src/org/jetbrains/kotlin/android/synthetic/idea/AndroidModuleInfoProvider.kt) |
### android-kotlin.common.xml
[`android-kotlin.common.xml`](%gh-ij-android%/android-kotlin/idea-android/common/resources/META-INF/android-kotlin.common.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.kotlin.androidDexer"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | [`AndroidDexer`](%gh-ic%/plugins/kotlin/jvm-debugger/evaluation/src/org/jetbrains/kotlin/idea/debugger/evaluate/classLoading/AndroidDexer.kt) |
### android-lang.xml
[`android-lang.xml`](%gh-ij-android%/android-lang/resources/META-INF/android-lang.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.lang.androidSql.contextProvider"/></include> ![Non-Dynamic][non-dynamic] | [`Provider`](%gh-ij-android%/android-lang/src/com/android/tools/idea/lang/androidSql/AndroidSqlContext.kt) |
### android-navigator.xml
[`android-navigator.xml`](%gh-ij-android%/android-navigator/resources/META-INF/android-navigator.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.navigator.androidViewNodeProvider"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidViewNodeProvider`](%gh-ij-android%/android-navigator/src/com/android/tools/idea/navigator/nodes/AndroidViewNodeProvider.kt) |
### android-npw.xml
[`android-npw.xml`](%gh-ij-android%/android-npw/resources/META-INF/android-npw.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.moduleDescriptionProvider"/></include> ![Non-Dynamic][non-dynamic] | [`ModuleDescriptionProvider`](%gh-ij-android%/android-npw/src/com/android/tools/idea/npw/module/ModuleDescriptionProvider.kt) |
### android-plugin.xml
[`android-plugin.xml`](%gh-ij-android%/android/resources/META-INF/android-plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.customProjectTypeImporter"/></include> ![Non-Dynamic][non-dynamic] | [`CustomProjectTypeImporter`](%gh-ij-android%/android/src/com/android/tools/idea/project/CustomProjectTypeImporter.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.ide.androidConfigurableContributor"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidConfigurableContributor`](%gh-ij-android%/android/src/com/android/tools/idea/structure/dialog/AndroidConfigurableContributor.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.ide.sdkEventListener"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidSdkEventListener`](%gh-ij-android%/android/src/com/android/tools/idea/sdk/IdeSdks.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.rendering.renderErrorContributor"/></include> ![Non-Dynamic][non-dynamic] | [`Provider`](%gh-ij-android%/android/src/com/android/tools/idea/rendering/RenderErrorContributor.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.rendering.renderSecurityManagerOverrides"/></include> | [`RenderSecurityManagerOverrides`](%gh-ij-android%/rendering/src/com/android/tools/rendering/security/RenderSecurityManagerOverrides.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.run.androidDebugger"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidDebugger`](%gh-ij-android%/execution/common/src/com/android/tools/idea/execution/common/debug/AndroidDebugger.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.run.androidLaunchTaskContributor"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidLaunchTaskContributor`](%gh-ij-android%/android/src/com/android/tools/idea/run/AndroidLaunchTaskContributor.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.run.deployTargetProvider"/></include> ![Non-Dynamic][non-dynamic] | [`DeployTargetProvider`](%gh-ij-android%/android/src/com/android/tools/idea/run/editor/DeployTargetProvider.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.actions.annotations.inferAnnotationsToken"/></include> ![Non-Dynamic][non-dynamic] | [`InferAnnotationsToken`](%gh-ij-android%/android/src/com/android/tools/idea/actions/annotations/InferAnnotationsToken.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.actions.exportProjectZipExcludesContributor"/></include> ![Non-Dynamic][non-dynamic] | [`ExportProjectZipExcludesContributor`](%gh-ij-android%/android/src/com/android/tools/idea/actions/ExportProjectZipExcludesContributor.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.analytics.ideBrandProvider"/></include> ![Non-Dynamic][non-dynamic] | [`IdeBrandProvider`](%gh-ij-android%/android/src/com/android/tools/idea/analytics/IdeBrandProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.databinding.layoutBindingSupport"/></include> ![Non-Dynamic][non-dynamic] | [`LayoutBindingSupport`](%gh-ij-android%/android/src/com/android/tools/idea/databinding/LayoutBindingSupport.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.diagnostics.report.logsProvider"/></include> ![Non-Dynamic][non-dynamic] | [`DiagnosticsSummaryFileProvider`](%gh-ij-android%/android/src/com/android/tools/idea/diagnostics/report/DiagnosticsSummaryFileProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.editors.manifest.manifestPanelToken"/></include> ![Non-Dynamic][non-dynamic] | [`ManifestPanelToken`](%gh-ij-android%/android/src/com/android/tools/idea/editors/manifest/ManifestPanelToken.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.flags.experimentalSettingsContributor"/></include> ![Non-Dynamic][non-dynamic] | [`ExperimentalSettingsContributor`](%gh-ij-android%/android/src/com/android/tools/idea/flags/ExperimentalSettingsContributor.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.lang.databinding.dataBindingCompletionSupport"/></include> ![Non-Dynamic][non-dynamic] | [`DataBindingCompletionSupport`](%gh-ij-android%/android/src/com/android/tools/idea/lang/databinding/DataBindingCompletionSupport.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.lang.databinding.dataBindingExpressionSupport"/></include> ![Non-Dynamic][non-dynamic] | [`DataBindingExpressionSupport`](%gh-ij-android%/android/src/com/android/tools/idea/lang/databinding/DataBindingExpressionSupport.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.layoutlib.layoutLibraryProvider"/></include> ![Non-Dynamic][non-dynamic] | [`LayoutLibraryProvider`](%gh-ij-android%/layoutlib-loader/src/com/android/tools/idea/layoutlib/LayoutLibraryLoader.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.liveedit.tokens.buildSystemLiveEditServices"/></include> ![Non-Dynamic][non-dynamic] | [`BuildSystemLiveEditServices`](%gh-ij-android%/android/src/com/android/tools/idea/run/deployment/liveedit/tokens/BuildSystemLiveEditServices.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.manifest.manifestClassToken"/></include> ![Non-Dynamic][non-dynamic] | [`ManifestClassToken`](%gh-ij-android%/android/src/com/android/tools/idea/manifest/ManifestClassToken.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.ndk.nativeWorkspaceProvider"/></include> ![Non-Dynamic][non-dynamic] | [`NativeWorkspaceProvider`](%gh-ij-android%/android/src/com/android/tools/idea/ndk/NativeWorkspaceProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.rendering.renderIssueCollectionConsumer"/></include> ![Non-Dynamic][non-dynamic] | [`Provider`](%gh-ij-android%/android/src/com/android/tools/idea/rendering/RenderIssueCollectionConsumer.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.rendering.tokens.buildSystemFilePreviewServices"/></include> ![Non-Dynamic][non-dynamic] | [`BuildSystemFilePreviewServices`](%gh-ij-android%/android/src/com/android/tools/idea/rendering/tokens/BuildSystemFilePreviewServices.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.res.resourceClassToken"/></include> ![Non-Dynamic][non-dynamic] | [`ResourceClassToken`](%gh-ij-android%/android/src/com/android/tools/idea/res/ResourceClassToken.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.run.configuration.editors.androidWearConfigurationEditorToken"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidWearConfigurationEditorToken`](%gh-ij-android%/android/src/com/android/tools/idea/run/configuration/editors/AndroidWearConfigurationEditor.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.run.editor.androidDebuggerInfoProvider"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidDebuggerInfoProvider`](%gh-ij-android%/android/src/com/android/tools/idea/run/editor/AndroidDebuggerInfoProvider.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.run.editor.testRunParametersToken"/></include> ![Non-Dynamic][non-dynamic] | [`TestRunParametersToken`](%gh-ij-android%/android/src/com/android/tools/idea/run/editor/TestRunParameters.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.testartifacts.instrumented.androidTestConfigurationProducerToken"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidTestConfigurationProducerToken`](%gh-ij-android%/android/src/com/android/tools/idea/testartifacts/instrumented/AndroidTestConfigurationProducer.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.testartifacts.instrumented.testRunConfigurationOptions"/></include> | [`TestRunConfigurationOptions`](%gh-ij-android%/android/src/com/android/tools/idea/testartifacts/instrumented/AndroidTestConfigurationProducer.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.testartifacts.screenshottest.screenshotTestResultListenerToken"/></include> ![Non-Dynamic][non-dynamic] | [`ScreenshotTestResultListenerToken`](%gh-ij-android%/android/src/com/android/tools/idea/testartifacts/screenshottest/ScreenshotTestResultListenerToken.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.ui.designer.overlays.overlayProvider"/></include> ![Non-Dynamic][non-dynamic] | [`OverlayProvider`](%gh-ij-android%/android/src/com/android/tools/idea/ui/designer/overlays/OverlayProvider.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.ui.guiTestingStatusProvider"/></include> ![Non-Dynamic][non-dynamic] | [`GuiTestingStatusProvider`](%gh-ij-android%/android/src/com/android/tools/idea/ui/GuiTestingStatusProvider.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.ui.resourcemanager.importer.createDefaultResDirectoryToken"/></include> ![Non-Dynamic][non-dynamic] | [`CreateDefaultResDirectoryToken`](%gh-ij-android%/android/src/com/android/tools/idea/ui/resourcemanager/importer/DesignAssetImporter.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.wizard.template.wizardTemplateProvider"/></include> ![Non-Dynamic][non-dynamic] | `WizardTemplateProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.android.actions.newResourceCreationHandler"/></include> ![Non-Dynamic][non-dynamic] | [`NewResourceCreationHandler`](%gh-ij-android%/android/src/org/jetbrains/android/actions/NewResourceCreationHandler.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.android.refactoring.unusedResourcesToken"/></include> ![Non-Dynamic][non-dynamic] | [`UnusedResourcesToken`](%gh-ij-android%/android/src/org/jetbrains/android/refactoring/UnusedResourcesProcessor.kt) |
### android-templates.xml
[`android-templates.xml`](%gh-ij-android%/android-templates/resources/META-INF/android-templates.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.templates.additionalTemplateActionsProvider"/></include> ![Non-Dynamic][non-dynamic] | [`AdditionalTemplateActionsProvider`](%gh-ij-android%/android-templates/src/com/android/tools/idea/templates/AdditionalTemplateActionsProvider.java) |
### apkanalyzer.xml
[`apkanalyzer.xml`](%gh-ij-android%/apkanalyzer/src/META-INF/apkanalyzer.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.apk.viewer.apkAnalyzerToken"/></include> ![Non-Dynamic][non-dynamic] | [`ApkAnalyzerToken`](%gh-ij-android%/apkanalyzer/src/com/android/tools/idea/apk/viewer/ApkAnalyzerToken.kt) |
### app-inspection.xml
[`app-inspection.xml`](%gh-ij-android%/app-inspection/ide/resources/META-INF/app-inspection.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.appinspection.ide.resolver.artifactResolverFactoryToken"/></include> ![Non-Dynamic][non-dynamic] | [`ArtifactResolverFactoryToken`](%gh-ij-android%/app-inspection/ide/src/com/android/tools/idea/appinspection/ide/resolver/ArtifactResolverFactory.kt) |
### app-inspector.xml
[`app-inspector.xml`](%gh-ij-android%/app-inspection/inspector/ide/resources/META-INF/app-inspector.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.appinspection.inspector.ide.appInspectorTabProvider"/></include> ![Non-Dynamic][non-dynamic] | [`AppInspectorTabProvider`](%gh-ij-android%/app-inspection/inspector/ide/src/com/android/tools/idea/appinspection/inspector/ide/AppInspectorTabProvider.kt) |
### assistant.xml
[`assistant.xml`](%gh-ij-android%/assistant/resources/META-INF/assistant.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.assistant.actionHandler"/></include> ![Non-Dynamic][non-dynamic] | [`AssistActionHandler`](%gh-ij-android%/assistant/src/com/android/tools/idea/assistant/AssistActionHandler.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.assistant.actionStateManager"/></include> ![Non-Dynamic][non-dynamic] | [`AssistActionStateManager`](%gh-ij-android%/assistant/src/com/android/tools/idea/assistant/AssistActionStateManager.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.assistant.assistantBundleCreator"/></include> ![Non-Dynamic][non-dynamic] | [`AssistantBundleCreator`](%gh-ij-android%/assistant/src/com/android/tools/idea/assistant/AssistantBundleCreator.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.assistant.navlistener"/></include> ![Non-Dynamic][non-dynamic] | [`AssistNavListener`](%gh-ij-android%/assistant/src/com/android/tools/idea/assistant/AssistNavListener.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.assistant.panelFactory"/></include> ![Non-Dynamic][non-dynamic] | [`PanelFactory`](%gh-ij-android%/assistant/src/com/android/tools/idea/assistant/PanelFactory.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.assistant.scrollHandler"/></include> ![Non-Dynamic][non-dynamic] | [`ScrollHandler`](%gh-ij-android%/assistant/src/com/android/tools/idea/assistant/ScrollHandler.java) |
### com.android.tools.gradle.dcl
[`com.android.tools.gradle.dcl`](%gh-ij-android%/gradle-declarative-lang-ide/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.gradle.dcl.ide.declarativeSchemaProvider"/></include> ![Non-Dynamic][non-dynamic] | [`DeclarativeSchemaProvider`](%gh-ij-android%/gradle-declarative-lang-ide/src/com/android/tools/idea/gradle/dcl/lang/ide/DeclarativeSchemaProvider.kt) |
### compose-designer.xml
[`compose-designer.xml`](%gh-ij-android%/compose-designer/resources/META-INF/compose-designer.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.compose.preview.composeEditorNotificationProvider"/></include> ![Non-Dynamic][non-dynamic] ![DumbAware][dumb-aware] | [`EditorNotificationProvider`](%gh-ic%/platform/platform-api/src/com/intellij/ui/EditorNotificationProvider.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.compose.preview.composeStudioBotActionFactory"/></include> ![Non-Dynamic][non-dynamic] | [`ComposeStudioBotActionFactory`](%gh-ij-android%/compose-designer/src/com/android/tools/idea/compose/preview/ComposeStudioBotActionFactory.kt) |
### customview.xml
[`customview.xml`](%gh-ij-android%/designer/customview/resources/META-INF/customview.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.customview.preview.customViewEditorNotificationProvider"/></include> ![Non-Dynamic][non-dynamic] ![DumbAware][dumb-aware] | [`EditorNotificationProvider`](%gh-ic%/platform/platform-api/src/com/intellij/ui/EditorNotificationProvider.java) |
### databinding.xml
[`databinding.xml`](%gh-ij-android%/databinding/resources/META-INF/databinding.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.databinding.bindingLayoutToken"/></include> ![Non-Dynamic][non-dynamic] | [`BindingLayoutToken`](%gh-ij-android%/databinding/src/com/android/tools/idea/databinding/BindingLayoutToken.kt) |
### designer.xml
[`designer.xml`](%gh-ij-android%/designer/resources/META-INF/designer.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.uibuilder.editor.multirepresentation.sourcecode.sourceCodePreviewRepresentationProvider"/></include> ![Non-Dynamic][non-dynamic] | [`PreviewRepresentationProvider`](%gh-ij-android%/designer/src/com/android/tools/idea/uibuilder/editor/multirepresentation/PreviewRepresentationProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.uibuilder.editorNotificationProvider"/></include> ![Non-Dynamic][non-dynamic] ![DumbAware][dumb-aware] | [`EditorNotificationProvider`](%gh-ic%/platform/platform-api/src/com/intellij/ui/EditorNotificationProvider.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.uibuilder.handlers.constraint.constraintLayoutExtension"/></include> | [`ConstraintLayoutExtension`](%gh-ij-android%/designer/src/com/android/tools/idea/uibuilder/handlers/constraint/ConstraintComponentUtilities.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.uibuilder.handlers.viewHandlerProvider"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | [`ViewHandlerProvider`](%gh-ij-android%/designer/src/com/android/tools/idea/uibuilder/handlers/ViewHandlerProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.uibuilder.property.motionEditorNlPropertiesModelProvider"/></include> | [`NlPropertiesModelProvider`](%gh-ij-android%/designer/src/com/android/tools/idea/uibuilder/property/NlPropertiesModel.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.uibuilder.property.motionEditorNlPropertiesViewProvider"/></include> | [`NlPropertiesViewProvider`](%gh-ij-android%/designer/src/com/android/tools/idea/uibuilder/property/NlPropertiesView.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.uibuilder.scene.decorator.nlDecoratorProvider"/></include> | [`Provider`](%gh-ij-android%/designer/src/com/android/tools/idea/uibuilder/scene/decorator/NlSceneDecoratorFactory.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.uibuilder.troubleshooting.infoCollector"/></include> ![Non-Dynamic][non-dynamic] | [`TroubleInfoCollector`](%gh-ic%/platform/platform-impl/src/com/intellij/troubleshooting/TroubleInfoCollector.java) |
### device-manager-v2.xml
[`device-manager-v2.xml`](%gh-ij-android%/device-manager-v2/resources/META-INF/device-manager-v2.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.devicemanagerv2.deviceManagerOverflowActionContributor"/></include> ![Non-Dynamic][non-dynamic] | [`DeviceManagerOverflowActionContributor`](%gh-ij-android%/device-manager-v2/src/com/android/tools/idea/devicemanagerv2/OverflowButton.kt) |
### gradle-dsl.xml
[`gradle-dsl.xml`](%gh-ij-android%/gradle-dsl/resources/META-INF/gradle-dsl.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.gradleModelProvider"/></include> ![Non-Dynamic][non-dynamic] | [`GradleModelProvider`](%gh-ij-android%/gradle-dsl/src/com/android/tools/idea/gradle/dsl/api/GradleModelProvider.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.gradle.dsl.blockModelProvider"/></include> ![Experimental][experimental] | [`BlockModelProvider`](%gh-ij-android%/gradle-dsl/src/com/android/tools/idea/gradle/dsl/model/BlockModelProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.gradle.dsl.transformerFactory"/></include> | [`GradleDslTransformerFactory`](%gh-ij-android%/gradle-dsl/src/com/android/tools/idea/gradle/dsl/parser/GradleDslTransformerFactory.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.versionCatalogFilesGradleModel"/></include> ![Non-Dynamic][non-dynamic] | [`VersionCatalogFilesModel`](%gh-ij-android%/gradle-dsl/src/com/android/tools/idea/gradle/dsl/model/VersionCatalogFilesModel.kt) |
### layout-inspector.xml
[`layout-inspector.xml`](%gh-ij-android%/layout-inspector/resources/META-INF/layout-inspector.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.layoutinspector.pipeline.appinspection.compose.getComposeLayoutInspectorJarToken"/></include> ![Non-Dynamic][non-dynamic] | [`GetComposeLayoutInspectorJarToken`](%gh-ij-android%/layout-inspector/src/com/android/tools/idea/layoutinspector/pipeline/appinspection/compose/ComposeLayoutInspectorClient.kt) |
### lint-plugin.xml
[`lint-plugin.xml`](%gh-ij-android%/lint/src/META-INF/lint-plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.lint.common.lintIdeSupport"/></include> ![Non-Dynamic][non-dynamic] | [`LintIdeSupport`](%gh-ij-android%/lint/src/com/android/tools/idea/lint/common/LintIdeSupport.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.lint.common.lintQuickFixProvider"/></include> ![Non-Dynamic][non-dynamic] | [`LintIdeQuickFixProvider`](%gh-ij-android%/lint/src/com/android/tools/idea/lint/common/LintIdeQuickFixProvider.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.lint.common.updateDepsProvider"/></include> ![Non-Dynamic][non-dynamic] | [`DependencyUpdateProvider`](%gh-ij-android%/lint/src/com/android/tools/idea/lint/common/AndroidLintGradleDependencyInspection.kt) |
### logcat.xml
[`logcat.xml`](%gh-ij-android%/logcat/resources/META-INF/logcat.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.logcat.consoleFilterProvider"/></include> ![Non-Dynamic][non-dynamic] | [`LogcatConsoleFilterProvider`](%gh-ij-android%/logcat/src/com/android/tools/idea/logcat/LogcatConsoleFilterProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.logcat.messages.exceptionMessageRewriter"/></include> ![Non-Dynamic][non-dynamic] | [`ExceptionMessageRewriter`](%gh-ij-android%/logcat/src/com/android/tools/idea/logcat/messages/ExceptionMessageRewriter.kt) |
### native-symbolizer.xml
[`native-symbolizer.xml`](%gh-ij-android%/native-symbolizer/resources/META-INF/native-symbolizer.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.nativeSymbolizer.moduleSymbolSourceContributor"/></include> ![Non-Dynamic][non-dynamic] | [`ModuleSymbolSourceContributor`](%gh-ij-android%/native-symbolizer/src/com/android/tools/nativeSymbolizer/SymbolSource.kt) |
### naveditor.xml
[`naveditor.xml`](%gh-ij-android%/nav/editor/resources/META-INF/naveditor.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.naveditor.editor.addDestinationMenuToken"/></include> ![Non-Dynamic][non-dynamic] | [`AddDestinationMenuToken`](%gh-ij-android%/nav/editor/src/com/android/tools/idea/naveditor/editor/AddDestinationMenu.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.naveditor.surface.navDesignSurfaceToken"/></include> ![Non-Dynamic][non-dynamic] | [`NavDesignSurfaceToken`](%gh-ij-android%/nav/editor/src/com/android/tools/idea/naveditor/surface/NavDesignSurfaceToken.java) |
### pipeline.xml
[`pipeline.xml`](%gh-ij-android%/android-transport/resources/META-INF/pipeline.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.transport.transportConfigContributor"/></include> ![Non-Dynamic][non-dynamic] | [`TransportConfigContributor`](%gh-ij-android%/android-transport/src/com/android/tools/idea/transport/TransportConfigContributor.java) |
### profilers.xml
[`profilers.xml`](%gh-ij-android%/profilers-android/resources/META-INF/profilers.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.profilers.profilerProgramRunnerToken"/></include> ![Non-Dynamic][non-dynamic] | [`ProfilerProgramRunnerToken`](%gh-ij-android%/profilers-android/src/com/android/tools/idea/profilers/ProfilerProgramRunnerToken.kt) |
### project-system-gradle-plugin.xml
[`project-system-gradle-plugin.xml`](%gh-ij-android%/project-system-gradle/resources/META-INF/project-system-gradle-plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.gradle.androidModuleDataService"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidModuleDataServiceExtension`](%gh-ij-android%/project-system-gradle/src/com/android/tools/idea/projectsystem/gradle/sync/AndroidModuleDataServiceExtension.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.gradle.sync.postSyncProjectCleanupStep"/></include> ![Non-Dynamic][non-dynamic] | [`ProjectCleanupStep`](%gh-ij-android%/project-system-gradle/src/com/android/tools/idea/gradle/project/sync/setup/post/ProjectCleanupStep.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.gradle.sync.postSyncProjectSetupStep"/></include> ![Non-Dynamic][non-dynamic] | [`ProjectSetupStep`](%gh-ij-android%/project-system-gradle/src/com/android/tools/idea/gradle/project/sync/setup/post/ProjectSetupStep.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.moduleImporter"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidModuleImporter`](%gh-ij-android%/project-system-gradle/src/com/android/tools/idea/gradle/project/AndroidModuleImporter.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.gradle.errorQuickFixProvider"/></include> ![Non-Dynamic][non-dynamic] | [`GradleErrorQuickFixProvider`](%gh-ij-android%/project-system-gradle/src/com/android/tools/idea/gradle/project/build/events/GradleErrorQuickFixProvider.kt) |
### project-system-plugin.xml
[`project-system-plugin.xml`](%gh-ij-android%/project-system/resources/META-INF/project-system-plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.androidStartupActivity"/></include> | [`AndroidStartupActivity`](%gh-ij-android%/project-system/src/com/android/tools/idea/AndroidStartupActivity.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.project.projectsystem"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidProjectSystemProvider`](%gh-ij-android%/project-system/src/com/android/tools/idea/projectsystem/AndroidProjectSystemProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.memorysettings.memorySettingsToken"/></include> ![Non-Dynamic][non-dynamic] | [`MemorySettingsToken`](%gh-ij-android%/project-system/src/com/android/tools/idea/memorysettings/MemorySettingsToken.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.model.mergedManifestInfoToken"/></include> ![Non-Dynamic][non-dynamic] | [`MergedManifestInfoToken`](%gh-ij-android%/project-system/src/com/android/tools/idea/model/MergedManifestInfoToken.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.projectsystem.ApplicationProjectContextProvider"/></include> | [`ApplicationProjectContextProvider`](%gh-ij-android%/project-system/src/com/android/tools/idea/projectsystem/ApplicationProjectContext.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.projectsystem.androidIconProviderProjectToken"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidIconProviderProjectToken`](%gh-ij-android%/project-system/src/com/android/tools/idea/projectsystem/AndroidIconProviderProjectToken.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.projectsystem.dynamicAppFeatureOnFeatureToken"/></include> ![Non-Dynamic][non-dynamic] | [`DynamicAppFeatureOnFeatureToken`](%gh-ij-android%/project-system/src/com/android/tools/idea/projectsystem/DynamicAppFeatureOnFeatureToken.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.projectsystem.findDependenciesWithResourcesToken"/></include> ![Non-Dynamic][non-dynamic] | [`FindDependenciesWithResourcesToken`](%gh-ij-android%/project-system/src/com/android/tools/idea/projectsystem/FindDependenciesWithResourcesToken.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.projectsystem.libraryDependenciesTroubleInfoCollectorToken"/></include> ![Non-Dynamic][non-dynamic] | [`LibraryDependenciesTroubleInfoCollectorToken`](%gh-ij-android%/project-system/src/com/android/tools/idea/projectsystem/LibraryDependenciesTroubleInfoCollectorToken.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.projectsystem.pseudoLocalesToken"/></include> ![Non-Dynamic][non-dynamic] | [`PseudoLocalesToken`](%gh-ij-android%/project-system/src/com/android/tools/idea/projectsystem/PseudoLocalesToken.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.android.facet.resourceFolderManagerToken"/></include> ![Non-Dynamic][non-dynamic] | [`ResourceFolderManagerToken`](%gh-ij-android%/project-system/src/org/jetbrains/android/facet/ResourceFolderManagerToken.kt) |
### resources-explorer.xml
[`resources-explorer.xml`](%gh-ij-android%/android/resources/com/android/tools/idea/ui/resourcemanager/META-INF/resources-explorer.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.resourceImporter"/></include> ![Non-Dynamic][non-dynamic] | [`ResourceImporter`](%gh-ij-android%/android/src/com/android/tools/idea/ui/resourcemanager/plugin/ResourceImporter.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.resourceViewer"/></include> ![Non-Dynamic][non-dynamic] | [`DesignAssetRenderer`](%gh-ij-android%/android/src/com/android/tools/idea/ui/resourcemanager/plugin/DesignAssetRenderer.kt) |
### safeargs.common.xml
[`safeargs.common.xml`](%gh-ij-android%/nav/safeargs/common/resources/META-INF/safeargs.common.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.nav.safeargs.module.safeArgsModeToken"/></include> ![Non-Dynamic][non-dynamic] | [`SafeArgsModeToken`](%gh-ij-android%/nav/safeargs/common/src/com/android/tools/idea/nav/safeargs/module/SafeArgsModeModuleService.kt) |
### server-flags.xml
[`server-flags.xml`](%gh-ij-android%/server-flags/resources/META-INF/server-flags.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.mendelFlagsProvider"/></include> ![Non-Dynamic][non-dynamic] | [`MendelFlagsProvider`](%gh-ij-android%/server-flags/src/com/android/tools/idea/mendel/MendelFlagsProvider.kt) |
### testartifacts.xml
[`testartifacts.xml`](%gh-ij-android%/testartifacts/src/META-INF/testartifacts.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.testartifacts.instrumented.androidRunConfigurationToken"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidRunConfigurationToken`](%gh-ij-android%/testartifacts/src/com/android/tools/idea/testartifacts/instrumented/AndroidRunConfigurationToken.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.testartifacts.screenshot.screenshotTestRunConfigurationToken"/></include> ![Non-Dynamic][non-dynamic] | [`ScreenshotTestRunConfigurationToken`](%gh-ij-android%/testartifacts/src/com/android/tools/idea/testartifacts/screenshot/ScreenshotTestRunConfigurationToken.kt) |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
[obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square
[experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square
[internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square
[project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square
[non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square
[dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square
</snippet>

View File

@ -0,0 +1,124 @@
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- NO LONGER UPDATED ====================================================== -->
<snippet id="content">
# AppCode Extension Point and Listener List
<primary-label ref="Deprecated"/>
<link-summary>Overview of Extension Points and Listeners for AppCode.</link-summary>
<tldr>
**Product-Specific Plugin Development**: [AppCode](app_code.md)
</tldr>
> See [](intellij_platform_extension_point_list.md) for IntelliJ Platform.
<include from="app_code.md" element-id="appCodeSunset"/>
34 Extension Points and 6 Listeners for AppCode 2022.3
<include from="snippets.topic" element-id="ep_list_legend"/>
## AppCode
### AppCode Listeners
| Topic | Listener |
|-------|----------|
| [CocoaPodsUtils#GEM_TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cocoapods.CocoaPodsUtils.GemListener) | `GemListener` |
| [CocoaPodsUtils#PODS_TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cocoapods.CocoaPodsUtils.PodsListener) | `PodsListener` |
| [AMDeviceManager#DEVICE_LISTENER_TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.execution.deviceSupport.AMDeviceListener) | `AMDeviceListener` |
| [XcodeProjectTestListener#TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.xcode.model.XcodeProjectTestListener) | `XcodeProjectTestListener` |
| [XcodeIsBrokenListener.Companion#XCODE_IS_BROKEN_TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.xcode.refresh.XcodeIsBrokenListener) | `XcodeIsBrokenListener` |
| [SwiftPackageManagerSettingsListener.Companion#TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.swift.swiftpm.SwiftPackageManagerSettingsListener) | `SwiftPackageManagerSettingsListener` |
### AppCodeCorePlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| [appcode.additionalRootsProvider](https://jb.gg/ipe?extensions=appcode.additionalRootsProvider) ![Non-Dynamic][non-dynamic] | `XcodeMetaDataAdditionalRootsProvider` |
| [appcode.attachDebuggerProvider](https://jb.gg/ipe?extensions=appcode.attachDebuggerProvider) ![Non-Dynamic][non-dynamic] | `AppCodeAttachDebuggerExtension` |
| [appcode.projectNameUpdateVeto](https://jb.gg/ipe?extensions=appcode.projectNameUpdateVeto) ![Non-Dynamic][non-dynamic] | `XcodeProjectNameUpdateVeto` |
| [appcode.projectRootNodeDelegateProvider](https://jb.gg/ipe?extensions=appcode.projectRootNodeDelegateProvider) ![Non-Dynamic][non-dynamic] | `AppCodeProjectRootNodeDelegateProvider` |
| [appcode.rootsInfoPostProcessor](https://jb.gg/ipe?extensions=appcode.rootsInfoPostProcessor) ![Non-Dynamic][non-dynamic] | `XcodeRootsInfoPostProcessor` |
| [appcode.runConfigurationExtension](https://jb.gg/ipe?extensions=appcode.runConfigurationExtension) ![Non-Dynamic][non-dynamic] | `AppCodeRunConfigurationExtension` |
| [appcode.xcodeExternalBuildProvider](https://jb.gg/ipe?extensions=appcode.xcodeExternalBuildProvider) ![Non-Dynamic][non-dynamic] | `XcodeExternalBuildProvider` |
| [appcode.xcodeTemplatePathsProvider](https://jb.gg/ipe?extensions=appcode.xcodeTemplatePathsProvider) ![Non-Dynamic][non-dynamic] | `XcodeTemplatePathsProvider` |
| [appcode.xcodeTemplatesProvider](https://jb.gg/ipe?extensions=appcode.xcodeTemplatesProvider) | `XcodeTemplatesProvider` |
### CocoaCommonPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| [appcode.breakpointHandlersProvider](https://jb.gg/ipe?extensions=appcode.breakpointHandlersProvider) ![Non-Dynamic][non-dynamic] | `IPhoneBreakpointHandlersProvider` |
| [appcode.lldbInitializerProvider](https://jb.gg/ipe?extensions=appcode.lldbInitializerProvider) ![Non-Dynamic][non-dynamic] | `LLDBInitializerProvider` |
| [cidr.cocoa.xcodeProjectFileProvider](https://jb.gg/ipe?extensions=cidr.cocoa.xcodeProjectFileProvider) | `XcodeProjectFileProvider` |
### CocoaPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| [cidr.cocoa.documentation.search.candidates.helper](https://jb.gg/ipe?extensions=cidr.cocoa.documentation.search.candidates.helper) | `XcodeDocumentationCandidateBasedSearchHelper` |
| [cidr.cocoa.documentation.search.usr.provider](https://jb.gg/ipe?extensions=cidr.cocoa.documentation.search.usr.provider) | `XcodeDocumentationUsrProvider` |
### SwiftLanguageInternalPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| [cidr.lang.swiftTypeInheritorsSearch](https://jb.gg/ipe?extensions=cidr.lang.swiftTypeInheritorsSearch) ![Non-Dynamic][non-dynamic] | [`QueryExecutor`](%gh-ic%/platform/core-api/src/com/intellij/util/QueryExecutor.java) |
| [swift.lang.libraryModuleImportRestriction](https://jb.gg/ipe?extensions=swift.lang.libraryModuleImportRestriction) | `SwiftLibraryModuleImportRestriction` |
| [swift.sdkInfo.extractor](https://jb.gg/ipe?extensions=swift.sdkInfo.extractor) | `OCResolveConfigurationSdkInfoExtractor` |
| [swift.sourcekit.blacklistedModulesProvider](https://jb.gg/ipe?extensions=swift.sourcekit.blacklistedModulesProvider) ![Non-Dynamic][non-dynamic] | `SourceKitBlacklistedModulesProvider` |
| [swift.sourcekit.dependenciesLoader](https://jb.gg/ipe?extensions=swift.sourcekit.dependenciesLoader) | `SourceKitPlatformBinaryDependenciesLoader` |
### SwiftPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| [cidr.lang.swiftCustomIncludePathProvider](https://jb.gg/ipe?extensions=cidr.lang.swiftCustomIncludePathProvider) ![Non-Dynamic][non-dynamic] | `SwiftCustomIncludePathProvider` |
| [cidr.lang.swiftSourceModuleProvider](https://jb.gg/ipe?extensions=cidr.lang.swiftSourceModuleProvider) ![Non-Dynamic][non-dynamic] | `SwiftSourceModuleProvider` |
| [swift.kotlinNative](https://jb.gg/ipe?extensions=swift.kotlinNative) ![Non-Dynamic][non-dynamic] | `KotlinNativeExtensionPoint` |
| [swift.lang.sourceKit.compileArgumentsCollector](https://jb.gg/ipe?extensions=swift.lang.sourceKit.compileArgumentsCollector) | `SwiftSourceKitCompileArgumentsCollector` |
| [swift.lang.sourceKit.dataGenerator](https://jb.gg/ipe?extensions=swift.lang.sourceKit.dataGenerator) ![Project-Level][project-level] | `SourceKitDataGenerator` |
| [swift.lang.sourceKit.declarationLocationValidator](https://jb.gg/ipe?extensions=swift.lang.sourceKit.declarationLocationValidator) | `SourceKitDeclarationLocationValidator` |
| [swift.lang.sourceKitFixExtension](https://jb.gg/ipe?extensions=swift.lang.sourceKitFixExtension) | `SwiftSourceKitFixExtension` |
| [swift.lang.swiftSupportProvider](https://jb.gg/ipe?extensions=swift.lang.swiftSupportProvider) | `SwiftSupportProvider` |
### SwiftPMCommon.xml
| Extension Point | Implementation |
|-----------------|----------------|
| [swift.packageManager.appleSdk.filter](https://jb.gg/ipe?extensions=swift.packageManager.appleSdk.filter) | `SwiftPackageLoadedAppleSdkFilter` |
| [swift.packageManager.environmentConfigurator](https://jb.gg/ipe?extensions=swift.packageManager.environmentConfigurator) | `SwiftPackageManagerEnvironmentConfigurator` |
| [swift.packageManager.launcher](https://jb.gg/ipe?extensions=swift.packageManager.launcher) | `SwiftPackageManagerConfigurationLauncher` |
| [swift.packageManager.modulemapsCollector](https://jb.gg/ipe?extensions=swift.packageManager.modulemapsCollector) | `SwiftPackageModuleMapsCollector` |
| [swift.packageManager.systemModuleResolver](https://jb.gg/ipe?extensions=swift.packageManager.systemModuleResolver) | `SwiftPackageManagerSystemModuleResolver` |
### SwiftTestsExtension.xml
| Extension Point | Implementation |
|-----------------|----------------|
| [test.cidr.OCCodeInsightDelegate](https://jb.gg/ipe?extensions=test.cidr.OCCodeInsightDelegate) ![Non-Dynamic][non-dynamic] | `OCCodeInsightDelegate` |
### XcodeModelCorePlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| [xcode.pbxReferenceBuildSettingsProvider](https://jb.gg/ipe?extensions=xcode.pbxReferenceBuildSettingsProvider) ![Non-Dynamic][non-dynamic] | `PBXReferenceBuildSettingProvider` |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
[obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square
[experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square
[internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square
[project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square
[non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square
[dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square
</snippet>

View File

@ -0,0 +1,356 @@
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- GENERATED FILE, DO NOT EDIT -->
<!-- This file is generated with the SDK Docs Authoring Tools plugin ('Generate SDK Docs EP Lists' action) -->
<!-- Revision: b815cfdcaa594a8842ccf89e6ac2bf7615401920 -->
<!--
EP List Directories:
- /CIDR
-->
<snippet id="content">
149 Extension Points and 45 Listeners
<include from="snippets.topic" element-id="ep_list_legend"/>
## CLion
### CLion Listeners
| Topic | Listener |
|-------|----------|
| [`CubeMXManager#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.clion.embedded.stm32cubemx.CubeMXManager.CubeStatusListener) | `CubeStatusListener` |
| [`WestProjectListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.clion.west.WestProjectListener) | `WestProjectListener` |
| [`WestConfigListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.clion.west.config.WestConfigListener) | `WestConfigListener` |
| [`Listener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.clion.west.settings.WestSettings.Listener) | `Listener` |
| [`FileSymbolTablesCache#OUT_OF_CODE_BLOCK_TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.psi.util.PsiModificationTracker.Listener) ![Project-Level][project-level] | [`Listener`](%gh-ic%/platform/core-api/src/com/intellij/psi/util/PsiModificationTracker.java) |
| [`ConsistencyErrorTopicListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.rml.dfa.utils.ConsistencyErrorTopicListener) | `ConsistencyErrorTopicListener` |
| [`CMakeSettingsListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.cmake.CMakeSettingsListener) | `CMakeSettingsListener` |
| [`Listener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.cmake.python.CMakePythonSdkService.Companion.Listener) | `Listener` |
| [`Listener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.cmake.python.CMakePythonSettingListenerService.Companion.Listener) | `Listener` |
| [`Listener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.cmake.python.CMakePythonSettingsService.Listener) | `Listener` |
| [`CMakeWorkspaceListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.cmake.workspace.CMakeWorkspaceListener) | `CMakeWorkspaceListener` |
| [`CompDBSettingsListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.compdb.settings.CompDBSettingsListener) | `CompDBSettingsListener` |
| [`CLionExternalBuildManagerListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.execution.external.build.CLionExternalBuildManagerListener) | `CLionExternalBuildManagerListener` |
| [`ClionProjectToolManagerListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.execution.external.build.ClionProjectToolManagerListener) | `ClionProjectToolManagerListener` |
| [`MakefileBuildTargetsManagerListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.makefile.execution.build.MakefileBuildTargetsManagerListener) | `MakefileBuildTargetsManagerListener` |
| [`MakefileSettingsListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.makefile.settings.MakefileSettingsListener) | `MakefileSettingsListener` |
| [`CPPToolchainsConfigurable#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.toolchains.CPPToolchainsConfigurable.Listener) | `Listener` |
| [`CPPToolchainsListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.toolchains.CPPToolchainsListener) | `CPPToolchainsListener` |
| [`CidrBuildListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.execution.build.CidrBuildListener) ![Project-Level][project-level] | `CidrBuildListener` |
| [`CidrHighlighterNotifierService#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.execution.testing.CidrHighlighterNotifierService.LineMarkNotifier) | `LineMarkNotifier` |
| [`CidrTestScopeService#TEST_SCOPE_LISTENER_TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.execution.testing.CidrTestScopeService.TestScopeListener) | `TestScopeListener` |
| [`ExternalWorkspaceListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.external.system.workspace.ExternalWorkspaceListener) | `ExternalWorkspaceListener` |
| [`ClangLanguageServiceProviderListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.daemon.clang.clangd.ClangLanguageServiceProviderListener) | `ClangLanguageServiceProviderListener` |
| [`ClangServerListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.daemon.clang.clangd.lsp.server.ClangServerListener) | `ClangServerListener` |
| [`ClangTelemetryListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.daemon.clang.clangd.lsp.telemetry.ClangTelemetryListener) | `ClangTelemetryListener` |
| [`ClangMemoryUsageWatchDogListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.daemon.clang.clangd.memory.ClangMemoryUsageWatchDogListener) | `ClangMemoryUsageWatchDogListener` |
| [`OCLanguageServiceReparsingPassListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.daemon.clang.clangd.reparsing.OCLanguageServiceReparsingPassListener) | `OCLanguageServiceReparsingPassListener` |
| [`ClangdSettingsListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.daemon.clang.clangd.settings.ClangdSettingsListener) | `ClangdSettingsListener` |
| [`ClangdSettingsListener#TOPIC_UI`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.daemon.clang.clangd.settings.ClangdSettingsListener) | `ClangdSettingsListener` |
| [`CidrInjectionListener#INJECTION_TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.editor.CidrInjectionListener) | `CidrInjectionListener` |
| [`OCInclusionContextListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.preprocessor.OCInclusionContextListener) | `OCInclusionContextListener` |
| [`FileSymbolTableCacheListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTableCacheListener) | `FileSymbolTableCacheListener` |
| [`FileSymbolTablesPackListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesPackListener) | `FileSymbolTablesPackListener` |
| [`OCFileSymbolTableListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.symbols.symtable.OCFileSymbolTableListener) | `OCFileSymbolTableListener` |
| [`OCSymbolBuildingListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.symbols.symtable.building.OCSymbolBuildingListener) | `OCSymbolBuildingListener` |
| [`OCWorkspaceListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.workspace.OCWorkspaceListener) | `OCWorkspaceListener` |
| [`Listener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.meson.project.MesonModelManager.Listener) | `Listener` |
| [`MesonSettingsListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.meson.settings.MesonSettingsListener) | `MesonSettingsListener` |
| [`PackageManagerEventListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.packagemanager.vcpkg.PackageManagerEventListener) | `PackageManagerEventListener` |
| [`CidrRootConfigurationListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.project.CidrRootConfigurationListener) | `CidrRootConfigurationListener` |
| [`CidrWorkspaceInstantaneousStateChangeListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.project.workspace.CidrWorkspaceInstantaneousStateChangeListener) ![Project-Level][project-level] | `CidrWorkspaceInstantaneousStateChangeListener` |
| [`CidrWorkspaceListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.project.workspace.CidrWorkspaceListener) | `CidrWorkspaceListener` |
| [`OCRootsSynchronizerListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.project.workspace.OCRootsSynchronizerListener) | `OCRootsSynchronizerListener` |
| [`RemoteDeploymentListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.system.RemoteDeploymentListener) | `RemoteDeploymentListener` |
| [`AllowedModules#INVALIDATION_TOPIC`](https://jb.gg/ipe/listeners?topics=java.lang.Runnable) | `Runnable` |
### CidrDebuggerPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.backendConsoleInjectionHelper"/></include> | `BackendConsoleInjectionHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.customDebuggerProvider"/></include> | `CidrCustomDebuggerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.debugProcessConfigurator"/></include> | `CidrDebugProcessConfigurator` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.debuggerMessagesProvider"/></include> ![Internal][internal] | `CidrDebuggerMessagesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.disasmRegisterProvider"/></include> ![Experimental][experimental] | `CidrDisasmRegisterProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.editorsExtension"/></include> | `CidrDebuggerEditorsExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.formatters.natvis.provider"/></include> | `NatvisFileProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.frameChildrenContributor"/></include> | `CidrFrameChildrenContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.fullValueEvaluatorProvider"/></include> ![Experimental][experimental] | `CidrFullValueEvaluatorProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.imageViewerProvider"/></include> | `CidrImageViewerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.languageSupport"/></include> | `CidrDebuggerLanguageSupport` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.lineBreakpointFileTypesProvider"/></include> | `CidrLineBreakpointFileTypesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.localVariablesFilterHandler"/></include> | `LocalVariablesFilterHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.modulesHandler"/></include> ![Experimental][experimental] | `CidrDebuggerModulesHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.nativeSelfProfilerPathProvider"/></include> | `NativeSelfProfilerPathProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.suspendThreadSelector"/></include> | `CidrSuspendThreadSelector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.valueRendererExtension"/></include> ![Non-Dynamic][non-dynamic] | `ValueRendererExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.valueRendererFactory"/></include> ![Non-Dynamic][non-dynamic] | `ValueRendererFactory` |
### CidrExecutionPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.buildConfigurationProvider"/></include> | `CidrBuildConfigurationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.projectTaskContextProvider"/></include> | `CidrProjectTaskContextProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.resolveConfigurationProvider"/></include> | `CidrResolveConfigurationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.runConfigurationExtension"/></include> ![Non-Dynamic][non-dynamic] | `CidrRunConfigurationExtensionBase` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.targetConfigurationHelper"/></include> | `CidrTargetConfigurationHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.testFrameworkDetector"/></include> ![Non-Dynamic][non-dynamic] | `CidrTestFrameworkDetector` |
### CidrLangBase.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.annotatorInspectionToolProvider"/></include> ![Non-Dynamic][non-dynamic] | `Supplier` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.dfaInspectionConfig"/></include> ![Non-Dynamic][non-dynamic] | `OCDFAInspectionConfig` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.externalInspections"/></include> | `OCExternalInspections` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.fileTypeHelper"/></include> ![Non-Dynamic][non-dynamic] | `OCFileTypeHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.knownModuleDetector"/></include> ![Internal][internal] | `CidrKnownModuleDetector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.langUtils"/></include> ![Non-Dynamic][non-dynamic] | `OCLanguageUtilsBase` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.languageKindHelper"/></include> ![Non-Dynamic][non-dynamic] | `OCLanguageKindCalculatorHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.languageKindProvider"/></include> ![Non-Dynamic][non-dynamic] | `OCLanguageKindProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.navigatableSymbolSearcherBridge"/></include> ![Non-Dynamic][non-dynamic] | `NavigatableSymbolSearcherBridge` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.newFileLangBackendHandler"/></include> ![Non-Dynamic][non-dynamic] | `OCNewFileLangBackendHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.newFileModelHandlerProvider"/></include> ![Non-Dynamic][non-dynamic] | `OCNewFileProjectModelHandlerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.ownModuleDetector"/></include> | `CidrOwnModuleDetector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.projectWizardFilesFormatter"/></include> ![Non-Dynamic][non-dynamic] | `CidrProjectWizardFilesFormatter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.standaloneInspectionToolProvider"/></include> ![Non-Dynamic][non-dynamic] | `Supplier` |
### CidrLangPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.annotatorHelper"/></include> ![Non-Dynamic][non-dynamic] | `OCAnnotatorHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.autoImportHelper"/></include> ![Non-Dynamic][non-dynamic] | `OCAutoImportHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.buildSymbolsVeto"/></include> ![Non-Dynamic][non-dynamic] | `OCBuildSymbolsVetoExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.callStructureProvider"/></include> ![Non-Dynamic][non-dynamic] | `PolyglotCallStructureProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.customHeaderProvider"/></include> ![Non-Dynamic][non-dynamic] | `CustomHeaderProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.doxygenExtension"/></include> ![Non-Dynamic][non-dynamic] | `Doxygen` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.externalResolver"/></include> | `OCExternalResolver` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.fileToBuildSymbolsCollector"/></include> ![Non-Dynamic][non-dynamic] | `FileToBuildSymbolsCollector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.foreignUsagesRenameProcessor"/></include> ![Non-Dynamic][non-dynamic] | `OCForeignUsagesRenameProcessor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.groupedFileNaming"/></include> ![Non-Dynamic][non-dynamic] | `OCGroupedFileNaming` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.includeHelper"/></include> ![Non-Dynamic][non-dynamic] | `OCIncludeHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.includeHierarchyProvider"/></include> ![Non-Dynamic][non-dynamic] | [`HierarchyProvider`](%gh-ic%/platform/lang-api/src/com/intellij/ide/hierarchy/HierarchyProvider.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.initialBuildingActivity"/></include> ![Non-Dynamic][non-dynamic] | `OCInitialBuildingActivity` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.languageKindContributor"/></include> ![Non-Dynamic][non-dynamic] | `OCLanguageKindContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.libraryFileConfigurationProvider"/></include> ![Non-Dynamic][non-dynamic] | `OCLibraryFileResolveConfigurationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.moduleBuilder.statisticsCollectorFactory"/></include> ![Non-Dynamic][non-dynamic] | `ModuleCacheBuilderStatisticsCollectorFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.moduleMapManagerRequestor"/></include> ![Non-Dynamic][non-dynamic] | `ModuleMapManagerRequestor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.moduleMapPlatformTypeProvider"/></include> ![Non-Dynamic][non-dynamic] | `ModuleMapPlatformTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.moduleMapRootSerializer"/></include> ![Non-Dynamic][non-dynamic] | `ModuleMapRootSerializer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.moduleMapSearchRootProvider"/></include> ![Non-Dynamic][non-dynamic] | `ModuleMapSearchRootProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.moduleResolver"/></include> ![Non-Dynamic][non-dynamic] | `OCModuleResolver` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.ocAdditionalFileSymbolTableBuilder"/></include> ![Non-Dynamic][non-dynamic] | `OCAdditionalFileSymbolTableBuilder` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.ocDirectInheritorsSearch"/></include> ![Non-Dynamic][non-dynamic] | [`QueryExecutor`](%gh-ic%/platform/core-api/src/com/intellij/util/QueryExecutor.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.ocInclusionContextLazyGetDefinitionProvider"/></include> ![Non-Dynamic][non-dynamic] | `OCInclusionContextLazyGetDefinitionProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.ocResolveRootAndConfigurationProvider"/></include> ![Non-Dynamic][non-dynamic] | `OCResolveRootAndConfigurationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.renameHandlerExtension"/></include> ![Non-Dynamic][non-dynamic] | `OCRenameHandlerExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.renameProcessorExtension"/></include> ![Non-Dynamic][non-dynamic] | `OCRenameProcessorExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.resourceCompletionProviders"/></include> ![Non-Dynamic][non-dynamic] | `OCResourceCompletionProviders` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.resourceFilesProvider"/></include> ![Non-Dynamic][non-dynamic] | `OCResourceFilesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.searchHelper"/></include> ![Non-Dynamic][non-dynamic] | `OCSearchHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.serializerProvider"/></include> ![Non-Dynamic][non-dynamic] | `SerializerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.symbolTableProvider"/></include> ![Non-Dynamic][non-dynamic] | `FileSymbolTableProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.testFramework"/></include> ![Non-Dynamic][non-dynamic] | `OCTestFramework` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.typeStructureProvider"/></include> ![Non-Dynamic][non-dynamic] | `PolyglotTypeStructureProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.requiredForCidrSmartMode"/></include> ![Non-Dynamic][non-dynamic] | `RequiredForCidrSmartMode` |
### CidrProjectModelPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.appleFrameworkFilter"/></include> ![Project-Level][project-level] | `AppleFrameworkFilter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.codeInsightUnavailabilityHighlighter"/></include> ![Non-Dynamic][non-dynamic] | `OCCodeInsightUnavailabilityHighlighter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.compilerKindProvider"/></include> | `OCCompilerKindProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.compilerResolver"/></include> ![Project-Level][project-level] | `OCCompilerResolver` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.fileScopeProvider"/></include> ![Non-Dynamic][non-dynamic] | `OCFileScopeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.fileWideHighlighter"/></include> ![Non-Dynamic][non-dynamic] ![DumbAware][dumb-aware] | `FileWideHighlighter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.headerSearchRootFactory"/></include> | `HeadersSearchRootFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.resolveConfigurationSelector"/></include> | `OCResolveConfigurationSelector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.projectModel.deserializingVetoCondition"/></include> | `OCWorkspaceDeserializingVetoCondition` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.projectModel.msvcPchHelper"/></include> | `OCMsvcPchHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.projectModel.runAfterOCWorkspaceIsInitialized"/></include> ![Non-Dynamic][non-dynamic] | `RunAfterOCWorkspaceIsInitialized` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.projectModel.runAfterOCWorkspaceIsLoaded"/></include> ![Non-Dynamic][non-dynamic] | `RunAfterOCWorkspaceIsLoaded` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.projectModel.supportedFileChecker"/></include> ![Non-Dynamic][non-dynamic] | `OCSupportedFileChecker` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.projectModel.unloadedResolveContextsManager"/></include> | `OCUnloadedResolveContextsManager` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.projectModel.workspaceLoadedCheck"/></include> | `OCWorkspaceLoadedChecker` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cidrCommandLineParser"/></include> ![Project-Level][project-level] | `CidrCommandLineParser` |
### CidrTestingPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.testing.potentialTestHolderRootsProvider"/></include> | `CidrPotentialTestHolderRootsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.testing.testIndexContributor"/></include> | `CidrTestIndexContributor` |
### CidrToolchainsPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.devEnvironmentChecker"/></include> ![Non-Dynamic][non-dynamic] | `DevEnvironmentChecker` |
### CidrUtilExecutionPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.util.pluginPathMapper"/></include> | `CidrPluginPathMapper` |
### CidrWorkspaceModelCore.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.markRootActionAvailability"/></include> ![Non-Dynamic][non-dynamic] | `CidrMarkRootActionAvailability` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.project.is.known.checker"/></include> ![Non-Dynamic][non-dynamic] | `KnownProjectChecker` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.project.moduleNameSuffixProvider"/></include> ![Non-Dynamic][non-dynamic] | `WorkspaceModuleNameSuffixProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.project.notifications.editorNotificationWarningProvider"/></include> | `EditorNotificationWarningProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.project.popup.projectFixesProvider"/></include> | `ProjectFixesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.project.rootsBuilderProvider"/></include> ![Non-Dynamic][non-dynamic] | `Provider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.project.widget.widgetStatusProvider"/></include> | `WidgetStatusProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.project.workspaceProvider"/></include> ![Non-Dynamic][non-dynamic] | `CidrWorkspaceProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.cidr.fus.projectModelTypeProvider"/></include> | `CidrProjectModelTypeProvider` |
### ClangFormatPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.clangFormatProvider"/></include> ![Non-Dynamic][non-dynamic] | `ClangFormatChangeSettingsProvider` |
### CLionCMakeCore.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.buildStep"/></include> | `CMakeBuildProcessListenerCreator` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.cmakeSettingsFlavorProvider"/></include> | `CMakeSettingsFlavorProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.flavorProvider"/></include> | `CMakeFlavorProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.languageKindRecognizer"/></include> | `CMakeLanguageKindRecognizer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.loadOnStartupDependency"/></include> | `FutureProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.profileLoadContributor"/></include> | `FutureProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.runnerStep"/></include> ![Non-Dynamic][non-dynamic] | `CMakeRunnerStep` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.targetToConfigProvider"/></include> | `CMakeTargetToConfigProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.toolWindowFocusContributor"/></include> | `CMakeToolWindowFocusContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.workspace.compilerEnvironmentContributor"/></include> | `CMakeCompilerEnvironmentContributor` |
### CLionExecutionPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.targets.provider"/></include> | `DebugTargetsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="clion.buildToolWindowActivator.contributor"/></include> | `Contributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="clion.compoundConfigurationContext"/></include> | `CidrCompoundConfigurationContext` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="clion.externalConfigurationProvider"/></include> | `CLionExternalConfigurationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="clion.showAssembly.funcInfoProvider"/></include> | `CLionShowAssemblyFuncInfoProvider` |
### CLionMakefilePlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="clion.makefile.buildSystemDetector"/></include> | `MkBuildSystemDetector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="clion.makefile.projectPreConfigurator"/></include> | `MkProjectPreConfigurator` |
### CLionWizard.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.openWizardStepProvider"/></include> | `OpenWizardStepProvider` |
### CMakePsiPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.bundledDocumentationProvider"/></include> | `CMakeBundledDocumentationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.completion.environmentProvider"/></include> | `CMakeEnvironmentVariableProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.fileLocationProvider"/></include> | `CMakeFileLocationProvider` |
### com.intellij.cidr.lang.clangd
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="clangd.clangTidyAnnotationApplier"/></include> | `ClangTidyAnnotationApplier` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="clangd.clangTidyResolveInfoProvider"/></include> | `ClangTidyResolveInfoProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="clangd.clangdAnnotatorUtil"/></include> | `ClangAnnotatorUtil` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="clangd.clangdBridge"/></include> | `ClangdBridgeInterface` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="clangd.externalCompletionProvider"/></include> ![DumbAware][dumb-aware] | `ExternalCompletionProvider` |
### com.intellij.cidr.uml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.uml.dragAndDropReceiver"/></include> | `UmlDiagramDragAndDropReceiver` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.uml.umlDiagramProvider"/></include> | `UmlDiagramLanguage` |
### intellij.cidr.coverage.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.coverage.coverageComposer"/></include> ![Non-Dynamic][non-dynamic] | `CidrCoverageComposer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.coverage.coverageComposerRunner"/></include> ![Non-Dynamic][non-dynamic] | `CidrCoverageComposerRunner` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.coverage.coverageDataFileProvider"/></include> ![Non-Dynamic][non-dynamic] | `CidrCoverageDataFileProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.coverage.coverageErrorProcessor"/></include> ![Non-Dynamic][non-dynamic] | `CidrCoverageErrorProcessor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.coverage.coverageViewExtensionProvider"/></include> ![Non-Dynamic][non-dynamic] | `CidrCoverageViewExtensionProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.coverage.gcovCoverageToolsProvider"/></include> ![Non-Dynamic][non-dynamic] | `GCovCoverageToolProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.coverage.llvmCoverageToolsProvider"/></include> ![Non-Dynamic][non-dynamic] | `LLVMCoverageToolsProvider` |
### intellij.cidr.profiling.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.profiler.memory.environmentProvider"/></include> ![Non-Dynamic][non-dynamic] | `MemoryProfileEnvironmentProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.profiler.memory.presentation"/></include> ![Non-Dynamic][non-dynamic] | `MemoryProfilePresentation` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.profiler.valgrind.disabler"/></include> | `ValgrindDisabler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.profiler.valgrind.executionContext"/></include> | `ValgrindExecutionContext` |
### intellij.cidr.translateCode.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.showAssembly.translatorProviders"/></include> | `CidrTranslatorProvider` |
### intellij.clion.featuresTrainer.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="training.clion.lessons"/></include> | `CLionExternalLessons` |
### intellij.clion.runFile.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.cpp.runFile.entryPointDetector"/></include> | `CppFileEntryPointDetector` |
### intellij.clion.west.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.clion.west.westPathContributor"/></include> | `WestPathContributor` |
### intellij.rml.dfa.devtools.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rml.dfa.devtools.debug.provider"/></include> | `DfaDebugProvider` |
### intellij.rml.dfa.impl.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rml.dfa.impl.DfaDebugExtension"/></include> | `DfaDebugExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rml.dfa.ir.serialization.provider"/></include> | `IrSerializationProvider` |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
[obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square
[experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square
[internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square
[project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square
[non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square
[dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square
</snippet>

View File

@ -0,0 +1,167 @@
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- GENERATED FILE, DO NOT EDIT -->
<!-- This file is generated with the SDK Docs Authoring Tools plugin ('Generate SDK Docs EP Lists' action) -->
<!-- Revision: b815cfdcaa594a8842ccf89e6ac2bf7615401920 -->
<!--
EP List Directories:
- /dbe
-->
<snippet id="content">
77 Extension Points and 23 Listeners
<include from="snippets.topic" element-id="ep_list_legend"/>
## DataGrip
### DataGrip Listeners
| Topic | Listener |
|-------|----------|
| [`JdbcDriverManager#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.console.JdbcDriverManager.Listener) | `Listener` |
| [`DatabaseSessionManager#topic`](https://jb.gg/ipe/listeners?topics=com.intellij.database.console.session.DatabaseSessionManagerListener) | `DatabaseSessionManagerListener` |
| [`DatabaseSession.Companion#topic`](https://jb.gg/ipe/listeners?topics=com.intellij.database.console.session.DatabaseSessionStateListener) | `DatabaseSessionStateListener` |
| [`AbstractDataSource#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.dataSource.AbstractDataSource.Listener) | `Listener` |
| [`DataSourceModelStorage#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.dataSource.DataSourceModelStorage.Listener) | `Listener` |
| [`DataSourceStorage#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.dataSource.DataSourceStorage.Listener) | `Listener` |
| [`DatabaseConnectionManager#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.dataSource.DatabaseConnectionManager.Listener) | `Listener` |
| [`DatabaseArtifactManager#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.dataSource.artifacts.DatabaseArtifactManager.ArtifactListener) | `ArtifactListener` |
| [`DataSourceTestConnectionManager#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.dataSource.ui.DataSourceTestConnectionManager.Listener) | `Listener` |
| [`DatabaseTopics#AUDIT_TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.datagrid.DataAuditor) | `DataAuditor` |
| [`DatabaseTopics#RESPONSE_TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.datagrid.DataConsumer) | [`DataConsumer`](%gh-ic%/grid/core-impl/src/datagrid/DataConsumer.java) |
| [`DatabaseTopics#REQUEST_TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.datagrid.DataProducer) | [`DataProducer`](%gh-ic%/grid/core-impl/src/datagrid/DataProducer.java) |
| [`ImportHead#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.dbimport.ImportHead.Listener) | `Listener` |
| [`DbImportDialog#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.dbimport.editor.DbImportDialog.Listener) | `Listener` |
| [`ScriptGeneratorDiagnosticListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.dialects.base.generator.ScriptGeneratorDiagnosticListener) | `ScriptGeneratorDiagnosticListener` |
| [`DatabaseModelLoader#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.introspection.DatabaseModelLoader.Listener) | `Listener` |
| [`DataSourceManager#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.psi.DataSourceManager.Listener) | `Listener` |
| [`DbPsiFacade#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.psi.DbPsiFacade.Listener) | `Listener` |
| [`DatabaseColorManager#COLOR_CHANGE_TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.view.DatabaseColorManager.ColorChangeListener) | `ColorChangeListener` |
| [`DatabaseConfigEditor#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.view.ui.DatabaseConfigEditor.Listener) | `Listener` |
| [`SqlRoutineIndex#topic`](https://jb.gg/ipe/listeners?topics=com.intellij.sql.SqlRoutineIndex.SqlRoutineIndexListener) | `SqlRoutineIndexListener` |
| [`DatabaseSettings#TOPIC`](https://jb.gg/ipe/listeners?topics=java.lang.Runnable) | `Runnable` |
| [`DatabaseViewOptions#TOPIC`](https://jb.gg/ipe/listeners?topics=java.lang.Runnable) | `Runnable` |
### DatabaseConnectivity.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.artifactRepositoriesProvider"/></include> | `ArtifactRepositoriesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.configValidator"/></include> | `DatabaseConfigValidator` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.dataConsumer"/></include> | [`DataConsumer`](%gh-ic%/grid/core-impl/src/datagrid/DataConsumer.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.dataProducer"/></include> | [`DataProducer`](%gh-ic%/grid/core-impl/src/datagrid/DataProducer.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.errorProvider"/></include> ![Non-Dynamic][non-dynamic] | `ConsoleErrorProviderFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.gridHelper"/></include> | [`CoreGridHelper`](%gh-ic%/grid/core-impl/src/datagrid/CoreGridHelper.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.jdbcHelper"/></include> | `JdbcHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.jdbcMetadataWrapper"/></include> | `MDFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.jdbcSourceLoader"/></include> | `JdbcSourceLoader` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.objectEditorFactory"/></include> ![Non-Dynamic][non-dynamic] | `DbmsObjectEditorFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.objectEditorModelFactory"/></include> ![Non-Dynamic][non-dynamic] | `DbmsObjectEditorModelFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.queryParametersProvider"/></include> | `QueryParametersProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.queryValidator"/></include> | `DbQueryValidator` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.selectInProvider"/></include> | `Extension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.toDatabaseScriptTranslator"/></include> | `ToDatabaseScriptTranslator` |
### DatabaseCore.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.addToHSet"/></include> | `n/a` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.artifactsConfig"/></include> ![Non-Dynamic][non-dynamic] | `n/a` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.connectionInterceptor"/></include> ![Experimental][experimental] | `DatabaseConnectionInterceptor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.consoleProvider"/></include> | `PersistenceConsoleProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.consoleRunContextParametersTuner"/></include> | `ConsoleRunContextParametersTuner` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.dataAuditor"/></include> | `DataAuditor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.dataImporter"/></include> | `ImportManager` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.dataSourceDetector"/></include> | `DataSourceDetector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.dataSourceManager"/></include> ![Project-Level][project-level] | `DataSourceManager` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.dbms"/></include> ![Non-Dynamic][non-dynamic] | `n/a` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.definitionProvider"/></include> | `DefinitionProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.dmlHelper"/></include> | `DmlHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.domainRegistry"/></include> | `DomainRegistry` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.driversConfig"/></include> ![Non-Dynamic][non-dynamic] | `n/a` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.errorHandler"/></include> | `DatabaseErrorHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.executionEnvironmentHelper"/></include> | `ExecutionEnvironmentHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.explainPlanProvider"/></include> | `ExplainPlanProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.extensionFallback"/></include> | `n/a` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.geoHelper"/></include> | `GeoHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.gridColumnsManagerFactory"/></include> | `GridColumnsManagerFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.hookUpHelper"/></include> | `HookUpHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.introspector"/></include> ![Internal][internal] | `Factory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.introspectorStatsProvider"/></include> | `DBIntrospectorStatsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.linkedDataSourceHelper"/></include> | `LinkedDataSourceHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.modelExternalData"/></include> ![Non-Dynamic][non-dynamic] | `n/a` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.modelFacade"/></include> ![Non-Dynamic][non-dynamic] | `ModelFacade` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.modelRelationProvider"/></include> | `ModelRelationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.namingService"/></include> | `Provider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.optionProvider"/></include> | `DbOptionProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.parameterPatternProvider"/></include> | `DatabaseParameterPatternProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.processParamProvider"/></include> | `ConsoleConfigurationParamProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.routineExecutionHelper"/></include> | `RoutineExecutionHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.runtimeErrorFixProvider"/></include> | [`RuntimeErrorActionProvider`](%gh-ic%/grid/core-impl/src/connection/throwable/info/RuntimeErrorActionProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.scriptGenerator"/></include> | `ScriptGenerator` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.sqlObjectBuilder"/></include> | `SqlObjectBuilder` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.synchronizeHandler"/></include> | `SynchronizeHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.typeSystem"/></include> | `DasTypeSystem` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.urlEditorInspector"/></include> | `UrlEditorInspector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.urlParamEditorProvider"/></include> ![Non-Dynamic][non-dynamic] | `TypeDescriptorFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.virtualFileDataSourceProvider"/></include> | `VirtualFileDataSourceProvider` |
### DatabasePlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.activeConnectionInfoProvider"/></include> ![Internal][internal] | `DbActiveConnectionInfoProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.cli.runTargetProvider"/></include> | `CliRunTargetProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.databaseViewStructureExtension"/></include> | `DvStructureExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.debuggerFacade"/></include> | `SqlDebuggerFacade` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.predicatesHelper"/></include> | `PredicatesHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.runConsoleAvailable"/></include> | `RunQueryIntentionActionAvailable` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.schemaDiffCustomization"/></include> | `SchemaDiffCustomization` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.urlParamEditorUiProvider"/></include> ![Non-Dynamic][non-dynamic] | `TypeDescriptorUiFactory` |
### intellij.grid.scripting.impl.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.grid.scripting.ivyLocalRepository"/></include> | `IvyLocalRepository` |
### mongo.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.mongo.resolveHelper"/></include> | `MongoJSResolveHelper` |
### SqlPluginCore.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.dialect"/></include> ![Non-Dynamic][non-dynamic] | `DatabaseDialect` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.sqlEffectAnalyzer"/></include> ![Non-Dynamic][non-dynamic] | `SqlAffectAnalyzer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.sql.dataSourceProvider"/></include> | `DataSourceProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.sql.dialect"/></include> ![Non-Dynamic][non-dynamic] | `SqlLanguageDialect` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.sql.dialectCodeStyleProvider"/></include> | `SqlDialectCodeStyleProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.sql.evaluationHelper"/></include> | `EvaluationHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.sql.executionFlowAnalyzerProvider"/></include> | `ExecutionFlowAnalyzerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.sql.formatterHelper"/></include> | `SqlFormatterHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.sql.inspectionSuppressorDelegate"/></include> | `SqlInspectionSuppressorDelegate` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.sql.membersHelper"/></include> | `SqlMembersHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.sql.navigationHelper"/></include> | `NavigationHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.sql.resolveExtension"/></include> | `SqlResolveExtension` |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
[obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square
[experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square
[internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square
[project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square
[non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square
[dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square
</snippet>

View File

@ -0,0 +1,70 @@
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- GENERATED FILE, DO NOT EDIT -->
<!-- This file is generated with the SDK Docs Authoring Tools plugin ('Generate SDK Docs EP Lists' action) -->
<!-- Revision: b815cfdcaa594a8842ccf89e6ac2bf7615401920 -->
<!--
EP List Directories:
- /goland
-->
<snippet id="content">
17 Extension Points and 6 Listeners
<include from="snippets.topic" element-id="ep_list_legend"/>
## GoLand
### GoLand Listeners
| Topic | Listener |
|-------|----------|
| [`GoLibrariesService#LIBRARIES_TOPIC`](https://jb.gg/ipe/listeners?topics=com.goide.project.GoLibrariesService.LibrariesListener) | `LibrariesListener` |
| [`GoModuleSettings#BUILD_TARGET_TOPIC`](https://jb.gg/ipe/listeners?topics=com.goide.project.GoModuleSettings.BuildTargetListener) ![Project-Level][project-level] | `BuildTargetListener` |
| [`GoModuleSettings#GO_SUPPORT_TOPIC`](https://jb.gg/ipe/listeners?topics=com.goide.project.GoModuleSettings.GoSupportListener) ![Project-Level][project-level] | `GoSupportListener` |
| [`GoProjectLifecycleListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.goide.project.GoProjectLifecycleListener) | `GoProjectLifecycleListener` |
| [`VgoUpdateProgressManager#UPDATE_PROGRESS_TOPIC`](https://jb.gg/ipe/listeners?topics=com.goide.vgo.VgoStatusTracker.VgoUpdateProgressManager.VgoModuleUpdateProgressListener) ![Project-Level][project-level] | `VgoModuleUpdateProgressListener` |
| [`VgoProjectSettings#VGO_INTEGRATION_TOPIC`](https://jb.gg/ipe/listeners?topics=com.goide.vgo.configuration.VgoProjectSettings.IntegrationListener) | `IntegrationListener` |
### goland.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.dlv.positionConverterFactory"/></include> | `DlvPositionConverterFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.documentation.packageVersionProvider"/></include> | `GoDocumentationPackageVersionProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.execution.defaultTargetEnvironmentProvider"/></include> | `DefaultTargetEnvironmentProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.executorExtension"/></include> | `GoExecutorExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.highlighting.errorAnnotatorSuppressor"/></include> | `GoErrorAnnotatorSuppressor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.importResolver"/></include> | `GoImportResolver` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.importsFilter"/></include> | `GoImportsFilter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.packageFactory"/></include> | `GoPackageFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.runConfigurationExtension"/></include> | `GoRunConfigurationExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.sdk.sdkVetoer"/></include> | `GoBasedSdkVetoer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.sdk.targetSdkVersionProvider"/></include> | `GoTargetSdkVersionProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.sdkProvider"/></include> | `GoSdkProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.support"/></include> | `GoLangSupport` |
### openapi.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.documentation.additionalDocumentationProvider"/></include> | `GoAdditionalDocumentationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.importPathsProvider"/></include> | `GoImportPathsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.imports.weigher"/></include> | `GoImportsWeigher` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.rootsProvider"/></include> | `GoRootsProvider` |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
[obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square
[experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square
[internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square
[project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square
[non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square
[dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square
</snippet>

View File

@ -0,0 +1,289 @@
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- GENERATED FILE, DO NOT EDIT -->
<!-- This file is generated with the SDK Docs Authoring Tools plugin ('Generate SDK Docs EP Lists' action) -->
<!-- Revision: b815cfdcaa594a8842ccf89e6ac2bf7615401920 -->
<!--
EP List Directories:
- /contrib
There must be no top-level "Listeners" group, adjust ExtensionPointAnalyzerAction.Group accordingly.
-->
<snippet id="content">
68 Extension Points and 10 Listeners
<include from="snippets.topic" element-id="ep_list_legend"/>
## IntelliJ Open Source Plugins
### AngularJS
[`AngularJS`](%gh-ij-plugins%/Angular/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.angular2.configProvider"/></include> | [`AngularConfigProvider`](%gh-ij-plugins%/Angular/src/org/angular2/cli/config/AngularConfigProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.angular2.entitiesSource"/></include> | [`Angular2EntitiesSource`](%gh-ij-plugins%/Angular/src/org/angular2/entities/Angular2EntitiesSource.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.angular2.frameworkHandler"/></include> ![Experimental][experimental] | [`Angular2FrameworkHandler`](%gh-ij-plugins%/Angular/src/org/angular2/entities/Angular2FrameworkHandler.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.angular2.importsHandler"/></include> | [`Angular2ImportsHandler`](%gh-ij-plugins%/Angular/src/org/angular2/codeInsight/imports/Angular2ImportsHandler.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.angular2.jsHandlersFactory"/></include> | [`Angular2JSHandlersFactory`](%gh-ij-plugins%/Angular/src/org/angular2/codeInsight/Angular2HandlersFactory.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.angular2.templateScopesProvider"/></include> | [`Angular2TemplateScopesProvider`](%gh-ij-plugins%/Angular/src/org/angular2/codeInsight/template/Angular2TemplateScopesProvider.kt) |
### com.thoughtworks.gauge
[`com.thoughtworks.gauge`](%gh-ij-plugins%/gauge/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.thoughtworks.gauge.moduleImporter"/></include> | [`GaugeModuleImporter`](%gh-ij-plugins%/gauge/src/com/thoughtworks/gauge/wizard/GaugeModuleImporter.java) |
### gherkin
[`gherkin`](%gh-ij-plugins%/cucumber/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.cucumber.injector.injectorExtensionPoint"/></include> | [`GherkinInjectorExtensionPoint`](%gh-ij-plugins%/cucumber/src/org/jetbrains/plugins/cucumber/injector/GherkinInjectorExtensionPoint.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.cucumber.steps.cucumberJvmExtensionPoint"/></include> | [`CucumberJvmExtensionPoint`](%gh-ij-plugins%/cucumber/src/org/jetbrains/plugins/cucumber/CucumberJvmExtensionPoint.java) |
### idea.plugin.protoeditor
[`idea.plugin.protoeditor`](%gh-ij-plugins%/protobuf/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.protobuf.codeImplementationSearcher"/></include> | [`PbCodeImplementationSearcher`](%gh-ij-plugins%/protobuf/protoeditor-core/src/com/intellij/protobuf/ide/gutter/PbGeneratedCodeConverterProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.protobuf.fileResolveProvider"/></include> ![Project-Level][project-level] | [`FileResolveProvider`](%gh-ij-plugins%/protobuf/protoeditor-core/src/com/intellij/protobuf/lang/resolve/FileResolveProvider.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.protobuf.generatedCodeConverterProvider"/></include> | [`PbGeneratedCodeConverterProvider`](%gh-ij-plugins%/protobuf/protoeditor-core/src/com/intellij/protobuf/ide/gutter/PbGeneratedCodeConverterProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.protobuf.nameGeneratorContributor"/></include> | [`NameGeneratorContributor`](%gh-ij-plugins%/protobuf/protoeditor-core/src/com/intellij/protobuf/lang/names/NameGeneratorContributor.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.protobuf.projectSettingsConfigurator"/></include> ![Project-Level][project-level] | [`ProjectSettingsConfigurator`](%gh-ij-plugins%/protobuf/protoeditor-core/src/com/intellij/protobuf/ide/settings/ProjectSettingsConfigurator.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.protobuf.schemaProvider"/></include> ![Project-Level][project-level] | [`SchemaProvider`](%gh-ij-plugins%/protobuf/protoeditor-core/src/com/intellij/protobuf/lang/resolve/SchemaProvider.java) |
### intellij.prettierJS
[`intellij.prettierJS`](%gh-ij-plugins%/prettierJS/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.prettierjs.codeStyleInstaller"/></include> | [`PrettierCodeStyleInstaller`](%gh-ij-plugins%/prettierJS/src/com/intellij/prettierjs/codeStyle/PrettierCodeStyleInstaller.java) |
### name.kropp.intellij.makefile
[`name.kropp.intellij.makefile`](%gh-ij-plugins%/makefile/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.makefile.toolWindowStripeController"/></include> | [`MakefileToolWindowStripeController`](%gh-ij-plugins%/makefile/src/com/jetbrains/lang/makefile/toolWindow/MakefileToolWindowStripeController.kt) |
### org.jetbrains.plugins.vue
[`org.jetbrains.plugins.vue`](%gh-ij-plugins%/vuejs/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.vuejs.containerInfoProvider"/></include> | [`VueContainerInfoProvider`](%gh-ij-plugins%/vuejs/src/org/jetbrains/vuejs/model/source/VueContainerInfoProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.vuejs.templateScopesProvider"/></include> | [`VueTemplateScopesProvider`](%gh-ij-plugins%/vuejs/src/org/jetbrains/vuejs/codeInsight/template/VueTemplateScopesProvider.kt) |
### tslint
[`tslint`](%gh-ij-plugins%/tslint/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.tslint.configDetector"/></include> | [`TsLintConfigDetector`](%gh-ij-plugins%/tslint/src/com/intellij/lang/javascript/linter/tslint/config/TsLintConfigDetector.java) |
## Dart Plugin
### Dart Plugin Listeners
| Topic | Listener |
|-------|----------|
| [`DartAnalysisServerMessages#DART_ANALYSIS_TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.lang.dart.analyzer.DartAnalysisServerMessages.DartAnalysisNotifier) | [`DartAnalysisNotifier`](%gh-ij-plugins%/Dart/src/com/jetbrains/lang/dart/analyzer/DartAnalysisServerMessages.java) |
### Dart
[`Dart`](%gh-ij-plugins%/Dart/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="Dart.completionExtension"/></include> | [`DartCompletionExtension`](%gh-ij-plugins%/Dart/src/com/jetbrains/lang/dart/ide/completion/DartCompletionExtension.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="Dart.completionTimerExtension"/></include> | [`DartCompletionTimerExtension`](%gh-ij-plugins%/Dart/src/com/jetbrains/lang/dart/ide/completion/DartCompletionTimerExtension.java) |
## Devicetree Plugin
### Devicetree Plugin Listeners
| Topic | Listener |
|-------|----------|
| [`ChangeListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.dts.settings.DtsSettings.ChangeListener) ![Project-Level][project-level] | [`ChangeListener`](%gh-ij-plugins%/dts/src/com/intellij/dts/settings/DtsSettings.kt) |
### com.intellij.dts
[`com.intellij.dts`](%gh-ij-plugins%/dts/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.clion.dtsUtil"/></include> | [`DtsCLionUtil`](%gh-ij-plugins%/dts/src/com/intellij/dts/clion/DtsCLionUtil.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.dts.settings.disabler"/></include> | [`DtsSettingsDisabler`](%gh-ij-plugins%/dts/src/com/intellij/dts/settings/DtsSettingsDisabler.kt) |
### dts-withCLion.xml
[`dts-withCLion.xml`](%gh-ij-plugins%/dts/resources/META-INF/dts-withCLion.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.dts.cmake.configurationDataProvider"/></include> | [`DtsCMakeModelConfigurationDataProvider`](%gh-ij-plugins%/dts/src/com/intellij/dts/clion/impl/DtsCMakeModelConfigurationDataProvider.kt) |
## Flex Plugin
### Flex Plugin Listeners
| Topic | Listener |
|-------|----------|
| [`FlexBuildConfigurationChangeListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.lang.javascript.flex.projectStructure.model.impl.FlexBuildConfigurationChangeListener) | [`FlexBuildConfigurationChangeListener`](%gh-ij-plugins%/flex/src/com/intellij/lang/javascript/flex/projectStructure/model/impl/FlexBuildConfigurationChangeListener.java) |
### com.intellij.flex
[`com.intellij.flex`](%gh-ij-plugins%/flex/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.flex.breakpoint.type.provider"/></include> ![Non-Dynamic][non-dynamic] | [`BreakpointTypeProvider`](%gh-ij-plugins%/flex/src/com/intellij/lang/javascript/flex/debug/FlexBreakpointsHandler.java) |
## OSGi Plugin
### OSGi Plugin Listeners
| Topic | Listener |
|-------|----------|
| [`FrameworkDefinitionListener#TOPIC`](https://jb.gg/ipe/listeners?topics=org.osmorc.settings.FrameworkDefinitionListener) | [`FrameworkDefinitionListener`](%gh-ij-plugins%/osmorc/src/org/osmorc/settings/FrameworkDefinitionListener.java) |
### Osmorc
[`Osmorc`](%gh-ij-plugins%/osmorc/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="Osmorc.frameworkIntegrator"/></include> | [`FrameworkIntegrator`](%gh-ij-plugins%/osmorc/src/org/osmorc/frameworkintegration/FrameworkIntegrator.java) |
## Perforce Helix Core
### Perforce Helix Core Listeners
| Topic | Listener |
|-------|----------|
| [`PerforceSettings#OFFLINE_MODE_EXITED`](https://jb.gg/ipe/listeners?topics=java.lang.Runnable) | `Runnable` |
| [`P4ConfigListener#TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.idea.perforce.perforce.connections.P4ConfigListener) ![Internal][internal] ![Project-Level][project-level] | [`P4ConfigListener`](%gh-ij-plugins%/PerforceIntegration/src/org/jetbrains/idea/perforce/perforce/connections/PerforceExternalConfigTracker.kt) |
| [`P4EnvHelper#P4_ENV_CHANGED`](https://jb.gg/ipe/listeners?topics=org.jetbrains.idea.perforce.perforce.connections.P4EnvHelper.P4EnvListener) ![Project-Level][project-level] | [`P4EnvListener`](%gh-ij-plugins%/PerforceIntegration/src/org/jetbrains/idea/perforce/perforce/connections/P4EnvHelper.java) |
### PerforceDirectPlugin
[`PerforceDirectPlugin`](%gh-ij-plugins%/PerforceIntegration/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="Perforce.P4ConnectionParametersProvider"/></include> ![Experimental][experimental] | [`P4ConnectionParametersProvider`](%gh-ij-plugins%/PerforceIntegration/src/org/jetbrains/idea/perforce/perforce/connections/P4ConnectionParametersProvider.kt) |
## PlatformIO for CLion Plugin
### PlatformIO for CLion Plugin Listeners
| Topic | Listener |
|-------|----------|
| [`PlatformioServiceKt#PLATFORMIO_UPDATES_TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.embedded.platformio.PlatformioUpdatesNotifier) ![Project-Level][project-level] | [`PlatformioUpdatesNotifier`](%gh-ij-plugins%/platformio/src/com/jetbrains/cidr/cpp/embedded/platformio/PlatformioService.kt) |
| [`PlatformioSettingsListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.embedded.platformio.project.PlatformioSettingsListener) | [`PlatformioSettingsListener`](%gh-ij-plugins%/platformio/src/com/jetbrains/cidr/cpp/embedded/platformio/project/PlatformioSettings.kt) |
## Qodana Plugin
### intellij.qodana.coverage.xml
[`intellij.qodana.coverage.xml`](%gh-ij-plugins%/qodana/coverage/resources/intellij.qodana.coverage.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.qodana.coverage.cloudArtifactsProcessor"/></include> | [`CoverageCloudArtifactsProcessor`](%gh-ij-plugins%/qodana/coverage/src/org/jetbrains/qodana/staticAnalysis/inspections/coverage/CoverageCloudArtifactsProcessor.kt) |
### org.intellij.qodana
[`org.intellij.qodana`](%gh-ij-plugins%/qodana/core/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.azureCiConfigUpdateHandler"/></include> | [`AzureCIConfigHandler`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/ci/AzureCIConfigHandler.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.bitbucketCiConfigUpdateHandler"/></include> | [`BitbucketCIConfigHandler`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/ci/BitbucketCIConfigHandler.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.circleCiConfigUpdateHandler"/></include> | [`CircleCIConfigHandler`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/ci/CircleCIConfigHandler.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.compiledInspectionKtsPostProcessorFactory"/></include> | [`CompiledInspectionKtsPostProcessorFactory`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/inspectionKts/InspectionKtsFileStatus.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.configUpdateHandler"/></include> | [`ConfigUpdateHandler`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/ConfigUpdateHandler.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.contextMarginProvider"/></include> | [`ContextMarginProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/sarif/ContextMarginProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.customPluginsForKtsClasspathProvider"/></include> | [`CustomPluginsForKtsClasspathProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/inspectionKts/CustomPluginsForKtsClasspathProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.cyclomaticComplexityFileVisitor"/></include> | [`CyclomaticComplexityMetricFileVisitor`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/inspections/metrics/inspections/cyclomaticComplexity/CyclomaticComplexityMetricFileVisitor.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.defaultQodanaYamlItemProvider"/></include> | [`QodanaYamlItemProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/settings/QodanaYamlItem.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.dynamicInspectionsInitializer"/></include> | [`DynamicInspectionInitializer`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/inspectionKts/DynamicInspectionInitializer.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.externalToolsConfigurationProvider"/></include> | [`ExternalToolsConfigurationProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/inspections/runner/externalTools/ExternalToolsConfigurationProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.externalToolsProvider"/></include> | [`ExternalToolsProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/inspections/runner/externalTools/ExternalToolsProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.githubCiConfigHandler"/></include> | [`GitHubCIConfigHandler`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/ci/GitHubCIConfigHandler.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.gitlabCiConfigHandler"/></include> | [`GitLabCIConfigHandler`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/ci/GitLabCIConfigHandler.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.globalOutputConsumer"/></include> ![Internal][internal] | [`GlobalOutputConsumer`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/inspections/runner/globalOutput/GlobalOutputConsumer.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.highlightingListener"/></include> | [`QodanaHighlightingListener`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/highlight/QodanaHighlightingListener.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.inspectionKtsDefaultImportProvider"/></include> | [`InspectionKtsDefaultImportProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/inspectionKts/imports.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.inspectionKtsExampleProvider"/></include> | [`Provider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/inspectionKts/examples/InspectionKtsExample.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.inspectionKtsTemplateProvider"/></include> | [`Provider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/inspectionKts/templates/InspectionKtsTemplate.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.inspectionProfileProvider"/></include> | [`QodanaInspectionProfileProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/profile/QodanaInspectionProfileProvider.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.jenkinsConfigHandler"/></include> | [`JenkinsConfigHandler`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/ci/JenkinsConfigHandler.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.metricTable"/></include> | [`MetricTable`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/inspections/metrics/database/tables/MetricTable.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.metricsAggregator"/></include> | [`MetricAggregator`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/inspections/metrics/aggregators/MetricAggregator.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.problemsViewModuleSupport"/></include> | [`QodanaGroupByModuleSupport`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/ui/problemsView/QodanaGroupByModuleSupport.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.projectDescriber"/></include> | [`QodanaProjectDescriber`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/projectDescription/QodanaProjectDescriber.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.psiViewerSupport"/></include> | [`PsiViewerSupport`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/inspectionKts/ui/psi-viewer.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.qodanaHighlightInfoComparator"/></include> | [`QodanaHighlightInfoComparator`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/QodanaHighlightInfoComparator.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.qodanaHighlightInfoTypeProvider"/></include> | [`QodanaHighlightInfoTypeProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/QodanaHighlightInfoTypeProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.qodanaHighlightingSupportInfoProvider"/></include> | [`QodanaHighlightingSupportInfoProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/QodanaHighlightingSupportInfoProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.qodanaScriptFactory"/></include> ![Internal][internal] | [`QodanaScriptFactory`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/script/QodanaScriptFactory.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.quickFixesStrategyProvider"/></include> | [`QuickFixesStrategyProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/sarif/QuickFixesStrategyProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.reportMetadataArtifact"/></include> | [`ReportMetadataArtifactProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/report/LoadedReport.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.repositoryInfoProvider"/></include> | [`RepositoryInfoProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/RepositoryInfoProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.repositoryRevisionProvider"/></include> | [`RepositoryRevisionProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/RepositoryRevisionProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.sarifReportContributor"/></include> | [`SarifReportContributor`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/sarif/SarifReportContributor.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.setupCIProviderFactory"/></include> | [`SetupCIProviderFactory`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/ui/ci/SetupCIProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.vcsIgnoredFilesProvider"/></include> | [`VcsIgnoredFilesProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/VcsIgnoredFilesProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.vcsRevisionProvider"/></include> | [`VcsRevisionProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/vcs/VcsRevisionProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.workflowExtension"/></include> ![Internal][internal] | [`QodanaWorkflowExtension`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/workflow/QodanaWorkflowExtension.kt) |
## Serial Port Monitor Plugin
### Serial Port Monitor Plugin Listeners
| Topic | Listener |
|-------|----------|
| [`SerialPortsListener.Companion#SERIAL_PORTS_TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.plugins.serialmonitor.service.SerialPortsListener) | [`SerialPortsListener`](%gh-ij-plugins%/serial-monitor/src/main/java/com/intellij/plugins/serialmonitor/service/SerialPortsListener.kt) |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
[obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square
[experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square
[internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square
[project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square
[non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square
[dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square
</snippet>

View File

@ -0,0 +1,156 @@
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- GENERATED FILE, DO NOT EDIT -->
<!-- This file is generated with the SDK Docs Authoring Tools plugin ('Generate SDK Docs EP Lists' action) -->
<!-- Revision: b815cfdcaa594a8842ccf89e6ac2bf7615401920 -->
<!--
EP List Directories:
- /phpstorm
-->
<snippet id="content">
63 Extension Points and 11 Listeners
<include from="snippets.topic" element-id="ep_list_legend"/>
## PhpStorm
### PhpStorm Listeners
| Topic | Listener |
|-------|----------|
| [`ComposerInstalledPackagesService#PACKAGE_MANAGER_TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.composer.actions.update.ComposerInstalledPackagesService.ComposerUpdateListener) ![Project-Level][project-level] | `ComposerUpdateListener` |
| [`RepositoriesComposerConfig#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.composer.json.cache.ComposerRepositoriesChangedListener) | `ComposerRepositoriesChangedListener` |
| [`StateChangedListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.config.PhpProjectSharedConfiguration.StateChangedListener) | `StateChangedListener` |
| [`StateChangedListener#LANGUAGE_LEVEL_CHANGED_TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.config.PhpProjectSharedConfiguration.StateChangedListener) | `StateChangedListener` |
| [`PhpProjectWorkspaceConfiguration#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.config.PhpProjectWorkspaceConfigurationListener) | `PhpProjectWorkspaceConfigurationListener` |
| [`DefaultStubsPathListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.config.PhpRuntimeConfiguration.DefaultStubsPathListener) | `DefaultStubsPathListener` |
| [`PhpInterpreterConflictResolveListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.config.interpreters.PhpInterpretersManagerImpl.PhpInterpreterConflictResolveListener) | `PhpInterpreterConflictResolveListener` |
| [`StateChangedListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.debug.listener.PhpDebugExternalConnectionsAccepter.StateChangedListener) | `StateChangedListener` |
| [`RectorChangesListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.rector.RectorChangesListener) | `RectorChangesListener` |
| [`PhpRemoteInterpreterChangedListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.remote.interpreter.ui.PhpRemoteInterpreterConfigurationForm.PhpRemoteInterpreterChangedListener) | `PhpRemoteInterpreterChangedListener` |
| [`CustomExpectationNotifier.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.pestphp.pest.features.customExpectations.CustomExpectationNotifier) ![Project-Level][project-level] | `CustomExpectationNotifier` |
### com.intellij.phing
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.phing.phpFileDescriptionProvider"/></include> ![Non-Dynamic][non-dynamic] | `PhingPhpFileDescriptionProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.phing.propertyFilesManager"/></include> ![Non-Dynamic][non-dynamic] | `PropertyFilesManager` |
### com.intellij.php.psalm
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.tools.quality.Psalm.PsalmConfigurationProvider"/></include> ![Non-Dynamic][non-dynamic] | `PsalmConfigurationProvider` |
### com.intellij.php.tools.quality.phpstan
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.tools.quality.PhpStan.PhpStanConfigurationProvider"/></include> ![Non-Dynamic][non-dynamic] | `PhpStanConfigurationProvider` |
### com.jetbrains.php
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.php.debug.template.configurable"/></include> ![Internal][internal] ![Project-Level][project-level] | `PhpTemplateDebugConfigurable` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.php.debug.templateLanguage"/></include> ![Internal][internal] | `PhpTemplateLanguagePathMapper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.php.typeProvider2"/></include> ![Deprecated][deprecated] | `PhpTypeProvider2` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.phpDeadCode"/></include> | [`EntryPoint`](%gh-ic%/platform/analysis-api/src/com/intellij/codeInspection/reference/EntryPoint.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.phpRunConfigurationExtension"/></include> | `PhpRunConfigurationExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.arrayShapesProvider"/></include> | `PhpArrayShapesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.baseLexerProvider"/></include> ![Internal][internal] | `PhpBaseLexerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.classAliasProvider"/></include> | `PhpClassAliasProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.composer.execProvider"/></include> | `ComposerExecutionProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.composerConfigClient"/></include> ![Internal][internal] | `ComposerConfigClient` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.config.customFormatFunctionsProvider"/></include> | `PhpCustomFormatFunctionsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.config.interpreterFormProvider"/></include> | `PhpInterpreterFormProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.config.interpreters.PhpInterpretersStateListener"/></include> | `PhpInterpretersStateListener` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.coreMethodProvider"/></include> ![Internal][internal] | `PhpCoreHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.customFunctionIndex"/></include> | `PhpCustomFunctionIndex` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.customFunctionPredicate"/></include> ![Internal][internal] | `PhpCustomFunctionPredicateIndex` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.customTemplatesNamesProvider"/></include> ![Experimental][experimental] | `PhpCustomTemplatesNamesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.debug.mapping.localPathFixer"/></include> | `PhpLocalPathFixer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.deprecationFixesProvider"/></include> | `PhpDeprecationQuickFixesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.deprecationProvider"/></include> | `PhpDeprecationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.dfaStateFromAssertionProvider"/></include> ![Internal][internal] | `PhpDfaStateFromAssertionProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.docPrefixProvider"/></include> ![Internal][internal] | `PhpDocPrefixProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.docTagValuesStubProvider"/></include> | `PhpCustomDocTagValuesStubProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.expressionClassNamesProvider"/></include> ![Internal][internal] | `PhpExpressionClassNamesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.externalUsagesSearcher"/></include> | `PhpExternalUsagesSearcher` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.frameworkProjectConfigurableProvider"/></include> | `PhpFrameworkConfigurableProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.frameworkUsageProvider"/></include> | `PhpFrameworkUsageProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.includedPathsContributor"/></include> | `PhpIncludedPathsContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.injectionExternalFragmentSubstProvider"/></include> ![Project-Level][project-level] | `PhpInjectionExternalFragmentSubstProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.keyTypeProvider"/></include> ![Internal][internal] | `PhpKeyTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.libraryRoot"/></include> ![Internal][internal] | `PhpLibraryRootProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.magicMethodProvider"/></include> ![Internal][internal] | `PhpMagicHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.metaSignatureResolver"/></include> ![Internal][internal] | `PhpMetaSignatureResolver` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.metaTableProvider"/></include> ![Internal][internal] | `PhpMetaTableProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.noReturnProvider"/></include> | `PhpNoReturnProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.openSettingsProvider"/></include> | `Settings` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.phpunit.phpUnitSettingsLoader"/></include> ![Internal][internal] | `PhpUnitSettingsLoader` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.predefinedVariableProvider"/></include> | `PhpPredefinedVariableProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.referenceResolver2"/></include> | `PhpMultipleDeclarationFilter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.referenceScopeExtension"/></include> ![Experimental][experimental] | `PhpReferenceScopeExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.relatedToPhpFilesContributor"/></include> | `RelatedToPhpFilesContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.remote.remoteInterpreterManager"/></include> | `PhpRemoteInterpreterManager` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.templateLanguageHighlightingExtension"/></include> ![Internal][internal] | `TemplateLanguageBackgroundColorProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.testFramework.phpTestOldConfigHolder"/></include> ![Deprecated][deprecated] ![Internal][internal] | `PhpTestFrameworkOldConfigHolder` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.testFrameworkType"/></include> | `PhpTestFrameworkType` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.tools.quality.laravelPint.laravelPintConfigurationProvider"/></include> | `LaravelPintConfigurationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.tools.quality.messDetector.messDetectorConfigurationProvider"/></include> | `MessDetectorConfigurationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.tools.quality.phpCSFixer.phpCSFixerConfigurationProvider"/></include> | `PhpCSFixerConfigurationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.tools.quality.phpcs.phpCSConfigurationProvider"/></include> | `PhpCSConfigurationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.tools.quality.type"/></include> | `QualityToolType` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.typeProvider3"/></include> ![Deprecated][deprecated] | `PhpTypeProvider3` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.typeProvider4"/></include> | `PhpTypeProvider4` |
### com.jetbrains.php.behat
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.behat.gherkinContextProvider"/></include> | `ContextInterfaceProvider` |
### com.jetbrains.php.blade
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.blade.bladeDirectiveContributor"/></include> ![Experimental][experimental] | `BladeDirectiveContributor` |
### com.jetbrains.php.framework
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.framework.descriptionProvider"/></include> ![Internal][internal] | `FrameworkDescriptionProvider` |
### intellij.php.frontback.impl.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.php.docTagParserExtension"/></include> ![Internal][internal] | `PhpDocTagParser` |
### phpstorm-remote-interpreter-plugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.remote.interpreter.ui.customConfigProvider"/></include> | `PhpProjectConfigComponentProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.remote.phpHelperScriptProvider"/></include> | `PhpHelperScriptProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.remote.remoteProcessManager"/></include> | `PhpRemoteProcessManager` |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
[obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square
[experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square
[internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square
[project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square
[non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square
[dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square
</snippet>

View File

@ -0,0 +1,276 @@
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- GENERATED FILE, DO NOT EDIT -->
<!-- This file is generated with the SDK Docs Authoring Tools plugin ('Generate SDK Docs EP Lists' action) -->
<!-- Revision: b815cfdcaa594a8842ccf89e6ac2bf7615401920 -->
<!--
EP List Directories:
- /rider
-->
<snippet id="content">
145 Extension Points and 9 Listeners
<include from="snippets.topic" element-id="ep_list_legend"/>
## Rider
### Rider Listeners
| Topic | Listener |
|-------|----------|
| [`RiderStyleCopConfigurable#STYLE_COP_CONFIGURABLE_TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.application.options.editor.EditorOptionsListener) | [`EditorOptionsListener`](%gh-ic%/platform/platform-impl/src/com/intellij/application/options/editor/EditorOptionsListener.java) |
| [`SSHCredentialsInClipboardNotifier.Companion#SSH_CREDENTIALS_IN_CLIPBOARD_TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.rider.debugger.attach.remoting.SSHCredentialsInClipboardNotifier) | `SSHCredentialsInClipboardNotifier` |
| [`DotnetDebuggerSymbolsLoadedListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.rider.debugger.modulesView.actions.DotnetDebuggerSymbolsLoadedListener) | `DotnetDebuggerSymbolsLoadedListener` |
| [`FrontendTypedHandlerManager#BEFORE_TYPING_SENT`](https://jb.gg/ipe/listeners?topics=com.jetbrains.rider.editorActions.IFrontendTypingListener) | `IFrontendTypingListener` |
| [`RiderDockerDeploymentListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.rider.plugins.appender.docker.deployment.RiderDockerDeploymentListener) | `RiderDockerDeploymentListener` |
| [`AutoAttachDebuggerListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.rider.run.AutoAttachDebuggerListener) | `AutoAttachDebuggerListener` |
| [`PublishConfigurationValidationListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.rider.run.configurations.publishing.PublishConfigurationValidationListener) | `PublishConfigurationValidationListener` |
| [`MSBuildEvaluationListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.rider.run.environment.MSBuildEvaluationListener) | `MSBuildEvaluationListener` |
| [`RiderGlobalBackendProgressListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.rider.services.RiderGlobalProgressHost.RiderGlobalBackendProgressListener) | `RiderGlobalBackendProgressListener` |
### com.intellij.rider.frontend.customization
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rdclient.rider.completion.helper"/></include> | `CompletionHelper` |
### com.jetbrains.dotTrace.dotMemory
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.dotTrace.dotMemory.runtime.detector"/></include> | `DotTraceRuntimeDetector` |
### com.jetbrains.rider-cpp
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.rider-cpp.run.configurations.cpp"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `CppConfigurationParametersExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.rider-cpp.run.configurations.cpp.launch.profile"/></include> ![Non-Dynamic][non-dynamic] | `CppProjectLaunchProfile` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.rider-cpp.run.configurations.cpp.platformInfoProvider"/></include> ![Non-Dynamic][non-dynamic] | `CppPlatformInfoProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.rider-cpp.run.configurations.cpp.platformPluginPromotion"/></include> ![Non-Dynamic][non-dynamic] ![Internal][internal] | `CppPlatformPluginPromotion` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="rider.cpp.debugProcessExtension"/></include> | `RiderCppDebugProcessExtension` |
### com.jetbrains.rider.razor
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.blazorDialectSubstitutor"/></include> ![Non-Dynamic][non-dynamic] | `BlazorHtmlDialectSubstitutor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.webTypingAssistClassifier"/></include> | `WebTypingAssistClassifier` |
### DotNetPluginEP.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.backend.actions.support"/></include> | `RiderActionSupportPolicy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.backend.auto.import.support"/></include> | `RiderAutoImportSupportPolicy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.backend.autoPopup.support"/></include> | `RiderAutoPopupSupportPolicy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.backend.markup.adapterFactory"/></include> ![Non-Dynamic][non-dynamic] | `FrontendMarkupAdapterFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.backend.typedHandler"/></include> | `FrontendTypedHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.completion.completionSessionStrategy"/></include> | `CompletionSessionStrategy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.frontend.completion.helper"/></include> | `ICompletionHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.lang.altEnter"/></include> | `BulbMenuModelFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.lang.altEnter.popupModelDelegate"/></include> | `PopupModelDelegate` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.navbar.members.support"/></include> | `RiderNavBarMembersSupport` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.projectModelViewUpdater"/></include> ![Project-Level][project-level] | `ProjectModelViewUpdater` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rdclient.actionsDataContextProvider"/></include> ![Internal][internal] | `FrontendActionsDataContextProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rdclient.preemptiveCompletionSuppressor"/></include> | `PreemptiveCompletionSuppressor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rdclient.typingPolicy"/></include> | `CustomTypingSessionPolicy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.action.fallback.strategy"/></include> | `RiderAsyncBackendDelegatingActionFallbackStrategy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.additionalQuickDocProvider"/></include> | `AdditionalQuickDocProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.altEnter.layouter"/></include> | `RiderAltEnterLayouter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.backendCrashAnalyser"/></include> | `BackendCrashAnalyzer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.backendLogXmlPathProvider"/></include> | `RiderCustomBackendLogXmlPathProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.codeStyleContentConverter"/></include> | `RiderCodeStyleContentPageConverter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.credentials.provider"/></include> | `ICredentialsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.diagnostics.specialPathsProvider"/></include> | `SpecialPathsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.documentBehaviour"/></include> | `RiderDocumentBehaviour` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.editors.customBackendLanguageSupport"/></include> | `RiderCustomBackendLanguageSupport` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.extraSettingsSync"/></include> | `ExtraSettingsSync` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.fileBreadcrumbExtensions"/></include> | `CustomFileBreadcrumbExtensions` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.grave.filter"/></include> ![Experimental][experimental] | `RiderHighlightingGraveFilter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.ideaInspectionBackendSuppressionSupport"/></include> | `IdeaInspectionBackendSuppressionSupport` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.namingPageProvider"/></include> | `NamingPageProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.protocol.hostEnvProvider"/></include> | `RiderBackendEnvProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.riderApplicationPreloadListener"/></include> | `RiderApplicationPreloadListener` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.smartTabsBackendSynchronizer"/></include> ![Non-Dynamic][non-dynamic] | `RiderSmartTabsBackendSynchronizer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.startupListener"/></include> ![Internal][internal] | `RiderInitialStartupListener` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.selfProfilingPaths.customizer"/></include> | `DotnetSelfProfilerPathsCustomizer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.solutionLoadNotification"/></include> ![Project-Level][project-level] | `SolutionLoadNotification` |
### DotNetProjectView.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.projectModelIconProvider"/></include> | `ProjectModelIconProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.workspaceCountableProjectsPolicy"/></include> | `CountableProjectsPolicy` |
### intellij.rider.cpp.debugger
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.cpp.debuggerSettings"/></include> ![Non-Dynamic][non-dynamic] | `CppDebuggerSettings` |
### intellij.rider.plugins.appender.database.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.database.connectionStringRetriever"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `DatabaseConnectionUrlRetriever` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.database.connectionStringToJdbcUrlMapper"/></include> ![Project-Level][project-level] | `ConnectionStringToJdbcUrlConverter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.database.connectionStringsFactory"/></include> ![Project-Level][project-level] | `ConnectionStringsFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.database.connectionStringsFinder"/></include> ![Project-Level][project-level] | `ConnectionStringsFinder` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.database.dotnetDataProvider"/></include> ![Project-Level][project-level] | `DotnetDataProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.database.jdbcUrlToConnectionStringConverter"/></include> ![Project-Level][project-level] | `JdbcUrlToConnectionStringConverter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.database.schemaCompareDataModelCreatedListener"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `SchemaCompareDataModelCreatedListener` |
### intellij.rider.plugins.appender.docker.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.dockerDebugProvider"/></include> ![Non-Dynamic][non-dynamic] ![Internal][internal] | `RiderDockerDebugProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.dockerDeploymentTransformer"/></include> ![Non-Dynamic][non-dynamic] ![Internal][internal] | `RiderDockerDeploymentTransformer` |
### intellij.rider.plugins.appender.javascript.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.packageJson.configuration.handler"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RiderPackageJsonConfiguratorHandler` |
### intellij.rider.rdclient.languages.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.rdclient.breakingWorkflowChangeInterceptor"/></include> ![Non-Dynamic][non-dynamic] ![Experimental][experimental] ![Internal][internal] | `RiderBreakingWorkflowChangeInterceptor` |
### org.jetbrains.plugins.clion.radler
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.radler.externalSymbolsProvider"/></include> | `RadExternalSymbolsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.refactoringPageProvider"/></include> ![Non-Dynamic][non-dynamic] | `RefactoringPageProvider` |
### RiderCwmCoreEP.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.client.typedHandler"/></include> | `RiderClientLookupTypedHandler` |
### RiderDebugger.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.debugger.evaluation.advice"/></include> | `DebugEvalAdviceProvider` |
### RiderExtensionPoints.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.fileSystemExplorerCustomization"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `FileSystemExplorerCustomization` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.moveProviderExtension"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `MoveProviderExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.nestingRulesLanguageExtensions"/></include> ![Non-Dynamic][non-dynamic] | `RiderNestingRulesLanguageExtensions` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.nugetCredentialProvider"/></include> ![Non-Dynamic][non-dynamic] | `NuGetCredentialProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.openDirectoryExtensions"/></include> ![Non-Dynamic][non-dynamic] | `OpenDirectoryExtensions` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.projectModelViewExtensions"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `ProjectModelViewExtensions` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.projectTemplateCustomizer"/></include> ![Non-Dynamic][non-dynamic] | `ProjectTemplateCustomizer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.projectTemplateDialogProvider"/></include> ![Non-Dynamic][non-dynamic] | `ProjectTemplateDialogProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.projectTemplateProviderNew"/></include> ![Non-Dynamic][non-dynamic] | `ProjectTemplateProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.ProjectTypesProvider"/></include> ![Non-Dynamic][non-dynamic] | `RiderProjectTypesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.SolutionFileTypesProvider"/></include> ![Non-Dynamic][non-dynamic] | `SolutionFileTypesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.action.technical.support.info.provider"/></include> ![Non-Dynamic][non-dynamic] | `RiderTechnicalSupportInfoProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.breakpoint.customPanelProvider"/></include> ![Non-Dynamic][non-dynamic] | `IDotNetLineBreakpointCustomPanelsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.breakpoint.customPopupActionsProvider"/></include> ![Non-Dynamic][non-dynamic] | `IDotNetLineBreakpointPopupActionsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.build.riderBuildConsoleDecorator"/></include> ![Project-Level][project-level] | `RiderBuildConsoleDecorator` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.buildButtonModeProvider"/></include> | `BuildButtonModeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.codeLens.vcsDeclarationRangesProvider"/></include> ![Non-Dynamic][non-dynamic] | `VcsDeclarationRangesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.completion.csharpIdentifierPartHelper"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `CSharpIdentifierPartHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.completion.preselectionStrategy"/></include> ![Non-Dynamic][non-dynamic] | `RiderFrontendLanguagesPreselectionStrategy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.configurationExecutorExtension"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RiderConfigurationExecutorExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.configurationLaunchSettingsExtension"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RiderConfigurationLaunchSettingsExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.consoleFilter"/></include> | `RiderConsoleFilterExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.contributedLanguageElementNameCrawler"/></include> | `RiderContributedLanguageElementNameCrawler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.debug.breakpoint.handler.factory"/></include> ![Non-Dynamic][non-dynamic] | `IDotNetSupportedBreakpointHandlerFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.debugger.editAndContinue.dotNetEncInfoAutodetect"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `DotNetEncInfoAutodetect` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.debugger.value.evaluator.factory"/></include> ![Non-Dynamic][non-dynamic] | `RiderCustomComponentEvaluatorFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.debugger.value.presenter"/></include> ![Non-Dynamic][non-dynamic] | `RiderDebuggerValuePresenter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.debuggerSupportPolicy"/></include> ![Non-Dynamic][non-dynamic] | `RiderDebuggerSupportPolicy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.editSourceSuppressor"/></include> ![Non-Dynamic][non-dynamic] | `RiderEditSourceSuppressor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.extendedCodeStructure"/></include> ![Non-Dynamic][non-dynamic] | `RiderExtendedFileStructure` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.externalDirectoryProvider"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `ExternalDirectoryProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.fileTemplating.postCreateAction"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RiderNewFileFromTemplateExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.filesIndexingRuleProvider"/></include> ![Non-Dynamic][non-dynamic] | `RiderFilesIndexingRuleProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.findPopupProjectScopeProvider"/></include> | `FindPopupProjectScopeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.godotDetector"/></include> | `GodotDetector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.gotoCustomizer"/></include> | `GotoCustomizer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.guidPresenter"/></include> ![Project-Level][project-level] | `GuidGeneratorPresenter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.newFileListener"/></include> ![Project-Level][project-level] | `RiderNewFileListener` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.newRunConfigurationTreeGroupingProvider"/></include> ![Non-Dynamic][non-dynamic] | `RiderNewRunConfigurationTreeGroupingProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.patchCommandLine"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `PatchCommandLineExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.pencils.filters.provider"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `PencilsFiltersProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.pencils.inspectionToolGroup"/></include> ![Non-Dynamic][non-dynamic] | `n/a` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.pencils.pencilsFilterGroup"/></include> ![Non-Dynamic][non-dynamic] | `n/a` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.problemsView.actionsHandler"/></include> ![Non-Dynamic][non-dynamic] | `RiderProblemsViewActionsHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.problemsView.problems.notifier"/></include> ![Non-Dynamic][non-dynamic] | `ProblemsViewNotifier` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.problemsView.problems.processor"/></include> | `RiderProblemsDiffProcessor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.publish.publishSettingsProvider"/></include> ![Project-Level][project-level] | `IPublishRuntimeCoreSettingsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.publishConfigurationProvider"/></include> ![Non-Dynamic][non-dynamic] | `RiderContextPublishProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.reader.mode.matcher"/></include> | `RiderCustomReaderModeMatcher` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.refactoringPageProvider"/></include> ![Non-Dynamic][non-dynamic] | `RefactoringPageProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.resolveContextWidgetProvider"/></include> ![Non-Dynamic][non-dynamic] | `RiderResolveContextWidgetProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.configurations.dotNetExe"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `DotNetExeConfigurationExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.configurations.externalRunConfigurationGenerator"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `ExternalRunConfigurationGeneratorExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.configurations.host"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RunConfigurationHostExtensions` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.configurations.host.executor"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RunConfigurationHostExecutorExtensions` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.configurations.launchSettings"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `LaunchSettingsConfigurationExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.configurations.launchSettings.command"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `LaunchSettingsCommandExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.configurations.launchSettings.generator"/></include> | `LaunchSettingsConfigGeneratorExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.configurations.multiPlatform.mac.extension"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `MacRunConfigurationExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.configurations.project"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `DotNetProjectConfigurationExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.configurations.riderCoreDumpConfigurationProvider"/></include> ![Non-Dynamic][non-dynamic] | `RiderCoreDumpConfigurationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.configurations.uwp"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `UwpConfigurationExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.dotNetProfileConsoleViewProvider"/></include> ![Non-Dynamic][non-dynamic] | `DotNetProfileConsoleViewProviderExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.runToPopupShowPolicy"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RiderRunToPopupShowPolicy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.runWidgetSuspenderExtension"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RunWidgetSuspenderExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.runtime.dotNetRuntimeAutodetect"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `DotNetRuntimeAutodetect` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.solutionConfigurationPresenter"/></include> | `SolutionConfigurationPresenter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.solutionConfigurationToolbarCustomizer"/></include> | `SolutionConfigurationToolbarCustomizer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.unitTesting.actionsProvider"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RiderUnitTestActionsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.unitTesting.sessionHandler"/></include> ![Non-Dynamic][non-dynamic] | `IRiderUnitTestDebuggerSessionsHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.unityDetector"/></include> ![Project-Level][project-level] | `UnityDetector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.web.extensions.companionDebugStarter"/></include> ![Non-Dynamic][non-dynamic] | `DotNetCompanionDebugStarter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.web.extensions.webBrowserDebugSupport"/></include> ![Non-Dynamic][non-dynamic] | `WebBrowserDebugSupport` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.writingAccessProvider"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RiderDebugWritingAccessProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.xaml.preview.editor"/></include> ![Non-Dynamic][non-dynamic] | `XamlPreviewEditorExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.solutionExplorerCustomization"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `SolutionExplorerCustomization` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.solutionExplorerRootProvider"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `SolutionExplorerRootProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.solutionManagerExtensions"/></include> ![Non-Dynamic][non-dynamic] | `SolutionManagerExtensions` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.solutionViewPsiNodeNavigator"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `SolutionViewPsiNodeNavigator` |
### RiderReformatAndCleanup.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.code.cleanup.support"/></include> | `RiderCodeCleanupSupportPolicy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.ProfileActionPrinter"/></include> ![Non-Dynamic][non-dynamic] | `ProfileActionPrinter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.cleanupAction"/></include> ![Non-Dynamic][non-dynamic] | `CleanupAction` |
### RiderSettingsSync.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.settings.machineDependentBackendSetting"/></include> ![Non-Dynamic][non-dynamic] | `n/a` |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
[obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square
[experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square
[internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square
[project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square
[non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square
[dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square
</snippet>

View File

@ -0,0 +1,163 @@
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- GENERATED FILE, DO NOT EDIT -->
<!-- This file is generated with the SDK Docs Authoring Tools plugin ('Generate SDK Docs EP Lists' action) -->
<!-- Revision: b815cfdcaa594a8842ccf89e6ac2bf7615401920 -->
<!--
EP List Directories:
- /ruby
-->
<snippet id="content">
88 Extension Points and 13 Listeners
<include from="snippets.topic" element-id="ep_list_legend"/>
## RubyMine
### RubyMine Listeners
| Topic | Listener |
|-------|----------|
| [`RbsLanguageSettingsChangedListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.lang.ruby.rbs.settings.RbsLanguageSettingsChangedListener) | `RbsLanguageSettingsChangedListener` |
| [`ChefTopics#COOKBOOK`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.chef.sdk.CookbooksListener) | `CookbooksListener` |
| [`GemManager#GEMSET_CHANGED_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.gem.GemManager.GemSetListener) | `GemSetListener` |
| [`GemManager#MODULE_GEMS_CHANGED_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.gem.GemManager.ModuleGemsListener) ![Project-Level][project-level] | `ModuleGemsListener` |
| [`GemRequirementsHolder#GEM_REQUIREMENTS_CHANGED_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.gem.module.GemRequirementsHolder.RequirementsChangedListener) ![Project-Level][project-level] | `RequirementsChangedListener` |
| [`InflectorService#INFLECTIONS_CHANGED`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.rails.InflectorService.InflectionChanged) | `InflectionChanged` |
| [`AssetsRegistrationWatcher#ASSETS_CHANGED_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.rails.codeInsight.sprockets.assetsPaths.AssetsRegistrationWatcher.AssetsListener) | `AssetsListener` |
| [`MigrationParser#MIGRATIONS_CHANGED_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.rails.database.MigrationParser.MigrationListener) ![Project-Level][project-level] | `MigrationListener` |
| [`RailsPathsChangedListener#TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.rails.facet.configuration.RailsPathsChangedListener) | `RailsPathsChangedListener` |
| [`RubyRemoteInterpreterManager#RUBY_REMOTE_SDK_TRANSFER_LISTENER_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.remote.RubyRemoteSdkTransferListener) | `RubyRemoteSdkTransferListener` |
| [`RequireSetChangedListener#TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.ruby.codeInsight.symbols.cache.RequiresIndexExtension.RequireSetChangedListener) | `RequireSetChangedListener` |
| [`RubySdkType#SDK_PATHS_INITIALIZED_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.ruby.sdk.RubySdkType.SdkPathsInitializedListener) | `SdkPathsInitializedListener` |
| [`RVMSupportUtil#RVM_GEMSET_ADDED_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.version.management.rvm.RVMSupportUtil.RVMGemsetListener) | `RVMGemsetListener` |
### intellij.ruby.coverage.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.coverage.deserializer"/></include> | `RubyCoverageDeserializationProvider` |
### intellij.ruby.frontback.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.formatter.additionalSpacingProcessor"/></include> | `RubyAdditionalSpacingProcessor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.languageLevelProvider"/></include> | `LanguageLevelProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubyBuilderFactory"/></include> | `RubyBuilderFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.templates.elements.provider"/></include> | `TemplateElementsProvider` |
### ruby-core.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.associationFactory"/></include> | `AssociationFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.attributeProvider"/></include> | `AttributeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.autoImportProvider"/></include> | `RubyAutoImportProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.callNavigationOffsetProvider"/></include> | `StructureCallNavigationOffsetProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.callTypeProvider"/></include> | `RubyCallTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.completionProvider"/></include> | `RubyCompletionProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.fileLocationProvider"/></include> | `FileLocationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.gem.module.gemInfrastructure"/></include> | `GemInfrastructure` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.gemScannerSuppressor"/></include> | `GemScannerSuppressor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.implicitGemProvider"/></include> | `ImplicitRequireGemProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.implicitRequireProvider"/></include> | `ImplicitRequireProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.includeExtendReceiverFqnProvider"/></include> | `RubyIncludeExtendReceiverFqnProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.methodMissingProvider"/></include> | `MethodMissingProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.model.psiSymbolDeclarationsSearch"/></include> | [`QueryExecutor`](%gh-ic%/platform/core-api/src/com/intellij/util/QueryExecutor.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.moduleGemDependencyProvider"/></include> | `ModuleGemDependencyProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.moduleGemProvider"/></include> | `ModuleGemProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.overriddenMethodGenerator"/></include> | `OverriddenMethodGenerator` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.paramDefProvider"/></include> | `ParamDefProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.psiElementFactory"/></include> | `PsiElementFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rails.viewFileTemplateProvider"/></include> | `RailsViewFileTemplateProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.renameHelper"/></include> | `RubyRenameHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.routesProvider"/></include> | `RubyRoutesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.coercibleExpressionTypeProvider"/></include> | `RubyCoercibleExpressionTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.expectedArgumentNilabilityProvider"/></include> | `RubyExpectedArgumentNilabilityProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.expectedArgumentTypeProvider"/></include> | `RubyExpectedArgumentTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.expectedConstantTypeProvider"/></include> | `RubyExpectedConstantTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.expectedGlobalVariableTypeProvider"/></include> | `RubyExpectedGlobalVariableTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.expectedMethodSignatureProvider"/></include> | `RubyExpectedMethodSignatureProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.expectedParameterTypeProvider"/></include> | `RubyExpectedParameterTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.expectedReturnTypeProvider"/></include> | `RubyExpectedReturnTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.expectedVariableTypeProvider"/></include> | `RubyExpectedVariableTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.findUsagesSecondaryElementsProvider"/></include> | `RubyFindUsagesSecondaryElementsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.run.runEnvironmentProvider"/></include> | `RunEnvironmentProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.run.testFrameworkConfigurator"/></include> | `TestFrameworkConfigurator` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubyElementNameAndDescriptionProvider"/></include> | `RubyElementNameAndDescriptionProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubyLocalVariablesProvider"/></include> | `RubyLocalVariablesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubyParamDefSearchTextProvider"/></include> | `RubyParamDefSearchTextProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubyParameterInfoDelegateProvider"/></include> | `RubyParameterInfoDelegateProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubyRenameProcessor"/></include> | `RenameProcessor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubySdkConfigurator"/></include> | `RubySdkConfigurator` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubySdkRefresher"/></include> | `SdkRefresher` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubySuperMethodsSearch"/></include> | [`QueryExecutor`](%gh-ic%/platform/core-api/src/com/intellij/util/QueryExecutor.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubySupportProvider"/></include> | `RubySupportProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubyTypeProvider"/></include> | `RubyTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.run.console.filter"/></include> | `RubyConsoleFilterProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.runnableScriptFilter"/></include> | `RunnableScriptFilter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.sdkConfigFactory"/></include> | `Factory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.superMethodInfoProvider"/></include> | `RubySuperMethodInfoProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.symbolMixinsProvider"/></include> | `RubySymbolMixinsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.symbolProvider"/></include> | `RubySymbolProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.symbolicTypeInferenceProvider"/></include> | `SymbolicTypeInferenceProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.templates.integration"/></include> | `TemplateIntegration` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.versionManagerHandler"/></include> | `RubyVersionManagerHandler` |
### ruby-plugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.ruby.projectStructure.sourceRootEditHandler"/></include> | `RubyModuleSourceRootEditProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.breadcrumbsCustomizer"/></include> | `RubyBreadcrumbsCustomizer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.debug.infoProvider"/></include> | `ContextInfoProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.gem.detector"/></include> | `GemDetector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.gemFacetEditorTab"/></include> | `GemFacetEditorTabFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.generatorConfigurator"/></include> | `GeneratorActionConfigurator` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.i18n.i18nProvider"/></include> | `I18nProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.inflectionsProvider"/></include> | `RubyInflectionsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rails.assetsPathsProvider"/></include> | `SprocketAssetsPathProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rails.sprocketsDirectiveContextProvider"/></include> | `SprocketsDirectiveContextProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rails.viewFileTypesProvider"/></include> | `RailsViewFileTypesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.railsFacetEditorTab"/></include> | `FacetEditorTabFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.railsModelFieldsProvider"/></include> | `RailsModelFieldsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.railsNavigateFrom"/></include> | `RailsNavigateFromProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.railsSchemaParser"/></include> | `RailsSchemaParser` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rake.rakeRunCommandLineModifierProvider"/></include> | `RakeRunCommandLineModifierProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rake.runConfigurationSettingsFactory"/></include> | `RakeRunConfigurationSettingsFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rerunFailedTestsActionProvider"/></include> | `RubyRerunFailedTestsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.associatedDeclarationProvider"/></include> ![DumbAware][dumb-aware] | `RubyAssociatedDeclarationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.run.configuration.debugger.rubyDebugHelperFactory"/></include> | `RubyDebugHelperFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.topLevelSymbolProvider"/></include> | `RubyTopLevelSymbolProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.typeSignatureProvider"/></include> ![DumbAware][dumb-aware] | `RubyTypeSignatureProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubyFileStructureProvider"/></include> | `RubyFileStructureViewProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubyInsertHandlerProvider"/></include> | `RubyInsertHandlerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubyMethodTypeDocPresentationProvider"/></include> | `RubyMethodTypeDocPresentationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.runConfigurationExtension"/></include> | `RubyRunConfigurationExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.structureViewCustomizer"/></include> | `RubyStructureViewCustomizer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.testing.rspec.rspecContextNameProvider"/></include> | `RSpecContextNameProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.testing.rspec.rspecContextSymbolProvider"/></include> | `RSpecContextSymbolProvider` |
### ruby-rbs.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.lang.ruby.rbs.containerHierarchyMapper"/></include> | `RbsContainerHierarchyMapper` |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
[obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square
[experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square
[internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square
[project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square
[non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square
[dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square
</snippet>

View File

@ -0,0 +1,201 @@
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- GENERATED FILE, DO NOT EDIT -->
<!-- This file is generated with the SDK Docs Authoring Tools plugin ('Generate SDK Docs EP Lists' action) -->
<!-- Revision: b815cfdcaa594a8842ccf89e6ac2bf7615401920 -->
<!--
EP List Directories:
- /plugins/spring
-->
<snippet id="content">
58 Extension Points and 6 Listeners
<include from="snippets.topic" element-id="ep_list_legend"/>
## Spring
### Spring Listeners
| Topic | Listener |
|-------|----------|
| [`SpringFileSetService#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.spring.facet.SpringFileSetService.SpringFileSetListener) | `SpringFileSetListener` |
| [`SpringBeansViewSettings#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.spring.toolWindow.SpringBeansViewSettings.Listener) | `Listener` |
### com.intellij.spring
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.autodetected.filesets"/></include> | `SpringAutodetectedFilesetsSearcher` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.autodetected.models"/></include> | `SpringAutodetectedModelsSearcher` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.beanClassLineMarker"/></include> | `BeanClassLineMarker` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.beans.stereotype"/></include> | `SpringBeanStereotype` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.componentScanExtender"/></include> | `ComponentScanExtender` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.conditionalEvaluatorProvider"/></include> | `ConditionalEvaluatorProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.configSearcherScopeModifier"/></include> | `ConfigSearcherScopeModifier` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.configurator"/></include> | `SpringConfigurator` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.customBeanScope"/></include> | `SpringCustomBeanScope` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.customConverterProvider"/></include> | `Provider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.customLocalComponentsDiscoverer"/></include> | `CustomLocalComponentsDiscoverer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.customModuleComponentsDiscoverer"/></include> | `CustomModuleComponentsDiscoverer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.customNamespaces"/></include> | `SpringCustomNamespaces` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.effective.types.provider"/></include> | `SpringBeanEffectiveTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.factoryMethodTypeHandler"/></include> | `CustomFactoryMethodTypeHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.fileSetEditorCustomization"/></include> | `SpringFileSetEditorCustomization` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.inspectionsRegistryAdditionalFilesContributor"/></include> | `AdditionalFilesContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.inspectionsRegistryContributor"/></include> | `Contributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.jam.customMetaImplementation"/></include> | `n/a` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.localAnnotationModelDependentModelsProvider"/></include> | `LocalAnnotationModelDependentModelsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.localModelProducer"/></include> | `SpringLocalModelProducer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.placeholderReferenceResolver"/></include> | `SpringPlaceholderReferenceResolver` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.resourceTypeProvider"/></include> | `SpringResourceTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.scriptBeanPsiClassDiscoverer"/></include> | `ScriptBeanPsiClassDiscoverer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.settingsProvider"/></include> | `SpringSettingsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.springTemplateProvider"/></include> | `SpringTemplateProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.testingAnnotationsProvider"/></include> | `SpringTestingAnnotationsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.testingImplicitContextsProvider"/></include> | `SpringTestingImplicitContextsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.valueConverter"/></include> | `SpringValueConvertersProvider` |
### intellij.spring.el.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.el.contexts"/></include> | `SpringElContextsExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.el.injection.context"/></include> | `SpringElInjectionContext` |
### intellij.spring.graph.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.gutterDiagramActionProvider"/></include> | `SpringGutterDiagramActionProvider` |
## Spring Boot Plugin
### Spring Boot Plugin Listeners
| Topic | Listener |
|-------|----------|
| [`SpringBootEndpointsTabSettings#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.spring.boot.run.lifecycle.tabs.SpringBootEndpointsTabSettings.Listener) | `Listener` |
### com.intellij.spring.boot
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.configFileDetector"/></include> | `SpringBootConfigFileDetector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.customHintReferenceProvider"/></include> | `SpringBootCustomHintReferenceProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.languageSpecificBridge"/></include> | `SpringBootLanguageSpecificBridge` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.modelConditionalContributor"/></include> | `ConditionalContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.modelConfigFileContributor"/></include> | `SpringBootModelConfigFileContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.modelConfigFileNameContributor"/></include> | `SpringBootModelConfigFileNameContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.modelExtender"/></include> | `SpringBootModelExtender` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.replacementTokenResolver"/></include> | `SpringBootReplacementTokenResolver` |
### intellij.spring.boot.mvc.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.mvc.templateAvailabilityProvider"/></include> | `TemplateAvailabilityProvider` |
### intellij.spring.boot.run.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.run.applicationUpdatePolicy"/></include> | `SpringBootApplicationUpdatePolicy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.run.applicationUrlPathProviderFactory"/></include> | `SpringBootApplicationUrlPathProviderFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.run.endpoint"/></include> ![Experimental][experimental] | `Endpoint` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.run.endpointTabConfigurable"/></include> ![Project-Level][project-level] | `EndpointTabConfigurable` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.run.liveBeansPanelContent"/></include> | `LiveBeansPanelContent` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.run.runtimeApplicationProvider"/></include> | `SpringBootRuntimeApplicationProvider` |
## Spring Data Plugin
### Spring Data Plugin Listeners
| Topic | Listener |
|-------|----------|
| [`SpringRepositoriesViewSettings#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.spring.data.commons.view.SpringRepositoriesViewSettings.Listener) | `Listener` |
## Spring Debugger Plugin
### Spring Debugger Plugin Listeners
| Topic | Listener |
|-------|----------|
| [`SpringDebugModelListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.spring.debugger.model.SpringDebugModelListener) | `SpringDebugModelListener` |
### com.intellij.spring.debugger
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.debugger.configCodeVisionProvider"/></include> ![Internal][internal] | `SpringConfigFileCodeVisionInfoProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.debugger.runConfigurationExtender"/></include> | `SpringDebuggerRunConfigurationExtender` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.debugger.sessionListener"/></include> | `SpringDebuggerSessionListener` |
## Spring GraphQL Plugin
### com.intellij.spring.graphql
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.graphql.appPathProvider"/></include> | `GraphQLApplicationPathProvider` |
## Spring Messaging Plugin
### com.intellij.spring.messaging
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.messaging.urlProvider"/></include> | `SpringMessagingUrlProvider` |
## Spring Security Plugin
### com.intellij.spring.security
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.security.rolesProvider"/></include> | `SpringSecurityRolesProvider` |
## Spring Web Plugin
### Spring Web Plugin Listeners
| Topic | Listener |
|-------|----------|
| [`SpringMvcViewSettings#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.spring.mvc.toolwindow.SpringMvcViewSettings.Listener) | `Listener` |
### com.intellij.spring.mvc
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.mvc.applicationPathProvider"/></include> | `SpringApplicationPathProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.mvc.completion.controllerParamTypeProvider"/></include> | `ControllerParameterProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.mvc.mergingMvcRequestMappingLineMarkerProvider"/></include> | `SpringMergingMvcRequestMappingLineMarkerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.mvc.springEndpointsIconProvider"/></include> | `SpringEndpointsIconProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.mvc.viewResolverFactory"/></include> | `ViewResolverFactory` |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
[obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square
[experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square
[internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square
[project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square
[non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square
[dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square
</snippet>

View File

@ -0,0 +1,155 @@
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- GENERATED FILE, DO NOT EDIT -->
<!-- This file is generated with the SDK Docs Authoring Tools plugin ('Generate SDK Docs EP Lists' action) -->
<!-- Revision: b815cfdcaa594a8842ccf89e6ac2bf7615401920 -->
<!--
EP List Directories:
- /CSS
- /plugins/JavaScriptLanguage
- /plugins/NodeJS
- /plugins/sass
-->
<snippet id="content">
80 Extension Points and 5 Listeners
<include from="snippets.topic" element-id="ep_list_legend"/>
## WebStorm
### WebStorm Listeners
| Topic | Listener |
|-------|----------|
| [`JestConsoleProperties#COVERAGE_CONFIG_TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.javascript.jest.JestCoverageConfigListener) ![Project-Level][project-level] | `JestCoverageConfigListener` |
| [`PackageJsonFileManager#CHANGES_TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.javascript.nodejs.packageJson.PackageJsonFileManager.PackageJsonChangesListener) ![Project-Level][project-level] | `PackageJsonChangesListener` |
| [`VitestConsoleProperties#COVERAGE_CONFIG_TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.javascript.testing.vitest.coverage.VitestCoverageConfigListener) ![Project-Level][project-level] | `VitestCoverageConfigListener` |
| [`JSLibraryManager#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.lang.javascript.library.JSLibraryManager.JSLibraryManagerChangeListener) ![Project-Level][project-level] | `JSLibraryManagerChangeListener` |
| [`JSRemoteModulesRegistry#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.lang.javascript.modules.remote.JSRemoteModulesChangeListener) | `JSRemoteModulesChangeListener` |
### com.intellij.css
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.css.classOrIdUsagesProvider"/></include> | `CssClassOrIdUsagesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.css.cssFileReferenceProvider"/></include> | `CssFileReferenceProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.css.cssInspectionFilter"/></include> | `CssInspectionFilter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.css.cssIntentionFilter"/></include> | `CssIntentionFilter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.css.cssRelatedStylesheetsProvider"/></include> | `CssRelatedStylesheetsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.css.dialect"/></include> | `CssDialect` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.css.elementDescriptorProvider"/></include> | `CssElementDescriptorProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.css.embeddedCssProvider"/></include> | `EmbeddedCssProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.css.inclusionContext"/></include> | `CssInclusionContext` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.css.structureViewChildrenProvider"/></include> | `CssStructureViewElementsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.css.supportedFileTypesProvider"/></include> | `CssSupportedFileTypesProvider` |
### intellij.javascript.impl.diagrams.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.javascript.module.provider"/></include> | `JSModuleConnectionProvider` |
### intellij.javascript.web.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.javascript.webTypes"/></include> ![Removal][removal] | `n/a` |
### js-plugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.FlowJSAnnotatorCheckerProvider"/></include> | `FlowJSAnnotatorCheckerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.JSImplicitElementsIndexFileTypeProvider"/></include> | `JSImplicitElementsIndexFileTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.TypeScriptAnnotatorCheckerProvider"/></include> ![Project-Level][project-level] | `TypeScriptAnnotatorCheckerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.analysisHandlersFactory"/></include> | `JSAnalysisHandlersFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.classInheritorsProvider"/></include> | `JSClassInheritorsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.completionHelper"/></include> | `JSCompletionHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.completionPlaceFilter"/></include> ![Project-Level][project-level] | `JSCompletionPlaceFilterProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.componentUsageProvider"/></include> | `JSComponentUsageProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.conditionalCompilationDefinitionsProvider"/></include> | `JSConditionalCompilationDefinitionsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.dialectSpecificHandlersFactory"/></include> | `JSDialectSpecificHandlersFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.directFileReferenceResolverProvider"/></include> | `JSDirectFileReferenceResolverProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.elementScopeProvider"/></include> | `JSElementResolveScopeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.frameworkIndexingHandler"/></include> | `FrameworkIndexingHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.frameworkSpecificHandler"/></include> | `JSFrameworkSpecificHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.frameworkSpecificStructureViewExtension"/></include> | `JSFrameworkSpecificStructureExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.handlersFactory"/></include> | `JSHandlersFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.iconProvider"/></include> | `JSIconProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.importCandidatesFactory"/></include> | `CandidatesFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.importCandidatesFilterFactory"/></include> | `FilterFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.importModulePathStrategy"/></include> ![Experimental][experimental] | `JSImportModulePathStrategy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.indexedFileTypeProvider"/></include> | `IndexedFileTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.inheritedLanguagesConfigurableProvider"/></include> | `JSInheritedLanguagesConfigurableProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.intentionAndInspectionFilter"/></include> | `IntentionAndInspectionFilter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.itemPresentation"/></include> ![Experimental][experimental] | `JSItemPresentationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.jestPackageProvider"/></include> | `JestPackageProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.jsDocCustomTagsHandler"/></include> ![Experimental][experimental] | `JSDocCustomTagsHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.jsxImplementation"/></include> | `JSXImplementation` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.lang.templates"/></include> ![Project-Level][project-level] | [`Configurable`](%gh-ic%/platform/ide-core/src/com/intellij/openapi/options/Configurable.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.languageServiceProvider"/></include> ![Project-Level][project-level] | `JSLanguageServiceProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.languageServiceQuickFixProvider"/></include> | `JSLanguageServiceQuickFixProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.languageServiceRemoteHelperFactory"/></include> | `Factory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.minifiedFileIndexingProvider"/></include> ![Internal][internal] | `JSMinifiedFileIndexingProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.moduleExportsProvider"/></include> | `JSModuleExportsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.moduleReferenceContributor"/></include> | `JSModuleReferenceContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.nodeModulesIndexableFileNamesProvider"/></include> | `NodeModulesIndexableFileNamesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.nodeRunConfigurationExtension"/></include> | `AbstractNodeRunConfigurationExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.predefinedLibraryProvider"/></include> | `JSPredefinedLibraryProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.projectGeneratorPanelCustomizer"/></include> | `ProjectGeneratorSettingsCustomizer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.resolveHelper"/></include> | `JSResolveHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.runConfigurationBuilder"/></include> ![Project-Level][project-level] | `JSRunConfigurationBuilder` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.scanningFileListenerContributor"/></include> | `ScanningFileListenerContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.smartCompletionContributor"/></include> | `JSSmartCompletionContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.spellcheckerProvider"/></include> | `JSSpellcheckerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.testFrameworkDetector"/></include> | `n/a` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.testWatchProvider"/></include> | `JsTestWatchProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.tsConfigCustomizer"/></include> ![Experimental][experimental] | `TypeScriptConfigCustomizer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.tsImportResolver"/></include> | `TypeScriptImportsResolverProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.tsServiceExtension"/></include> | `TypeScriptServiceExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.typeScriptCompilerTypePatcher"/></include> | `TypeScriptCompilerTypePatcher` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.unresolvedReferenceErrorUpdater"/></include> ![Experimental][experimental] | `JSUnresolvedReferenceErrorUpdater` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.webBundlerCssReferenceContributor"/></include> | `JSModuleReferenceContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.webBundlerDefinition"/></include> | `WebBundlerDefinition` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.xmlBackedClassProvider"/></include> | `XmlBackedJSClassProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="NodeJS.runConfigurationLocationFilter"/></include> | `NodeRunConfigurationLocationFilter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.JavaScript.linter.descriptor"/></include> | `JSLinterDescriptor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.JavaScript.linter.execution.suppressor"/></include> | `JSLinterExecutionSuppressor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.eslint.ruleMappersFactory"/></include> | `EslintRuleMappersFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.javascript.extract.interface.extension"/></include> | `JSCustomExtractInterfaceHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.javascript.introduce.variable.extension"/></include> | `JSCustomIntroduceVariableHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.javascript.json.schema.provider"/></include> | `JsonSchemaInJavaScriptProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.javascript.library.externalDefinitionsContributor"/></include> | `TypeScriptExternalDefinitionsContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.javascript.names.suggester"/></include> | `JSNamesSuggester` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.javascript.rename.extension"/></include> | `JSRenameExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.jsbtFileManagerProvider"/></include> | `JsbtFileManagerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.jsbtService"/></include> | `JsbtApplicationService` |
### org.jetbrains.plugins.node-remote-interpreter
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.node-remote-interpreter.nodeRemoteTargetRunSetupFactory"/></include> | `NodeRemoteTargetRunSetupFactory` |
### org.jetbrains.plugins.sass
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.sass.extension"/></include> | `SassExtension` |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
[obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square
[experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square
[internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square
[project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square
[non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square
[dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square
</snippet>

View File

@ -1,7 +1,5 @@
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. --> <!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- EP List Directory: /community/android -->
# Android Plugin Extension Point and Listener List # Android Plugin Extension Point and Listener List
<link-summary>Overview of Extension Points and Listeners for Android Plugin.</link-summary> <link-summary>Overview of Extension Points and Listeners for Android Plugin.</link-summary>
@ -14,420 +12,4 @@
> See [](intellij_platform_extension_point_list.md) for IntelliJ Platform. > See [](intellij_platform_extension_point_list.md) for IntelliJ Platform.
110 Extension Points and 34 Listeners <include from="generated_android_plugin_extension_point_list.md" element-id="content"/>
<include from="snippets.topic" element-id="ep_list_legend"/>
## Android Plugin
### Android Plugin Listeners
| Topic | Listener |
|-------|----------|
| [`BuildAnalyzerStorageManager.Companion#DATA_IS_READY_TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.build.attribution.BuildAnalyzerStorageManager.Listener) | [`Listener`](%gh-ij-android%/build-attribution/src/com/android/build/attribution/BuildAnalyzerStorageManager.kt) |
| [`StatefulButtonNotifier#BUTTON_STATE_TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.assistant.StatefulButtonNotifier) ![Project-Level][project-level] | [`StatefulButtonNotifier`](%gh-ij-android%/assistant/src/com/android/tools/idea/assistant/StatefulButtonNotifier.java) |
| [`TutorialCardRefreshNotifier#TUTORIAL_CARD_TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.assistant.TutorialCardRefreshNotifier) | [`TutorialCardRefreshNotifier`](%gh-ij-android%/assistant/src/com/android/tools/idea/assistant/TutorialCardRefreshNotifier.java) |
| [`AvdLaunchListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.avdmanager.AvdLaunchListener) | [`AvdLaunchListener`](%gh-ij-android%/android/src/com/android/tools/idea/avdmanager/AvdLaunchListener.java) |
| [`EmulatorLogListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.avdmanager.EmulatorLogListener) | [`EmulatorLogListener`](%gh-ij-android%/android/src/com/android/tools/idea/avdmanager/EmulatorLogListener.kt) |
| [`IssueProviderListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.common.error.IssueProviderListener) ![Project-Level][project-level] | [`IssueProviderListener`](%gh-ij-android%/designer/src/com/android/tools/idea/common/error/IssueProvider.kt) |
| [`IssueProviderListener#UI_CHECK`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.common.error.IssueProviderListener) ![Project-Level][project-level] | [`IssueProviderListener`](%gh-ij-android%/designer/src/com/android/tools/idea/common/error/IssueProvider.kt) |
| [`ComposeAnimationListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.compose.preview.ComposePreviewRepresentation.ComposeAnimationListener) | [`ComposeAnimationListener`](%gh-ij-android%/compose-designer/src/com/android/tools/idea/compose/preview/Preview.kt) |
| [`FastPreviewManager#FAST_PREVIEW_MANAGER_TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.editors.fast.FastPreviewManager.Companion.FastPreviewManagerListener) | [`FastPreviewManagerListener`](%gh-ij-android%/android/src/com/android/tools/idea/editors/fast/FastPreviewManager.kt) |
| [`GradleBuildState#GRADLE_BUILD_TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.gradle.project.build.GradleBuildListener) | [`GradleBuildListener`](%gh-ij-android%/project-system-gradle/src/com/android/tools/idea/gradle/project/build/GradleBuildListener.java) |
| [`GradleSyncStateImplKt#GRADLE_SYNC_TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.gradle.project.sync.GradleSyncListenerWithRoot) | [`GradleSyncListenerWithRoot`](%gh-ij-android%/project-system-gradle/src/com/android/tools/idea/gradle/project/sync/GradleSyncListenerWithRoot.kt) |
| [`FilterStatusChanged.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.logcat.filters.FilterTextField.FilterStatusChanged) | [`FilterStatusChanged`](%gh-ij-android%/logcat/src/com/android/tools/idea/logcat/filters/FilterTextField.kt) |
| [`MergedManifestSnapshotComputeListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.model.MergedManifestSnapshotComputeListener) | [`MergedManifestSnapshotComputeListener`](%gh-ij-android%/android/src/com/android/tools/idea/model/MergedManifestManager.kt) |
| [`SafeArgsModeModuleService#MODE_CHANGED`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.nav.safeargs.module.SafeArgsModeModuleService.SafeArgsModeChangedListener) | [`SafeArgsModeChangedListener`](%gh-ij-android%/nav/safeargs/common/src/com/android/tools/idea/nav/safeargs/module/SafeArgsModeModuleService.kt) |
| [`NavigationResourcesModificationListenerKt#NAVIGATION_RESOURCES_CHANGED`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.nav.safeargs.project.NavigationResourcesChangeListener) | [`NavigationResourcesChangeListener`](%gh-ij-android%/nav/safeargs/common/src/com/android/tools/idea/nav/safeargs/project/NavigationResourcesModificationListener.kt) |
| [`MultiTemplateRenderer#TEMPLATE_RENDERER_TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.npw.model.MultiTemplateRenderer.TemplateRendererListener) | [`TemplateRendererListener`](%gh-ij-android%/android-npw/src/com/android/tools/idea/npw/model/MultiTemplateRenderer.kt) |
| [`ProjectApplicationIdsProvider.Companion#PROJECT_APPLICATION_IDS_CHANGED_TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.projectsystem.ProjectApplicationIdsProvider.ProjectApplicationIdsListener) | [`ProjectApplicationIdsListener`](%gh-ij-android%/project-system/src/com/android/tools/idea/projectsystem/ProjectApplicationIdsProvider.kt) |
| [`ProjectSystemBuildUtil#PROJECT_SYSTEM_BUILD_TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.projectsystem.ProjectSystemBuildManager.BuildListener) | [`BuildListener`](%gh-ij-android%/project-system/src/com/android/tools/idea/projectsystem/ProjectSystemBuildManager.kt) |
| [`ProjectSystemSyncUtil#PROJECT_SYSTEM_SYNC_TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.projectsystem.ProjectSystemSyncManager.SyncResultListener) | [`SyncResultListener`](%gh-ij-android%/project-system/src/com/android/tools/idea/projectsystem/ProjectSystemSyncManager.kt) |
| [`ClearLogcatListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.run.ClearLogcatListener) | [`ClearLogcatListener`](%gh-ij-android%/android/src/com/android/tools/idea/run/ClearLogcatListener.kt) |
| [`DeviceHeadsUpListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.run.DeviceHeadsUpListener) | [`DeviceHeadsUpListener`](%gh-ij-android%/android/src/com/android/tools/idea/run/DeviceHeadsUpListener.java) |
| [`ShowLogcatListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.run.ShowLogcatListener) | [`ShowLogcatListener`](%gh-ij-android%/android/src/com/android/tools/idea/run/ShowLogcatListener.kt) |
| [`ApplicationDeployListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.run.configuration.execution.ApplicationDeployListener) | [`ApplicationDeployListener`](%gh-ij-android%/android/src/com/android/tools/idea/run/configuration/execution/ApplicationDeployerImpl.kt) |
| [`SdkInstallListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.sdk.SdkInstallListener) | [`SdkInstallListener`](%gh-ij-android%/android/src/com/android/tools/idea/sdk/SdkInstallListener.kt) |
| [`DeviceMirroringSettingsListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.streaming.DeviceMirroringSettingsListener) | [`DeviceMirroringSettingsListener`](%gh-ij-android%/android/src/com/android/tools/idea/streaming/DeviceMirroringSettingsListener.java) |
| [`EmulatorSettingsListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.streaming.EmulatorSettingsListener) | [`EmulatorSettingsListener`](%gh-ij-android%/android/src/com/android/tools/idea/streaming/EmulatorSettingsListener.java) |
| [`Listener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.streaming.emulator.actions.FloatingXrToolbarState.Listener) | [`Listener`](%gh-ij-android%/streaming/src/com/android/tools/idea/streaming/emulator/actions/ToggleFloatingXrToolbarAction.kt) |
| [`TransportDeviceManager#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.transport.TransportDeviceManager.TransportDeviceManagerListener) | [`TransportDeviceManagerListener`](%gh-ij-android%/android-transport/src/com/android/tools/idea/transport/TransportDeviceManager.java) |
| [`Listener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.idea.uibuilder.options.NlOptionsConfigurable.Listener) | [`Listener`](%gh-ij-android%/designer/src/com/android/tools/idea/uibuilder/options/NlOptionsConfigurable.kt) |
| [`OpenHomeTabListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.profilers.taskbased.home.OpenHomeTabListener) | [`OpenHomeTabListener`](%gh-ij-android%/profilers/src/com/android/tools/profilers/taskbased/home/OpenHomeTabListener.kt) |
| [`OpenPastRecordingsTabListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.profilers.taskbased.pastrecordings.OpenPastRecordingsTabListener) | [`OpenPastRecordingsTabListener`](%gh-ij-android%/profilers/src/com/android/tools/profilers/taskbased/pastrecordings/OpenPastRecordingsTabListener.kt) |
| [`CreateProfilerTaskTabListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.profilers.taskbased.task.CreateProfilerTaskTabListener) | [`CreateProfilerTaskTabListener`](%gh-ij-android%/profilers/src/com/android/tools/profilers/taskbased/task/CreateProfilerTaskTabListener.kt) |
| [`OpenProfilerTaskTabListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.android.tools.profilers.taskbased.task.OpenProfilerTaskTabListener) | [`OpenProfilerTaskTabListener`](%gh-ij-android%/profilers/src/com/android/tools/profilers/taskbased/task/OpenProfilerTaskTabListener.kt) |
| [`ResourceFolderManager#TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.android.facet.ResourceFolderManager.ResourceFolderListener) ![Project-Level][project-level] | [`ResourceFolderListener`](%gh-ij-android%/android/src/org/jetbrains/android/facet/ResourceFolderManager.kt) |
### adt-ui.xml
[`adt-ui.xml`](%gh-ij-android%/adt-ui/resources/META-INF/adt-ui.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.android.toolWindow"/></include> ![Non-Dynamic][non-dynamic] ![DumbAware][dumb-aware] | [`ToolWindowFactory`](%gh-ic%/platform/platform-api/src/com/intellij/openapi/wm/ToolWindowFactory.kt) |
### aiplugin-api.xml
[`aiplugin-api.xml`](%gh-ij-android%/ml-api/src/resources/META-INF/aiplugin-api.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.gemini.geminiPluginApi"/></include> ![Non-Dynamic][non-dynamic] | [`GeminiPluginApi`](%gh-ij-android%/ml-api/src/main/kotlin/com/android/tools/idea/gemini/GeminiPluginApi.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.ml.studioBotExternalFlags"/></include> ![Non-Dynamic][non-dynamic] | [`StudioBotExternalFlags`](%gh-ij-android%/ml-api/src/main/kotlin/com/android/tools/idea/gemini/StudioBotExternalFlags.kt) |
### android-adb.xml
[`android-adb.xml`](%gh-ij-android%/android-adb/resources/META-INF/android-adb.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.run.deviceNameRenderer"/></include> ![Non-Dynamic][non-dynamic] | [`DeviceNameRendererEx`](%gh-ij-android%/android-adb/src/com/android/tools/idea/ddms/DeviceNameRendererEx.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.deviceProvisioner"/></include> ![Non-Dynamic][non-dynamic] | [`DeviceProvisionerFactory`](%gh-ij-android%/android-adb/src/com/android/tools/idea/deviceprovisioner/DeviceProvisionerFactory.kt) |
### android-editing-metrics.xml
[`android-editing-metrics.xml`](%gh-ij-android%/android/editing/metrics/resources/META-INF/android-editing-metrics.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.editing.metrics.codeEditedListener"/></include> | [`CodeEditedListener`](%gh-ij-android%/android/editing/metrics/src/com/android/tools/idea/editing/metrics/CodeEditedListener.kt) |
### android-execution-common.xml
[`android-execution-common.xml`](%gh-ij-android%/execution/common/resources/META-INF/android-execution-common.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.execution.common.androidConfigurationExecutorProvider"/></include> ![Non-Dynamic][non-dynamic] | [`Provider`](%gh-ij-android%/execution/common/src/com/android/tools/idea/execution/common/AndroidConfigurationExecutor.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.execution.common.debug.utils.facetFinderToken"/></include> ![Non-Dynamic][non-dynamic] | [`FacetFinderToken`](%gh-ij-android%/execution/common/src/com/android/tools/idea/execution/common/debug/utils/FacetFinder.kt) |
### android-kotlin-extensions-common.xml
[`android-kotlin-extensions-common.xml`](%gh-ij-android%/android-kotlin/android-extensions-idea-common/resources/META-INF/android-kotlin-extensions-common.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.kotlin.android.model.androidModuleInfoProvider"/></include> ![Deprecated][deprecated] ![Non-Dynamic][non-dynamic] | [`AndroidModuleInfoProvider`](%gh-ij-android%/android-kotlin/android-extensions-idea-common/src/org/jetbrains/kotlin/android/synthetic/idea/AndroidModuleInfoProvider.kt) |
### android-kotlin.common.xml
[`android-kotlin.common.xml`](%gh-ij-android%/android-kotlin/idea-android/common/resources/META-INF/android-kotlin.common.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.kotlin.androidDexer"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | [`AndroidDexer`](%gh-ic%/plugins/kotlin/jvm-debugger/evaluation/src/org/jetbrains/kotlin/idea/debugger/evaluate/classLoading/AndroidDexer.kt) |
### android-lang.xml
[`android-lang.xml`](%gh-ij-android%/android-lang/resources/META-INF/android-lang.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.lang.androidSql.contextProvider"/></include> ![Non-Dynamic][non-dynamic] | [`Provider`](%gh-ij-android%/android-lang/src/com/android/tools/idea/lang/androidSql/AndroidSqlContext.kt) |
### android-navigator.xml
[`android-navigator.xml`](%gh-ij-android%/android-navigator/resources/META-INF/android-navigator.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.navigator.androidViewNodeProvider"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidViewNodeProvider`](%gh-ij-android%/android-navigator/src/com/android/tools/idea/navigator/nodes/AndroidViewNodeProvider.kt) |
### android-npw.xml
[`android-npw.xml`](%gh-ij-android%/android-npw/resources/META-INF/android-npw.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.moduleDescriptionProvider"/></include> ![Non-Dynamic][non-dynamic] | [`ModuleDescriptionProvider`](%gh-ij-android%/android-npw/src/com/android/tools/idea/npw/module/ModuleDescriptionProvider.kt) |
### android-plugin.xml
[`android-plugin.xml`](%gh-ij-android%/android/resources/META-INF/android-plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.customProjectTypeImporter"/></include> ![Non-Dynamic][non-dynamic] | [`CustomProjectTypeImporter`](%gh-ij-android%/android/src/com/android/tools/idea/project/CustomProjectTypeImporter.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.ide.androidConfigurableContributor"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidConfigurableContributor`](%gh-ij-android%/android/src/com/android/tools/idea/structure/dialog/AndroidConfigurableContributor.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.ide.sdkEventListener"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidSdkEventListener`](%gh-ij-android%/android/src/com/android/tools/idea/sdk/IdeSdks.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.rendering.renderErrorContributor"/></include> ![Non-Dynamic][non-dynamic] | [`Provider`](%gh-ij-android%/android/src/com/android/tools/idea/rendering/RenderErrorContributor.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.rendering.renderSecurityManagerOverrides"/></include> | [`RenderSecurityManagerOverrides`](%gh-ij-android%/rendering/src/com/android/tools/rendering/security/RenderSecurityManagerOverrides.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.run.androidDebugger"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidDebugger`](%gh-ij-android%/execution/common/src/com/android/tools/idea/execution/common/debug/AndroidDebugger.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.run.androidLaunchTaskContributor"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidLaunchTaskContributor`](%gh-ij-android%/android/src/com/android/tools/idea/run/AndroidLaunchTaskContributor.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.run.deployTargetProvider"/></include> ![Non-Dynamic][non-dynamic] | [`DeployTargetProvider`](%gh-ij-android%/android/src/com/android/tools/idea/run/editor/DeployTargetProvider.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.actions.annotations.inferAnnotationsToken"/></include> ![Non-Dynamic][non-dynamic] | [`InferAnnotationsToken`](%gh-ij-android%/android/src/com/android/tools/idea/actions/annotations/InferAnnotationsToken.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.actions.exportProjectZipExcludesContributor"/></include> ![Non-Dynamic][non-dynamic] | [`ExportProjectZipExcludesContributor`](%gh-ij-android%/android/src/com/android/tools/idea/actions/ExportProjectZipExcludesContributor.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.analytics.ideBrandProvider"/></include> ![Non-Dynamic][non-dynamic] | [`IdeBrandProvider`](%gh-ij-android%/android/src/com/android/tools/idea/analytics/IdeBrandProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.databinding.layoutBindingSupport"/></include> ![Non-Dynamic][non-dynamic] | [`LayoutBindingSupport`](%gh-ij-android%/android/src/com/android/tools/idea/databinding/LayoutBindingSupport.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.diagnostics.report.logsProvider"/></include> ![Non-Dynamic][non-dynamic] | [`DiagnosticsSummaryFileProvider`](%gh-ij-android%/android/src/com/android/tools/idea/diagnostics/report/DiagnosticsSummaryFileProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.editors.manifest.manifestPanelToken"/></include> ![Non-Dynamic][non-dynamic] | [`ManifestPanelToken`](%gh-ij-android%/android/src/com/android/tools/idea/editors/manifest/ManifestPanelToken.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.flags.experimentalSettingsContributor"/></include> ![Non-Dynamic][non-dynamic] | [`ExperimentalSettingsContributor`](%gh-ij-android%/android/src/com/android/tools/idea/flags/ExperimentalSettingsContributor.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.lang.databinding.dataBindingCompletionSupport"/></include> ![Non-Dynamic][non-dynamic] | [`DataBindingCompletionSupport`](%gh-ij-android%/android/src/com/android/tools/idea/lang/databinding/DataBindingCompletionSupport.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.lang.databinding.dataBindingExpressionSupport"/></include> ![Non-Dynamic][non-dynamic] | [`DataBindingExpressionSupport`](%gh-ij-android%/android/src/com/android/tools/idea/lang/databinding/DataBindingExpressionSupport.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.layoutlib.layoutLibraryProvider"/></include> ![Non-Dynamic][non-dynamic] | [`LayoutLibraryProvider`](%gh-ij-android%/layoutlib-loader/src/com/android/tools/idea/layoutlib/LayoutLibraryLoader.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.liveedit.tokens.buildSystemLiveEditServices"/></include> ![Non-Dynamic][non-dynamic] | [`BuildSystemLiveEditServices`](%gh-ij-android%/android/src/com/android/tools/idea/run/deployment/liveedit/tokens/BuildSystemLiveEditServices.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.manifest.manifestClassToken"/></include> ![Non-Dynamic][non-dynamic] | [`ManifestClassToken`](%gh-ij-android%/android/src/com/android/tools/idea/manifest/ManifestClassToken.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.ndk.nativeWorkspaceProvider"/></include> ![Non-Dynamic][non-dynamic] | [`NativeWorkspaceProvider`](%gh-ij-android%/android/src/com/android/tools/idea/ndk/NativeWorkspaceProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.rendering.renderIssueCollectionConsumer"/></include> ![Non-Dynamic][non-dynamic] | [`Provider`](%gh-ij-android%/android/src/com/android/tools/idea/rendering/RenderIssueCollectionConsumer.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.rendering.tokens.buildSystemFilePreviewServices"/></include> ![Non-Dynamic][non-dynamic] | [`BuildSystemFilePreviewServices`](%gh-ij-android%/android/src/com/android/tools/idea/rendering/tokens/BuildSystemFilePreviewServices.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.res.resourceClassToken"/></include> ![Non-Dynamic][non-dynamic] | [`ResourceClassToken`](%gh-ij-android%/android/src/com/android/tools/idea/res/ResourceClassToken.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.run.configuration.editors.androidWearConfigurationEditorToken"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidWearConfigurationEditorToken`](%gh-ij-android%/android/src/com/android/tools/idea/run/configuration/editors/AndroidWearConfigurationEditor.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.run.editor.androidDebuggerInfoProvider"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidDebuggerInfoProvider`](%gh-ij-android%/android/src/com/android/tools/idea/run/editor/AndroidDebuggerInfoProvider.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.run.editor.testRunParametersToken"/></include> ![Non-Dynamic][non-dynamic] | [`TestRunParametersToken`](%gh-ij-android%/android/src/com/android/tools/idea/run/editor/TestRunParameters.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.testartifacts.instrumented.androidTestConfigurationProducerToken"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidTestConfigurationProducerToken`](%gh-ij-android%/android/src/com/android/tools/idea/testartifacts/instrumented/AndroidTestConfigurationProducer.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.testartifacts.instrumented.testRunConfigurationOptions"/></include> | [`TestRunConfigurationOptions`](%gh-ij-android%/android/src/com/android/tools/idea/testartifacts/instrumented/AndroidTestConfigurationProducer.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.testartifacts.screenshottest.screenshotTestResultListenerToken"/></include> ![Non-Dynamic][non-dynamic] | [`ScreenshotTestResultListenerToken`](%gh-ij-android%/android/src/com/android/tools/idea/testartifacts/screenshottest/ScreenshotTestResultListenerToken.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.ui.designer.overlays.overlayProvider"/></include> ![Non-Dynamic][non-dynamic] | [`OverlayProvider`](%gh-ij-android%/android/src/com/android/tools/idea/ui/designer/overlays/OverlayProvider.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.ui.guiTestingStatusProvider"/></include> ![Non-Dynamic][non-dynamic] | [`GuiTestingStatusProvider`](%gh-ij-android%/android/src/com/android/tools/idea/ui/GuiTestingStatusProvider.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.ui.resourcemanager.importer.createDefaultResDirectoryToken"/></include> ![Non-Dynamic][non-dynamic] | [`CreateDefaultResDirectoryToken`](%gh-ij-android%/android/src/com/android/tools/idea/ui/resourcemanager/importer/DesignAssetImporter.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.wizard.template.wizardTemplateProvider"/></include> ![Non-Dynamic][non-dynamic] | `WizardTemplateProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.android.actions.newResourceCreationHandler"/></include> ![Non-Dynamic][non-dynamic] | [`NewResourceCreationHandler`](%gh-ij-android%/android/src/org/jetbrains/android/actions/NewResourceCreationHandler.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.android.refactoring.unusedResourcesToken"/></include> ![Non-Dynamic][non-dynamic] | [`UnusedResourcesToken`](%gh-ij-android%/android/src/org/jetbrains/android/refactoring/UnusedResourcesProcessor.kt) |
### android-templates.xml
[`android-templates.xml`](%gh-ij-android%/android-templates/resources/META-INF/android-templates.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.templates.additionalTemplateActionsProvider"/></include> ![Non-Dynamic][non-dynamic] | [`AdditionalTemplateActionsProvider`](%gh-ij-android%/android-templates/src/com/android/tools/idea/templates/AdditionalTemplateActionsProvider.java) |
### apkanalyzer.xml
[`apkanalyzer.xml`](%gh-ij-android%/apkanalyzer/src/META-INF/apkanalyzer.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.apk.viewer.apkAnalyzerToken"/></include> ![Non-Dynamic][non-dynamic] | [`ApkAnalyzerToken`](%gh-ij-android%/apkanalyzer/src/com/android/tools/idea/apk/viewer/ApkAnalyzerToken.kt) |
### app-inspection.xml
[`app-inspection.xml`](%gh-ij-android%/app-inspection/ide/resources/META-INF/app-inspection.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.appinspection.ide.resolver.artifactResolverFactoryToken"/></include> ![Non-Dynamic][non-dynamic] | [`ArtifactResolverFactoryToken`](%gh-ij-android%/app-inspection/ide/src/com/android/tools/idea/appinspection/ide/resolver/ArtifactResolverFactory.kt) |
### app-inspector.xml
[`app-inspector.xml`](%gh-ij-android%/app-inspection/inspector/ide/resources/META-INF/app-inspector.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.appinspection.inspector.ide.appInspectorTabProvider"/></include> ![Non-Dynamic][non-dynamic] | [`AppInspectorTabProvider`](%gh-ij-android%/app-inspection/inspector/ide/src/com/android/tools/idea/appinspection/inspector/ide/AppInspectorTabProvider.kt) |
### assistant.xml
[`assistant.xml`](%gh-ij-android%/assistant/resources/META-INF/assistant.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.assistant.actionHandler"/></include> ![Non-Dynamic][non-dynamic] | [`AssistActionHandler`](%gh-ij-android%/assistant/src/com/android/tools/idea/assistant/AssistActionHandler.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.assistant.actionStateManager"/></include> ![Non-Dynamic][non-dynamic] | [`AssistActionStateManager`](%gh-ij-android%/assistant/src/com/android/tools/idea/assistant/AssistActionStateManager.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.assistant.assistantBundleCreator"/></include> ![Non-Dynamic][non-dynamic] | [`AssistantBundleCreator`](%gh-ij-android%/assistant/src/com/android/tools/idea/assistant/AssistantBundleCreator.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.assistant.navlistener"/></include> ![Non-Dynamic][non-dynamic] | [`AssistNavListener`](%gh-ij-android%/assistant/src/com/android/tools/idea/assistant/AssistNavListener.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.assistant.panelFactory"/></include> ![Non-Dynamic][non-dynamic] | [`PanelFactory`](%gh-ij-android%/assistant/src/com/android/tools/idea/assistant/PanelFactory.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.assistant.scrollHandler"/></include> ![Non-Dynamic][non-dynamic] | [`ScrollHandler`](%gh-ij-android%/assistant/src/com/android/tools/idea/assistant/ScrollHandler.java) |
### com.android.tools.gradle.dcl
[`com.android.tools.gradle.dcl`](%gh-ij-android%/gradle-declarative-lang-ide/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.gradle.dcl.ide.declarativeSchemaProvider"/></include> ![Non-Dynamic][non-dynamic] | [`DeclarativeSchemaProvider`](%gh-ij-android%/gradle-declarative-lang-ide/src/com/android/tools/idea/gradle/dcl/lang/ide/DeclarativeSchemaProvider.kt) |
### compose-designer.xml
[`compose-designer.xml`](%gh-ij-android%/compose-designer/resources/META-INF/compose-designer.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.compose.preview.composeEditorNotificationProvider"/></include> ![Non-Dynamic][non-dynamic] ![DumbAware][dumb-aware] | [`EditorNotificationProvider`](%gh-ic%/platform/platform-api/src/com/intellij/ui/EditorNotificationProvider.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.compose.preview.composeStudioBotActionFactory"/></include> ![Non-Dynamic][non-dynamic] | [`ComposeStudioBotActionFactory`](%gh-ij-android%/compose-designer/src/com/android/tools/idea/compose/preview/ComposeStudioBotActionFactory.kt) |
### customview.xml
[`customview.xml`](%gh-ij-android%/designer/customview/resources/META-INF/customview.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.customview.preview.customViewEditorNotificationProvider"/></include> ![Non-Dynamic][non-dynamic] ![DumbAware][dumb-aware] | [`EditorNotificationProvider`](%gh-ic%/platform/platform-api/src/com/intellij/ui/EditorNotificationProvider.java) |
### databinding.xml
[`databinding.xml`](%gh-ij-android%/databinding/resources/META-INF/databinding.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.databinding.bindingLayoutToken"/></include> ![Non-Dynamic][non-dynamic] | [`BindingLayoutToken`](%gh-ij-android%/databinding/src/com/android/tools/idea/databinding/BindingLayoutToken.kt) |
### designer.xml
[`designer.xml`](%gh-ij-android%/designer/resources/META-INF/designer.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.uibuilder.editor.multirepresentation.sourcecode.sourceCodePreviewRepresentationProvider"/></include> ![Non-Dynamic][non-dynamic] | [`PreviewRepresentationProvider`](%gh-ij-android%/designer/src/com/android/tools/idea/uibuilder/editor/multirepresentation/PreviewRepresentationProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.uibuilder.editorNotificationProvider"/></include> ![Non-Dynamic][non-dynamic] ![DumbAware][dumb-aware] | [`EditorNotificationProvider`](%gh-ic%/platform/platform-api/src/com/intellij/ui/EditorNotificationProvider.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.uibuilder.handlers.constraint.constraintLayoutExtension"/></include> | [`ConstraintLayoutExtension`](%gh-ij-android%/designer/src/com/android/tools/idea/uibuilder/handlers/constraint/ConstraintComponentUtilities.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.uibuilder.handlers.viewHandlerProvider"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | [`ViewHandlerProvider`](%gh-ij-android%/designer/src/com/android/tools/idea/uibuilder/handlers/ViewHandlerProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.uibuilder.property.motionEditorNlPropertiesModelProvider"/></include> | [`NlPropertiesModelProvider`](%gh-ij-android%/designer/src/com/android/tools/idea/uibuilder/property/NlPropertiesModel.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.uibuilder.property.motionEditorNlPropertiesViewProvider"/></include> | [`NlPropertiesViewProvider`](%gh-ij-android%/designer/src/com/android/tools/idea/uibuilder/property/NlPropertiesView.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.uibuilder.scene.decorator.nlDecoratorProvider"/></include> | [`Provider`](%gh-ij-android%/designer/src/com/android/tools/idea/uibuilder/scene/decorator/NlSceneDecoratorFactory.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.uibuilder.troubleshooting.infoCollector"/></include> ![Non-Dynamic][non-dynamic] | [`TroubleInfoCollector`](%gh-ic%/platform/platform-impl/src/com/intellij/troubleshooting/TroubleInfoCollector.java) |
### device-manager-v2.xml
[`device-manager-v2.xml`](%gh-ij-android%/device-manager-v2/resources/META-INF/device-manager-v2.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.devicemanagerv2.deviceManagerOverflowActionContributor"/></include> ![Non-Dynamic][non-dynamic] | [`DeviceManagerOverflowActionContributor`](%gh-ij-android%/device-manager-v2/src/com/android/tools/idea/devicemanagerv2/OverflowButton.kt) |
### gradle-dsl.xml
[`gradle-dsl.xml`](%gh-ij-android%/gradle-dsl/resources/META-INF/gradle-dsl.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.gradleModelProvider"/></include> ![Non-Dynamic][non-dynamic] | [`GradleModelProvider`](%gh-ij-android%/gradle-dsl/src/com/android/tools/idea/gradle/dsl/api/GradleModelProvider.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.gradle.dsl.blockModelProvider"/></include> ![Experimental][experimental] | [`BlockModelProvider`](%gh-ij-android%/gradle-dsl/src/com/android/tools/idea/gradle/dsl/model/BlockModelProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.gradle.dsl.transformerFactory"/></include> | [`GradleDslTransformerFactory`](%gh-ij-android%/gradle-dsl/src/com/android/tools/idea/gradle/dsl/parser/GradleDslTransformerFactory.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.versionCatalogFilesGradleModel"/></include> ![Non-Dynamic][non-dynamic] | [`VersionCatalogFilesModel`](%gh-ij-android%/gradle-dsl/src/com/android/tools/idea/gradle/dsl/model/VersionCatalogFilesModel.kt) |
### layout-inspector.xml
[`layout-inspector.xml`](%gh-ij-android%/layout-inspector/resources/META-INF/layout-inspector.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.layoutinspector.pipeline.appinspection.compose.getComposeLayoutInspectorJarToken"/></include> ![Non-Dynamic][non-dynamic] | [`GetComposeLayoutInspectorJarToken`](%gh-ij-android%/layout-inspector/src/com/android/tools/idea/layoutinspector/pipeline/appinspection/compose/ComposeLayoutInspectorClient.kt) |
### lint-plugin.xml
[`lint-plugin.xml`](%gh-ij-android%/lint/src/META-INF/lint-plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.lint.common.lintIdeSupport"/></include> ![Non-Dynamic][non-dynamic] | [`LintIdeSupport`](%gh-ij-android%/lint/src/com/android/tools/idea/lint/common/LintIdeSupport.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.lint.common.lintQuickFixProvider"/></include> ![Non-Dynamic][non-dynamic] | [`LintIdeQuickFixProvider`](%gh-ij-android%/lint/src/com/android/tools/idea/lint/common/LintIdeQuickFixProvider.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.lint.common.updateDepsProvider"/></include> ![Non-Dynamic][non-dynamic] | [`DependencyUpdateProvider`](%gh-ij-android%/lint/src/com/android/tools/idea/lint/common/AndroidLintGradleDependencyInspection.kt) |
### logcat.xml
[`logcat.xml`](%gh-ij-android%/logcat/resources/META-INF/logcat.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.logcat.consoleFilterProvider"/></include> ![Non-Dynamic][non-dynamic] | [`LogcatConsoleFilterProvider`](%gh-ij-android%/logcat/src/com/android/tools/idea/logcat/LogcatConsoleFilterProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.logcat.messages.exceptionMessageRewriter"/></include> ![Non-Dynamic][non-dynamic] | [`ExceptionMessageRewriter`](%gh-ij-android%/logcat/src/com/android/tools/idea/logcat/messages/ExceptionMessageRewriter.kt) |
### native-symbolizer.xml
[`native-symbolizer.xml`](%gh-ij-android%/native-symbolizer/resources/META-INF/native-symbolizer.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.nativeSymbolizer.moduleSymbolSourceContributor"/></include> ![Non-Dynamic][non-dynamic] | [`ModuleSymbolSourceContributor`](%gh-ij-android%/native-symbolizer/src/com/android/tools/nativeSymbolizer/SymbolSource.kt) |
### naveditor.xml
[`naveditor.xml`](%gh-ij-android%/nav/editor/resources/META-INF/naveditor.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.naveditor.editor.addDestinationMenuToken"/></include> ![Non-Dynamic][non-dynamic] | [`AddDestinationMenuToken`](%gh-ij-android%/nav/editor/src/com/android/tools/idea/naveditor/editor/AddDestinationMenu.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.naveditor.surface.navDesignSurfaceToken"/></include> ![Non-Dynamic][non-dynamic] | [`NavDesignSurfaceToken`](%gh-ij-android%/nav/editor/src/com/android/tools/idea/naveditor/surface/NavDesignSurfaceToken.java) |
### pipeline.xml
[`pipeline.xml`](%gh-ij-android%/android-transport/resources/META-INF/pipeline.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.transport.transportConfigContributor"/></include> ![Non-Dynamic][non-dynamic] | [`TransportConfigContributor`](%gh-ij-android%/android-transport/src/com/android/tools/idea/transport/TransportConfigContributor.java) |
### profilers.xml
[`profilers.xml`](%gh-ij-android%/profilers-android/resources/META-INF/profilers.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.profilers.profilerProgramRunnerToken"/></include> ![Non-Dynamic][non-dynamic] | [`ProfilerProgramRunnerToken`](%gh-ij-android%/profilers-android/src/com/android/tools/idea/profilers/ProfilerProgramRunnerToken.kt) |
### project-system-gradle-plugin.xml
[`project-system-gradle-plugin.xml`](%gh-ij-android%/project-system-gradle/resources/META-INF/project-system-gradle-plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.gradle.androidModuleDataService"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidModuleDataServiceExtension`](%gh-ij-android%/project-system-gradle/src/com/android/tools/idea/projectsystem/gradle/sync/AndroidModuleDataServiceExtension.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.gradle.sync.postSyncProjectCleanupStep"/></include> ![Non-Dynamic][non-dynamic] | [`ProjectCleanupStep`](%gh-ij-android%/project-system-gradle/src/com/android/tools/idea/gradle/project/sync/setup/post/ProjectCleanupStep.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.gradle.sync.postSyncProjectSetupStep"/></include> ![Non-Dynamic][non-dynamic] | [`ProjectSetupStep`](%gh-ij-android%/project-system-gradle/src/com/android/tools/idea/gradle/project/sync/setup/post/ProjectSetupStep.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.moduleImporter"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidModuleImporter`](%gh-ij-android%/project-system-gradle/src/com/android/tools/idea/gradle/project/AndroidModuleImporter.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.gradle.errorQuickFixProvider"/></include> ![Non-Dynamic][non-dynamic] | [`GradleErrorQuickFixProvider`](%gh-ij-android%/project-system-gradle/src/com/android/tools/idea/gradle/project/build/events/GradleErrorQuickFixProvider.kt) |
### project-system-plugin.xml
[`project-system-plugin.xml`](%gh-ij-android%/project-system/resources/META-INF/project-system-plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.androidStartupActivity"/></include> | [`AndroidStartupActivity`](%gh-ij-android%/project-system/src/com/android/tools/idea/AndroidStartupActivity.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.project.projectsystem"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidProjectSystemProvider`](%gh-ij-android%/project-system/src/com/android/tools/idea/projectsystem/AndroidProjectSystemProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.memorysettings.memorySettingsToken"/></include> ![Non-Dynamic][non-dynamic] | [`MemorySettingsToken`](%gh-ij-android%/project-system/src/com/android/tools/idea/memorysettings/MemorySettingsToken.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.model.mergedManifestInfoToken"/></include> ![Non-Dynamic][non-dynamic] | [`MergedManifestInfoToken`](%gh-ij-android%/project-system/src/com/android/tools/idea/model/MergedManifestInfoToken.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.projectsystem.ApplicationProjectContextProvider"/></include> | [`ApplicationProjectContextProvider`](%gh-ij-android%/project-system/src/com/android/tools/idea/projectsystem/ApplicationProjectContext.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.projectsystem.androidIconProviderProjectToken"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidIconProviderProjectToken`](%gh-ij-android%/project-system/src/com/android/tools/idea/projectsystem/AndroidIconProviderProjectToken.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.projectsystem.dynamicAppFeatureOnFeatureToken"/></include> ![Non-Dynamic][non-dynamic] | [`DynamicAppFeatureOnFeatureToken`](%gh-ij-android%/project-system/src/com/android/tools/idea/projectsystem/DynamicAppFeatureOnFeatureToken.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.projectsystem.findDependenciesWithResourcesToken"/></include> ![Non-Dynamic][non-dynamic] | [`FindDependenciesWithResourcesToken`](%gh-ij-android%/project-system/src/com/android/tools/idea/projectsystem/FindDependenciesWithResourcesToken.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.projectsystem.libraryDependenciesTroubleInfoCollectorToken"/></include> ![Non-Dynamic][non-dynamic] | [`LibraryDependenciesTroubleInfoCollectorToken`](%gh-ij-android%/project-system/src/com/android/tools/idea/projectsystem/LibraryDependenciesTroubleInfoCollectorToken.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.projectsystem.pseudoLocalesToken"/></include> ![Non-Dynamic][non-dynamic] | [`PseudoLocalesToken`](%gh-ij-android%/project-system/src/com/android/tools/idea/projectsystem/PseudoLocalesToken.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.android.facet.resourceFolderManagerToken"/></include> ![Non-Dynamic][non-dynamic] | [`ResourceFolderManagerToken`](%gh-ij-android%/project-system/src/org/jetbrains/android/facet/ResourceFolderManagerToken.kt) |
### resources-explorer.xml
[`resources-explorer.xml`](%gh-ij-android%/android/resources/com/android/tools/idea/ui/resourcemanager/META-INF/resources-explorer.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.resourceImporter"/></include> ![Non-Dynamic][non-dynamic] | [`ResourceImporter`](%gh-ij-android%/android/src/com/android/tools/idea/ui/resourcemanager/plugin/ResourceImporter.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.resourceViewer"/></include> ![Non-Dynamic][non-dynamic] | [`DesignAssetRenderer`](%gh-ij-android%/android/src/com/android/tools/idea/ui/resourcemanager/plugin/DesignAssetRenderer.kt) |
### safeargs.common.xml
[`safeargs.common.xml`](%gh-ij-android%/nav/safeargs/common/resources/META-INF/safeargs.common.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.nav.safeargs.module.safeArgsModeToken"/></include> ![Non-Dynamic][non-dynamic] | [`SafeArgsModeToken`](%gh-ij-android%/nav/safeargs/common/src/com/android/tools/idea/nav/safeargs/module/SafeArgsModeModuleService.kt) |
### server-flags.xml
[`server-flags.xml`](%gh-ij-android%/server-flags/resources/META-INF/server-flags.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.mendelFlagsProvider"/></include> ![Non-Dynamic][non-dynamic] | [`MendelFlagsProvider`](%gh-ij-android%/server-flags/src/com/android/tools/idea/mendel/MendelFlagsProvider.kt) |
### testartifacts.xml
[`testartifacts.xml`](%gh-ij-android%/testartifacts/src/META-INF/testartifacts.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.testartifacts.instrumented.androidRunConfigurationToken"/></include> ![Non-Dynamic][non-dynamic] | [`AndroidRunConfigurationToken`](%gh-ij-android%/testartifacts/src/com/android/tools/idea/testartifacts/instrumented/AndroidRunConfigurationToken.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.android.tools.idea.testartifacts.screenshot.screenshotTestRunConfigurationToken"/></include> ![Non-Dynamic][non-dynamic] | [`ScreenshotTestRunConfigurationToken`](%gh-ij-android%/testartifacts/src/com/android/tools/idea/testartifacts/screenshot/ScreenshotTestRunConfigurationToken.kt) |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
[obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square
[experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square
[internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square
[project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square
[non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square
[dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square

View File

@ -17,104 +17,4 @@
<include from="app_code.md" element-id="appCodeSunset"/> <include from="app_code.md" element-id="appCodeSunset"/>
34 Extension Points and 6 Listeners for AppCode 2022.3 <include from="generated_appcode_extension_point_list.md" element-id="content"/>
<include from="snippets.topic" element-id="ep_list_legend"/>
## AppCode
### AppCode Listeners
| Topic | Listener |
|-------|----------|
| [CocoaPodsUtils#GEM_TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cocoapods.CocoaPodsUtils.GemListener) | `GemListener` |
| [CocoaPodsUtils#PODS_TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cocoapods.CocoaPodsUtils.PodsListener) | `PodsListener` |
| [AMDeviceManager#DEVICE_LISTENER_TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.execution.deviceSupport.AMDeviceListener) | `AMDeviceListener` |
| [XcodeProjectTestListener#TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.xcode.model.XcodeProjectTestListener) | `XcodeProjectTestListener` |
| [XcodeIsBrokenListener.Companion#XCODE_IS_BROKEN_TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.xcode.refresh.XcodeIsBrokenListener) | `XcodeIsBrokenListener` |
| [SwiftPackageManagerSettingsListener.Companion#TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.swift.swiftpm.SwiftPackageManagerSettingsListener) | `SwiftPackageManagerSettingsListener` |
### AppCodeCorePlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| [appcode.additionalRootsProvider](https://jb.gg/ipe?extensions=appcode.additionalRootsProvider) ![Non-Dynamic][non-dynamic] | `XcodeMetaDataAdditionalRootsProvider` |
| [appcode.attachDebuggerProvider](https://jb.gg/ipe?extensions=appcode.attachDebuggerProvider) ![Non-Dynamic][non-dynamic] | `AppCodeAttachDebuggerExtension` |
| [appcode.projectNameUpdateVeto](https://jb.gg/ipe?extensions=appcode.projectNameUpdateVeto) ![Non-Dynamic][non-dynamic] | `XcodeProjectNameUpdateVeto` |
| [appcode.projectRootNodeDelegateProvider](https://jb.gg/ipe?extensions=appcode.projectRootNodeDelegateProvider) ![Non-Dynamic][non-dynamic] | `AppCodeProjectRootNodeDelegateProvider` |
| [appcode.rootsInfoPostProcessor](https://jb.gg/ipe?extensions=appcode.rootsInfoPostProcessor) ![Non-Dynamic][non-dynamic] | `XcodeRootsInfoPostProcessor` |
| [appcode.runConfigurationExtension](https://jb.gg/ipe?extensions=appcode.runConfigurationExtension) ![Non-Dynamic][non-dynamic] | `AppCodeRunConfigurationExtension` |
| [appcode.xcodeExternalBuildProvider](https://jb.gg/ipe?extensions=appcode.xcodeExternalBuildProvider) ![Non-Dynamic][non-dynamic] | `XcodeExternalBuildProvider` |
| [appcode.xcodeTemplatePathsProvider](https://jb.gg/ipe?extensions=appcode.xcodeTemplatePathsProvider) ![Non-Dynamic][non-dynamic] | `XcodeTemplatePathsProvider` |
| [appcode.xcodeTemplatesProvider](https://jb.gg/ipe?extensions=appcode.xcodeTemplatesProvider) | `XcodeTemplatesProvider` |
### CocoaCommonPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| [appcode.breakpointHandlersProvider](https://jb.gg/ipe?extensions=appcode.breakpointHandlersProvider) ![Non-Dynamic][non-dynamic] | `IPhoneBreakpointHandlersProvider` |
| [appcode.lldbInitializerProvider](https://jb.gg/ipe?extensions=appcode.lldbInitializerProvider) ![Non-Dynamic][non-dynamic] | `LLDBInitializerProvider` |
| [cidr.cocoa.xcodeProjectFileProvider](https://jb.gg/ipe?extensions=cidr.cocoa.xcodeProjectFileProvider) | `XcodeProjectFileProvider` |
### CocoaPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| [cidr.cocoa.documentation.search.candidates.helper](https://jb.gg/ipe?extensions=cidr.cocoa.documentation.search.candidates.helper) | `XcodeDocumentationCandidateBasedSearchHelper` |
| [cidr.cocoa.documentation.search.usr.provider](https://jb.gg/ipe?extensions=cidr.cocoa.documentation.search.usr.provider) | `XcodeDocumentationUsrProvider` |
### SwiftLanguageInternalPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| [cidr.lang.swiftTypeInheritorsSearch](https://jb.gg/ipe?extensions=cidr.lang.swiftTypeInheritorsSearch) ![Non-Dynamic][non-dynamic] | [`QueryExecutor`](%gh-ic%/platform/core-api/src/com/intellij/util/QueryExecutor.java) |
| [swift.lang.libraryModuleImportRestriction](https://jb.gg/ipe?extensions=swift.lang.libraryModuleImportRestriction) | `SwiftLibraryModuleImportRestriction` |
| [swift.sdkInfo.extractor](https://jb.gg/ipe?extensions=swift.sdkInfo.extractor) | `OCResolveConfigurationSdkInfoExtractor` |
| [swift.sourcekit.blacklistedModulesProvider](https://jb.gg/ipe?extensions=swift.sourcekit.blacklistedModulesProvider) ![Non-Dynamic][non-dynamic] | `SourceKitBlacklistedModulesProvider` |
| [swift.sourcekit.dependenciesLoader](https://jb.gg/ipe?extensions=swift.sourcekit.dependenciesLoader) | `SourceKitPlatformBinaryDependenciesLoader` |
### SwiftPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| [cidr.lang.swiftCustomIncludePathProvider](https://jb.gg/ipe?extensions=cidr.lang.swiftCustomIncludePathProvider) ![Non-Dynamic][non-dynamic] | `SwiftCustomIncludePathProvider` |
| [cidr.lang.swiftSourceModuleProvider](https://jb.gg/ipe?extensions=cidr.lang.swiftSourceModuleProvider) ![Non-Dynamic][non-dynamic] | `SwiftSourceModuleProvider` |
| [swift.kotlinNative](https://jb.gg/ipe?extensions=swift.kotlinNative) ![Non-Dynamic][non-dynamic] | `KotlinNativeExtensionPoint` |
| [swift.lang.sourceKit.compileArgumentsCollector](https://jb.gg/ipe?extensions=swift.lang.sourceKit.compileArgumentsCollector) | `SwiftSourceKitCompileArgumentsCollector` |
| [swift.lang.sourceKit.dataGenerator](https://jb.gg/ipe?extensions=swift.lang.sourceKit.dataGenerator) ![Project-Level][project-level] | `SourceKitDataGenerator` |
| [swift.lang.sourceKit.declarationLocationValidator](https://jb.gg/ipe?extensions=swift.lang.sourceKit.declarationLocationValidator) | `SourceKitDeclarationLocationValidator` |
| [swift.lang.sourceKitFixExtension](https://jb.gg/ipe?extensions=swift.lang.sourceKitFixExtension) | `SwiftSourceKitFixExtension` |
| [swift.lang.swiftSupportProvider](https://jb.gg/ipe?extensions=swift.lang.swiftSupportProvider) | `SwiftSupportProvider` |
### SwiftPMCommon.xml
| Extension Point | Implementation |
|-----------------|----------------|
| [swift.packageManager.appleSdk.filter](https://jb.gg/ipe?extensions=swift.packageManager.appleSdk.filter) | `SwiftPackageLoadedAppleSdkFilter` |
| [swift.packageManager.environmentConfigurator](https://jb.gg/ipe?extensions=swift.packageManager.environmentConfigurator) | `SwiftPackageManagerEnvironmentConfigurator` |
| [swift.packageManager.launcher](https://jb.gg/ipe?extensions=swift.packageManager.launcher) | `SwiftPackageManagerConfigurationLauncher` |
| [swift.packageManager.modulemapsCollector](https://jb.gg/ipe?extensions=swift.packageManager.modulemapsCollector) | `SwiftPackageModuleMapsCollector` |
| [swift.packageManager.systemModuleResolver](https://jb.gg/ipe?extensions=swift.packageManager.systemModuleResolver) | `SwiftPackageManagerSystemModuleResolver` |
### SwiftTestsExtension.xml
| Extension Point | Implementation |
|-----------------|----------------|
| [test.cidr.OCCodeInsightDelegate](https://jb.gg/ipe?extensions=test.cidr.OCCodeInsightDelegate) ![Non-Dynamic][non-dynamic] | `OCCodeInsightDelegate` |
### XcodeModelCorePlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| [xcode.pbxReferenceBuildSettingsProvider](https://jb.gg/ipe?extensions=xcode.pbxReferenceBuildSettingsProvider) ![Non-Dynamic][non-dynamic] | `PBXReferenceBuildSettingProvider` |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
[obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square
[experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square
[internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square
[project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square
[non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square
[dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square

View File

@ -1,7 +1,5 @@
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. --> <!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- EP List Directory: /CIDR/ -->
# CLion Extension Point and Listener List # CLion Extension Point and Listener List
<link-summary>Overview of Extension Points and Listeners for CLion.</link-summary> <link-summary>Overview of Extension Points and Listeners for CLion.</link-summary>
@ -14,343 +12,4 @@
> See [](intellij_platform_extension_point_list.md) for IntelliJ Platform. > See [](intellij_platform_extension_point_list.md) for IntelliJ Platform.
149 Extension Points and 45 Listeners <include from="generated_clion_extension_point_list.md" element-id="content"/>
<include from="snippets.topic" element-id="ep_list_legend"/>
## CLion
### CLion - Listeners
| Topic | Listener |
|-------|----------|
| [`CubeMXManager#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.clion.embedded.stm32cubemx.CubeMXManager.CubeStatusListener) | `CubeStatusListener` |
| [`WestProjectListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.clion.west.WestProjectListener) | `WestProjectListener` |
| [`WestConfigListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.clion.west.config.WestConfigListener) | `WestConfigListener` |
| [`Listener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.clion.west.settings.WestSettings.Listener) | `Listener` |
| [`FileSymbolTablesCache#OUT_OF_CODE_BLOCK_TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.psi.util.PsiModificationTracker.Listener) ![Project-Level][project-level] | [`Listener`](%gh-ic%/platform/core-api/src/com/intellij/psi/util/PsiModificationTracker.java) |
| [`ConsistencyErrorTopicListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.rml.dfa.utils.ConsistencyErrorTopicListener) | `ConsistencyErrorTopicListener` |
| [`CMakeSettingsListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.cmake.CMakeSettingsListener) | `CMakeSettingsListener` |
| [`Listener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.cmake.python.CMakePythonSdkService.Companion.Listener) | `Listener` |
| [`Listener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.cmake.python.CMakePythonSettingListenerService.Companion.Listener) | `Listener` |
| [`Listener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.cmake.python.CMakePythonSettingsService.Listener) | `Listener` |
| [`CMakeWorkspaceListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.cmake.workspace.CMakeWorkspaceListener) | `CMakeWorkspaceListener` |
| [`CompDBSettingsListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.compdb.settings.CompDBSettingsListener) | `CompDBSettingsListener` |
| [`CLionExternalBuildManagerListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.execution.external.build.CLionExternalBuildManagerListener) | `CLionExternalBuildManagerListener` |
| [`ClionProjectToolManagerListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.execution.external.build.ClionProjectToolManagerListener) | `ClionProjectToolManagerListener` |
| [`MakefileBuildTargetsManagerListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.makefile.execution.build.MakefileBuildTargetsManagerListener) | `MakefileBuildTargetsManagerListener` |
| [`MakefileSettingsListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.makefile.settings.MakefileSettingsListener) | `MakefileSettingsListener` |
| [`CPPToolchainsConfigurable#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.toolchains.CPPToolchainsConfigurable.Listener) | `Listener` |
| [`CPPToolchainsListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.toolchains.CPPToolchainsListener) | `CPPToolchainsListener` |
| [`CidrBuildListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.execution.build.CidrBuildListener) ![Project-Level][project-level] | `CidrBuildListener` |
| [`CidrHighlighterNotifierService#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.execution.testing.CidrHighlighterNotifierService.LineMarkNotifier) | `LineMarkNotifier` |
| [`CidrTestScopeService#TEST_SCOPE_LISTENER_TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.execution.testing.CidrTestScopeService.TestScopeListener) | `TestScopeListener` |
| [`ExternalWorkspaceListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.external.system.workspace.ExternalWorkspaceListener) | `ExternalWorkspaceListener` |
| [`ClangLanguageServiceProviderListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.daemon.clang.clangd.ClangLanguageServiceProviderListener) | `ClangLanguageServiceProviderListener` |
| [`ClangServerListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.daemon.clang.clangd.lsp.server.ClangServerListener) | `ClangServerListener` |
| [`ClangTelemetryListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.daemon.clang.clangd.lsp.telemetry.ClangTelemetryListener) | `ClangTelemetryListener` |
| [`ClangMemoryUsageWatchDogListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.daemon.clang.clangd.memory.ClangMemoryUsageWatchDogListener) | `ClangMemoryUsageWatchDogListener` |
| [`OCLanguageServiceReparsingPassListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.daemon.clang.clangd.reparsing.OCLanguageServiceReparsingPassListener) | `OCLanguageServiceReparsingPassListener` |
| [`ClangdSettingsListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.daemon.clang.clangd.settings.ClangdSettingsListener) | `ClangdSettingsListener` |
| [`ClangdSettingsListener#TOPIC_UI`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.daemon.clang.clangd.settings.ClangdSettingsListener) | `ClangdSettingsListener` |
| [`CidrInjectionListener#INJECTION_TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.editor.CidrInjectionListener) | `CidrInjectionListener` |
| [`OCInclusionContextListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.preprocessor.OCInclusionContextListener) | `OCInclusionContextListener` |
| [`FileSymbolTableCacheListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTableCacheListener) | `FileSymbolTableCacheListener` |
| [`FileSymbolTablesPackListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesPackListener) | `FileSymbolTablesPackListener` |
| [`OCFileSymbolTableListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.symbols.symtable.OCFileSymbolTableListener) | `OCFileSymbolTableListener` |
| [`OCSymbolBuildingListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.symbols.symtable.building.OCSymbolBuildingListener) | `OCSymbolBuildingListener` |
| [`OCWorkspaceListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.lang.workspace.OCWorkspaceListener) | `OCWorkspaceListener` |
| [`Listener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.meson.project.MesonModelManager.Listener) | `Listener` |
| [`MesonSettingsListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.meson.settings.MesonSettingsListener) | `MesonSettingsListener` |
| [`PackageManagerEventListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.packagemanager.vcpkg.PackageManagerEventListener) | `PackageManagerEventListener` |
| [`CidrRootConfigurationListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.project.CidrRootConfigurationListener) | `CidrRootConfigurationListener` |
| [`CidrWorkspaceInstantaneousStateChangeListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.project.workspace.CidrWorkspaceInstantaneousStateChangeListener) ![Project-Level][project-level] | `CidrWorkspaceInstantaneousStateChangeListener` |
| [`CidrWorkspaceListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.project.workspace.CidrWorkspaceListener) | `CidrWorkspaceListener` |
| [`OCRootsSynchronizerListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.project.workspace.OCRootsSynchronizerListener) | `OCRootsSynchronizerListener` |
| [`RemoteDeploymentListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.system.RemoteDeploymentListener) | `RemoteDeploymentListener` |
| [`AllowedModules#INVALIDATION_TOPIC`](https://jb.gg/ipe/listeners?topics=java.lang.Runnable) | `Runnable` |
### CidrDebuggerPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.backendConsoleInjectionHelper"/></include> | `BackendConsoleInjectionHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.customDebuggerProvider"/></include> | `CidrCustomDebuggerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.debugProcessConfigurator"/></include> | `CidrDebugProcessConfigurator` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.debuggerMessagesProvider"/></include> ![Internal][internal] | `CidrDebuggerMessagesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.disasmRegisterProvider"/></include> ![Experimental][experimental] | `CidrDisasmRegisterProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.editorsExtension"/></include> | `CidrDebuggerEditorsExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.formatters.natvis.provider"/></include> | `NatvisFileProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.frameChildrenContributor"/></include> | `CidrFrameChildrenContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.fullValueEvaluatorProvider"/></include> ![Experimental][experimental] | `CidrFullValueEvaluatorProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.imageViewerProvider"/></include> | `CidrImageViewerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.languageSupport"/></include> | `CidrDebuggerLanguageSupport` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.lineBreakpointFileTypesProvider"/></include> | `CidrLineBreakpointFileTypesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.localVariablesFilterHandler"/></include> | `LocalVariablesFilterHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.modulesHandler"/></include> ![Experimental][experimental] | `CidrDebuggerModulesHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.nativeSelfProfilerPathProvider"/></include> | `NativeSelfProfilerPathProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.suspendThreadSelector"/></include> | `CidrSuspendThreadSelector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.valueRendererExtension"/></include> ![Non-Dynamic][non-dynamic] | `ValueRendererExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.valueRendererFactory"/></include> ![Non-Dynamic][non-dynamic] | `ValueRendererFactory` |
### CidrExecutionPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.buildConfigurationProvider"/></include> | `CidrBuildConfigurationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.projectTaskContextProvider"/></include> | `CidrProjectTaskContextProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.resolveConfigurationProvider"/></include> | `CidrResolveConfigurationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.runConfigurationExtension"/></include> ![Non-Dynamic][non-dynamic] | `CidrRunConfigurationExtensionBase` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.targetConfigurationHelper"/></include> | `CidrTargetConfigurationHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.testFrameworkDetector"/></include> ![Non-Dynamic][non-dynamic] | `CidrTestFrameworkDetector` |
### CidrLangBase.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.annotatorInspectionToolProvider"/></include> ![Non-Dynamic][non-dynamic] | `Supplier` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.dfaInspectionConfig"/></include> ![Non-Dynamic][non-dynamic] | `OCDFAInspectionConfig` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.externalInspections"/></include> | `OCExternalInspections` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.fileTypeHelper"/></include> ![Non-Dynamic][non-dynamic] | `OCFileTypeHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.knownModuleDetector"/></include> ![Internal][internal] | `CidrKnownModuleDetector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.langUtils"/></include> ![Non-Dynamic][non-dynamic] | `OCLanguageUtilsBase` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.languageKindHelper"/></include> ![Non-Dynamic][non-dynamic] | `OCLanguageKindCalculatorHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.languageKindProvider"/></include> ![Non-Dynamic][non-dynamic] | `OCLanguageKindProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.navigatableSymbolSearcherBridge"/></include> ![Non-Dynamic][non-dynamic] | `NavigatableSymbolSearcherBridge` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.newFileLangBackendHandler"/></include> ![Non-Dynamic][non-dynamic] | `OCNewFileLangBackendHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.newFileModelHandlerProvider"/></include> ![Non-Dynamic][non-dynamic] | `OCNewFileProjectModelHandlerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.ownModuleDetector"/></include> | `CidrOwnModuleDetector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.projectWizardFilesFormatter"/></include> ![Non-Dynamic][non-dynamic] | `CidrProjectWizardFilesFormatter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.standaloneInspectionToolProvider"/></include> ![Non-Dynamic][non-dynamic] | `Supplier` |
### CidrLangPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.annotatorHelper"/></include> ![Non-Dynamic][non-dynamic] | `OCAnnotatorHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.autoImportHelper"/></include> ![Non-Dynamic][non-dynamic] | `OCAutoImportHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.buildSymbolsVeto"/></include> ![Non-Dynamic][non-dynamic] | `OCBuildSymbolsVetoExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.callStructureProvider"/></include> ![Non-Dynamic][non-dynamic] | `PolyglotCallStructureProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.customHeaderProvider"/></include> ![Non-Dynamic][non-dynamic] | `CustomHeaderProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.doxygenExtension"/></include> ![Non-Dynamic][non-dynamic] | `Doxygen` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.externalResolver"/></include> | `OCExternalResolver` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.fileToBuildSymbolsCollector"/></include> ![Non-Dynamic][non-dynamic] | `FileToBuildSymbolsCollector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.foreignUsagesRenameProcessor"/></include> ![Non-Dynamic][non-dynamic] | `OCForeignUsagesRenameProcessor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.groupedFileNaming"/></include> ![Non-Dynamic][non-dynamic] | `OCGroupedFileNaming` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.includeHelper"/></include> ![Non-Dynamic][non-dynamic] | `OCIncludeHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.includeHierarchyProvider"/></include> ![Non-Dynamic][non-dynamic] | [`HierarchyProvider`](%gh-ic%/platform/lang-api/src/com/intellij/ide/hierarchy/HierarchyProvider.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.initialBuildingActivity"/></include> ![Non-Dynamic][non-dynamic] | `OCInitialBuildingActivity` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.languageKindContributor"/></include> ![Non-Dynamic][non-dynamic] | `OCLanguageKindContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.libraryFileConfigurationProvider"/></include> ![Non-Dynamic][non-dynamic] | `OCLibraryFileResolveConfigurationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.moduleBuilder.statisticsCollectorFactory"/></include> ![Non-Dynamic][non-dynamic] | `ModuleCacheBuilderStatisticsCollectorFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.moduleMapManagerRequestor"/></include> ![Non-Dynamic][non-dynamic] | `ModuleMapManagerRequestor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.moduleMapPlatformTypeProvider"/></include> ![Non-Dynamic][non-dynamic] | `ModuleMapPlatformTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.moduleMapRootSerializer"/></include> ![Non-Dynamic][non-dynamic] | `ModuleMapRootSerializer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.moduleMapSearchRootProvider"/></include> ![Non-Dynamic][non-dynamic] | `ModuleMapSearchRootProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.moduleResolver"/></include> ![Non-Dynamic][non-dynamic] | `OCModuleResolver` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.ocAdditionalFileSymbolTableBuilder"/></include> ![Non-Dynamic][non-dynamic] | `OCAdditionalFileSymbolTableBuilder` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.ocDirectInheritorsSearch"/></include> ![Non-Dynamic][non-dynamic] | [`QueryExecutor`](%gh-ic%/platform/core-api/src/com/intellij/util/QueryExecutor.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.ocInclusionContextLazyGetDefinitionProvider"/></include> ![Non-Dynamic][non-dynamic] | `OCInclusionContextLazyGetDefinitionProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.ocResolveRootAndConfigurationProvider"/></include> ![Non-Dynamic][non-dynamic] | `OCResolveRootAndConfigurationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.renameHandlerExtension"/></include> ![Non-Dynamic][non-dynamic] | `OCRenameHandlerExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.renameProcessorExtension"/></include> ![Non-Dynamic][non-dynamic] | `OCRenameProcessorExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.resourceCompletionProviders"/></include> ![Non-Dynamic][non-dynamic] | `OCResourceCompletionProviders` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.resourceFilesProvider"/></include> ![Non-Dynamic][non-dynamic] | `OCResourceFilesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.searchHelper"/></include> ![Non-Dynamic][non-dynamic] | `OCSearchHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.serializerProvider"/></include> ![Non-Dynamic][non-dynamic] | `SerializerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.symbolTableProvider"/></include> ![Non-Dynamic][non-dynamic] | `FileSymbolTableProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.testFramework"/></include> ![Non-Dynamic][non-dynamic] | `OCTestFramework` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.typeStructureProvider"/></include> ![Non-Dynamic][non-dynamic] | `PolyglotTypeStructureProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.requiredForCidrSmartMode"/></include> ![Non-Dynamic][non-dynamic] | `RequiredForCidrSmartMode` |
### CidrProjectModelPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.appleFrameworkFilter"/></include> ![Project-Level][project-level] | `AppleFrameworkFilter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.codeInsightUnavailabilityHighlighter"/></include> ![Non-Dynamic][non-dynamic] | `OCCodeInsightUnavailabilityHighlighter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.compilerKindProvider"/></include> | `OCCompilerKindProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.compilerResolver"/></include> ![Project-Level][project-level] | `OCCompilerResolver` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.fileScopeProvider"/></include> ![Non-Dynamic][non-dynamic] | `OCFileScopeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.fileWideHighlighter"/></include> ![Non-Dynamic][non-dynamic] ![DumbAware][dumb-aware] | `FileWideHighlighter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.headerSearchRootFactory"/></include> | `HeadersSearchRootFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.resolveConfigurationSelector"/></include> | `OCResolveConfigurationSelector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.projectModel.deserializingVetoCondition"/></include> | `OCWorkspaceDeserializingVetoCondition` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.projectModel.msvcPchHelper"/></include> | `OCMsvcPchHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.projectModel.runAfterOCWorkspaceIsInitialized"/></include> ![Non-Dynamic][non-dynamic] | `RunAfterOCWorkspaceIsInitialized` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.projectModel.runAfterOCWorkspaceIsLoaded"/></include> ![Non-Dynamic][non-dynamic] | `RunAfterOCWorkspaceIsLoaded` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.projectModel.supportedFileChecker"/></include> ![Non-Dynamic][non-dynamic] | `OCSupportedFileChecker` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.projectModel.unloadedResolveContextsManager"/></include> | `OCUnloadedResolveContextsManager` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.projectModel.workspaceLoadedCheck"/></include> | `OCWorkspaceLoadedChecker` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cidrCommandLineParser"/></include> ![Project-Level][project-level] | `CidrCommandLineParser` |
### CidrTestingPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.testing.potentialTestHolderRootsProvider"/></include> | `CidrPotentialTestHolderRootsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.lang.testing.testIndexContributor"/></include> | `CidrTestIndexContributor` |
### CidrToolchainsPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.devEnvironmentChecker"/></include> ![Non-Dynamic][non-dynamic] | `DevEnvironmentChecker` |
### CidrUtilExecutionPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.util.pluginPathMapper"/></include> | `CidrPluginPathMapper` |
### CidrWorkspaceModelCore.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.markRootActionAvailability"/></include> ![Non-Dynamic][non-dynamic] | `CidrMarkRootActionAvailability` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.project.is.known.checker"/></include> ![Non-Dynamic][non-dynamic] | `KnownProjectChecker` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.project.moduleNameSuffixProvider"/></include> ![Non-Dynamic][non-dynamic] | `WorkspaceModuleNameSuffixProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.project.notifications.editorNotificationWarningProvider"/></include> | `EditorNotificationWarningProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.project.popup.projectFixesProvider"/></include> | `ProjectFixesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.project.rootsBuilderProvider"/></include> ![Non-Dynamic][non-dynamic] | `Provider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.project.widget.widgetStatusProvider"/></include> | `WidgetStatusProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.project.workspaceProvider"/></include> ![Non-Dynamic][non-dynamic] | `CidrWorkspaceProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.cidr.fus.projectModelTypeProvider"/></include> | `CidrProjectModelTypeProvider` |
### ClangFormatPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.clangFormatProvider"/></include> ![Non-Dynamic][non-dynamic] | `ClangFormatChangeSettingsProvider` |
### CLionCMakeCore.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.buildStep"/></include> | `CMakeBuildProcessListenerCreator` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.cmakeSettingsFlavorProvider"/></include> | `CMakeSettingsFlavorProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.flavorProvider"/></include> | `CMakeFlavorProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.languageKindRecognizer"/></include> | `CMakeLanguageKindRecognizer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.loadOnStartupDependency"/></include> | `FutureProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.profileLoadContributor"/></include> | `FutureProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.runnerStep"/></include> ![Non-Dynamic][non-dynamic] | `CMakeRunnerStep` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.targetToConfigProvider"/></include> | `CMakeTargetToConfigProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.toolWindowFocusContributor"/></include> | `CMakeToolWindowFocusContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.workspace.compilerEnvironmentContributor"/></include> | `CMakeCompilerEnvironmentContributor` |
### CLionExecutionPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.debugger.targets.provider"/></include> | `DebugTargetsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="clion.buildToolWindowActivator.contributor"/></include> | `Contributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="clion.compoundConfigurationContext"/></include> | `CidrCompoundConfigurationContext` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="clion.externalConfigurationProvider"/></include> | `CLionExternalConfigurationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="clion.showAssembly.funcInfoProvider"/></include> | `CLionShowAssemblyFuncInfoProvider` |
### CLionMakefilePlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="clion.makefile.buildSystemDetector"/></include> | `MkBuildSystemDetector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="clion.makefile.projectPreConfigurator"/></include> | `MkProjectPreConfigurator` |
### CLionWizard.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.openWizardStepProvider"/></include> | `OpenWizardStepProvider` |
### CMakePsiPlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.bundledDocumentationProvider"/></include> | `CMakeBundledDocumentationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.completion.environmentProvider"/></include> | `CMakeEnvironmentVariableProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.cmake.fileLocationProvider"/></include> | `CMakeFileLocationProvider` |
### com.intellij.cidr.lang.clangd
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="clangd.clangTidyAnnotationApplier"/></include> | `ClangTidyAnnotationApplier` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="clangd.clangTidyResolveInfoProvider"/></include> | `ClangTidyResolveInfoProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="clangd.clangdAnnotatorUtil"/></include> | `ClangAnnotatorUtil` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="clangd.clangdBridge"/></include> | `ClangdBridgeInterface` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="clangd.externalCompletionProvider"/></include> ![DumbAware][dumb-aware] | `ExternalCompletionProvider` |
### com.intellij.cidr.uml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.uml.dragAndDropReceiver"/></include> | `UmlDiagramDragAndDropReceiver` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.uml.umlDiagramProvider"/></include> | `UmlDiagramLanguage` |
### intellij.cidr.coverage.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.coverage.coverageComposer"/></include> ![Non-Dynamic][non-dynamic] | `CidrCoverageComposer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.coverage.coverageComposerRunner"/></include> ![Non-Dynamic][non-dynamic] | `CidrCoverageComposerRunner` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.coverage.coverageDataFileProvider"/></include> ![Non-Dynamic][non-dynamic] | `CidrCoverageDataFileProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.coverage.coverageErrorProcessor"/></include> ![Non-Dynamic][non-dynamic] | `CidrCoverageErrorProcessor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.coverage.coverageViewExtensionProvider"/></include> ![Non-Dynamic][non-dynamic] | `CidrCoverageViewExtensionProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.coverage.gcovCoverageToolsProvider"/></include> ![Non-Dynamic][non-dynamic] | `GCovCoverageToolProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.coverage.llvmCoverageToolsProvider"/></include> ![Non-Dynamic][non-dynamic] | `LLVMCoverageToolsProvider` |
### intellij.cidr.profiling.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.profiler.memory.environmentProvider"/></include> ![Non-Dynamic][non-dynamic] | `MemoryProfileEnvironmentProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.profiler.memory.presentation"/></include> ![Non-Dynamic][non-dynamic] | `MemoryProfilePresentation` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.profiler.valgrind.disabler"/></include> | `ValgrindDisabler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.profiler.valgrind.executionContext"/></include> | `ValgrindExecutionContext` |
### intellij.cidr.translateCode.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.showAssembly.translatorProviders"/></include> | `CidrTranslatorProvider` |
### intellij.clion.featuresTrainer.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="training.clion.lessons"/></include> | `CLionExternalLessons` |
### intellij.clion.runFile.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.cpp.runFile.entryPointDetector"/></include> | `CppFileEntryPointDetector` |
### intellij.clion.west.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.clion.west.westPathContributor"/></include> | `WestPathContributor` |
### intellij.rml.dfa.devtools.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rml.dfa.devtools.debug.provider"/></include> | `DfaDebugProvider` |
### intellij.rml.dfa.impl.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rml.dfa.impl.DfaDebugExtension"/></include> | `DfaDebugExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rml.dfa.ir.serialization.provider"/></include> | `IrSerializationProvider` |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
[obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square
[experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square
[internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square
[project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square
[non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square
[dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square

View File

@ -1,7 +1,5 @@
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. --> <!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- EP List Directory: /dbe/ -->
# DataGrip Extension Point and Listener List # DataGrip Extension Point and Listener List
<link-summary>Overview of Extension Points and Listeners for DataGrip.</link-summary> <link-summary>Overview of Extension Points and Listeners for DataGrip.</link-summary>
@ -14,153 +12,4 @@
> See [](intellij_platform_extension_point_list.md) for IntelliJ Platform. > See [](intellij_platform_extension_point_list.md) for IntelliJ Platform.
77 Extension Points and 23 Listeners <include from="generated_data_grip_extension_point_list.md" element-id="content"/>
<include from="snippets.topic" element-id="ep_list_legend"/>
## DataGrip
### DataGrip - Listeners
| Topic | Listener |
|-------|----------|
| [`JdbcDriverManager#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.console.JdbcDriverManager.Listener) | `Listener` |
| [`DatabaseSessionManager#topic`](https://jb.gg/ipe/listeners?topics=com.intellij.database.console.session.DatabaseSessionManagerListener) | `DatabaseSessionManagerListener` |
| [`DatabaseSession.Companion#topic`](https://jb.gg/ipe/listeners?topics=com.intellij.database.console.session.DatabaseSessionStateListener) | `DatabaseSessionStateListener` |
| [`AbstractDataSource#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.dataSource.AbstractDataSource.Listener) | `Listener` |
| [`DataSourceModelStorage#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.dataSource.DataSourceModelStorage.Listener) | `Listener` |
| [`DataSourceStorage#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.dataSource.DataSourceStorage.Listener) | `Listener` |
| [`DatabaseConnectionManager#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.dataSource.DatabaseConnectionManager.Listener) | `Listener` |
| [`DatabaseArtifactManager#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.dataSource.artifacts.DatabaseArtifactManager.ArtifactListener) | `ArtifactListener` |
| [`DataSourceTestConnectionManager#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.dataSource.ui.DataSourceTestConnectionManager.Listener) | `Listener` |
| [`DatabaseTopics#AUDIT_TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.datagrid.DataAuditor) | `DataAuditor` |
| [`DatabaseTopics#RESPONSE_TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.datagrid.DataConsumer) | [`DataConsumer`](%gh-ic%/grid/core-impl/src/datagrid/DataConsumer.java) |
| [`DatabaseTopics#REQUEST_TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.datagrid.DataProducer) | [`DataProducer`](%gh-ic%/grid/core-impl/src/datagrid/DataProducer.java) |
| [`ImportHead#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.dbimport.ImportHead.Listener) | `Listener` |
| [`DbImportDialog#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.dbimport.editor.DbImportDialog.Listener) | `Listener` |
| [`ScriptGeneratorDiagnosticListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.dialects.base.generator.ScriptGeneratorDiagnosticListener) | `ScriptGeneratorDiagnosticListener` |
| [`DatabaseModelLoader#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.introspection.DatabaseModelLoader.Listener) | `Listener` |
| [`DataSourceManager#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.psi.DataSourceManager.Listener) | `Listener` |
| [`DbPsiFacade#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.psi.DbPsiFacade.Listener) | `Listener` |
| [`DatabaseColorManager#COLOR_CHANGE_TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.view.DatabaseColorManager.ColorChangeListener) | `ColorChangeListener` |
| [`DatabaseConfigEditor#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.database.view.ui.DatabaseConfigEditor.Listener) | `Listener` |
| [`SqlRoutineIndex#topic`](https://jb.gg/ipe/listeners?topics=com.intellij.sql.SqlRoutineIndex.SqlRoutineIndexListener) | `SqlRoutineIndexListener` |
| [`DatabaseSettings#TOPIC`](https://jb.gg/ipe/listeners?topics=java.lang.Runnable) | `Runnable` |
| [`DatabaseViewOptions#TOPIC`](https://jb.gg/ipe/listeners?topics=java.lang.Runnable) | `Runnable` |
### DatabaseConnectivity.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.artifactRepositoriesProvider"/></include> | `ArtifactRepositoriesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.configValidator"/></include> | `DatabaseConfigValidator` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.dataConsumer"/></include> | [`DataConsumer`](%gh-ic%/grid/core-impl/src/datagrid/DataConsumer.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.dataProducer"/></include> | [`DataProducer`](%gh-ic%/grid/core-impl/src/datagrid/DataProducer.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.errorProvider"/></include> ![Non-Dynamic][non-dynamic] | `ConsoleErrorProviderFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.gridHelper"/></include> | [`CoreGridHelper`](%gh-ic%/grid/core-impl/src/datagrid/CoreGridHelper.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.jdbcHelper"/></include> | `JdbcHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.jdbcMetadataWrapper"/></include> | `MDFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.jdbcSourceLoader"/></include> | `JdbcSourceLoader` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.objectEditorFactory"/></include> ![Non-Dynamic][non-dynamic] | `DbmsObjectEditorFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.objectEditorModelFactory"/></include> ![Non-Dynamic][non-dynamic] | `DbmsObjectEditorModelFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.queryParametersProvider"/></include> | `QueryParametersProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.queryValidator"/></include> | `DbQueryValidator` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.selectInProvider"/></include> | `Extension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.toDatabaseScriptTranslator"/></include> | `ToDatabaseScriptTranslator` |
### DatabaseCore.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.addToHSet"/></include> | `n/a` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.artifactsConfig"/></include> ![Non-Dynamic][non-dynamic] | `n/a` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.connectionInterceptor"/></include> ![Experimental][experimental] | `DatabaseConnectionInterceptor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.consoleProvider"/></include> | `PersistenceConsoleProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.consoleRunContextParametersTuner"/></include> | `ConsoleRunContextParametersTuner` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.dataAuditor"/></include> | `DataAuditor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.dataImporter"/></include> | `ImportManager` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.dataSourceDetector"/></include> | `DataSourceDetector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.dataSourceManager"/></include> ![Project-Level][project-level] | `DataSourceManager` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.dbms"/></include> ![Non-Dynamic][non-dynamic] | `n/a` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.definitionProvider"/></include> | `DefinitionProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.dmlHelper"/></include> | `DmlHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.domainRegistry"/></include> | `DomainRegistry` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.driversConfig"/></include> ![Non-Dynamic][non-dynamic] | `n/a` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.errorHandler"/></include> | `DatabaseErrorHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.executionEnvironmentHelper"/></include> | `ExecutionEnvironmentHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.explainPlanProvider"/></include> | `ExplainPlanProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.extensionFallback"/></include> | `n/a` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.geoHelper"/></include> | `GeoHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.gridColumnsManagerFactory"/></include> | `GridColumnsManagerFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.hookUpHelper"/></include> | `HookUpHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.introspector"/></include> ![Internal][internal] | `Factory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.introspectorStatsProvider"/></include> | `DBIntrospectorStatsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.linkedDataSourceHelper"/></include> | `LinkedDataSourceHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.modelExternalData"/></include> ![Non-Dynamic][non-dynamic] | `n/a` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.modelFacade"/></include> ![Non-Dynamic][non-dynamic] | `ModelFacade` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.modelRelationProvider"/></include> | `ModelRelationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.namingService"/></include> | `Provider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.optionProvider"/></include> | `DbOptionProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.parameterPatternProvider"/></include> | `DatabaseParameterPatternProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.processParamProvider"/></include> | `ConsoleConfigurationParamProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.routineExecutionHelper"/></include> | `RoutineExecutionHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.runtimeErrorFixProvider"/></include> | [`RuntimeErrorActionProvider`](%gh-ic%/grid/core-impl/src/connection/throwable/info/RuntimeErrorActionProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.scriptGenerator"/></include> | `ScriptGenerator` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.sqlObjectBuilder"/></include> | `SqlObjectBuilder` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.synchronizeHandler"/></include> | `SynchronizeHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.typeSystem"/></include> | `DasTypeSystem` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.urlEditorInspector"/></include> | `UrlEditorInspector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.urlParamEditorProvider"/></include> ![Non-Dynamic][non-dynamic] | `TypeDescriptorFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.virtualFileDataSourceProvider"/></include> | `VirtualFileDataSourceProvider` |
### DatabasePlugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.activeConnectionInfoProvider"/></include> ![Internal][internal] | `DbActiveConnectionInfoProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.cli.runTargetProvider"/></include> | `CliRunTargetProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.databaseViewStructureExtension"/></include> | `DvStructureExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.debuggerFacade"/></include> | `SqlDebuggerFacade` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.predicatesHelper"/></include> | `PredicatesHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.runConsoleAvailable"/></include> | `RunQueryIntentionActionAvailable` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.schemaDiffCustomization"/></include> | `SchemaDiffCustomization` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.urlParamEditorUiProvider"/></include> ![Non-Dynamic][non-dynamic] | `TypeDescriptorUiFactory` |
### intellij.grid.scripting.impl.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.grid.scripting.ivyLocalRepository"/></include> | `IvyLocalRepository` |
### mongo.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.mongo.resolveHelper"/></include> | `MongoJSResolveHelper` |
### SqlPluginCore.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.dialect"/></include> ![Non-Dynamic][non-dynamic] | `DatabaseDialect` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.database.sqlEffectAnalyzer"/></include> ![Non-Dynamic][non-dynamic] | `SqlAffectAnalyzer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.sql.dataSourceProvider"/></include> | `DataSourceProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.sql.dialect"/></include> ![Non-Dynamic][non-dynamic] | `SqlLanguageDialect` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.sql.dialectCodeStyleProvider"/></include> | `SqlDialectCodeStyleProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.sql.evaluationHelper"/></include> | `EvaluationHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.sql.executionFlowAnalyzerProvider"/></include> | `ExecutionFlowAnalyzerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.sql.formatterHelper"/></include> | `SqlFormatterHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.sql.inspectionSuppressorDelegate"/></include> | `SqlInspectionSuppressorDelegate` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.sql.membersHelper"/></include> | `SqlMembersHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.sql.navigationHelper"/></include> | `NavigationHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.sql.resolveExtension"/></include> | `SqlResolveExtension` |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
[obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square
[experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square
[internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square
[project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square
[non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square
[dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square

View File

@ -1,7 +1,5 @@
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. --> <!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- EP List Directory: /goland/ -->
# GoLand Extension Point and Listener List # GoLand Extension Point and Listener List
<link-summary>Overview of Extension Points and Listeners for GoLand.</link-summary> <link-summary>Overview of Extension Points and Listeners for GoLand.</link-summary>
@ -14,56 +12,4 @@
See [](intellij_platform_extension_point_list.md) for IntelliJ Platform. See [](intellij_platform_extension_point_list.md) for IntelliJ Platform.
17 Extension Points and 6 Listeners <include from="generated_goland_extension_point_list.md" element-id="content"/>
<include from="snippets.topic" element-id="ep_list_legend"/>
## GoLand
### GoLand Listeners
| Topic | Listener |
|-------|----------|
| [`GoLibrariesService#LIBRARIES_TOPIC`](https://jb.gg/ipe/listeners?topics=com.goide.project.GoLibrariesService.LibrariesListener) | `LibrariesListener` |
| [`GoModuleSettings#BUILD_TARGET_TOPIC`](https://jb.gg/ipe/listeners?topics=com.goide.project.GoModuleSettings.BuildTargetListener) ![Project-Level][project-level] | `BuildTargetListener` |
| [`GoModuleSettings#GO_SUPPORT_TOPIC`](https://jb.gg/ipe/listeners?topics=com.goide.project.GoModuleSettings.GoSupportListener) ![Project-Level][project-level] | `GoSupportListener` |
| [`GoProjectLifecycleListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.goide.project.GoProjectLifecycleListener) | `GoProjectLifecycleListener` |
| [`VgoUpdateProgressManager#UPDATE_PROGRESS_TOPIC`](https://jb.gg/ipe/listeners?topics=com.goide.vgo.VgoStatusTracker.VgoUpdateProgressManager.VgoModuleUpdateProgressListener) ![Project-Level][project-level] | `VgoModuleUpdateProgressListener` |
| [`VgoProjectSettings#VGO_INTEGRATION_TOPIC`](https://jb.gg/ipe/listeners?topics=com.goide.vgo.configuration.VgoProjectSettings.IntegrationListener) | `IntegrationListener` |
### goland.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.dlv.positionConverterFactory"/></include> | `DlvPositionConverterFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.documentation.packageVersionProvider"/></include> | `GoDocumentationPackageVersionProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.execution.defaultTargetEnvironmentProvider"/></include> | `DefaultTargetEnvironmentProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.executorExtension"/></include> | `GoExecutorExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.highlighting.errorAnnotatorSuppressor"/></include> | `GoErrorAnnotatorSuppressor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.importResolver"/></include> | `GoImportResolver` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.importsFilter"/></include> | `GoImportsFilter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.packageFactory"/></include> | `GoPackageFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.runConfigurationExtension"/></include> | `GoRunConfigurationExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.sdk.sdkVetoer"/></include> | `GoBasedSdkVetoer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.sdk.targetSdkVersionProvider"/></include> | `GoTargetSdkVersionProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.sdkProvider"/></include> | `GoSdkProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.support"/></include> | `GoLangSupport` |
### openapi.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.documentation.additionalDocumentationProvider"/></include> | `GoAdditionalDocumentationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.importPathsProvider"/></include> | `GoImportPathsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.imports.weigher"/></include> | `GoImportsWeigher` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.goide.rootsProvider"/></include> | `GoRootsProvider` |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
[obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square
[experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square
[internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square
[project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square
[non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square
[dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square

View File

@ -1,12 +1,5 @@
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. --> <!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!--
EP List Directory:
/contrib/
There must be no top-level "Listeners" group, adjust ExtensionPointAnalyzerAction.Group accordingly.
-->
# Open Source Plugins Extension Point and Listener List # Open Source Plugins Extension Point and Listener List
<link-summary>Overview of Extension Points and Listeners for OSS plugins bundled with IntelliJ IDEA Ultimate and other IDEs.</link-summary> <link-summary>Overview of Extension Points and Listeners for OSS plugins bundled with IntelliJ IDEA Ultimate and other IDEs.</link-summary>
@ -23,289 +16,4 @@ Overview of Extension Points and Listeners for open source plugins available in
IntelliJ Platform version: %ijPlatform%. IntelliJ Platform version: %ijPlatform%.
68 Extension Points and 10 Listeners <include from="generated_oss_plugins_extension_point_list.md" element-id="content"/>
<include from="snippets.topic" element-id="ep_list_legend"/>
## IntelliJ Open Source Plugins
### AngularJS
[`AngularJS`](%gh-ij-plugins%/Angular/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.angular2.configProvider"/></include> | [`AngularConfigProvider`](%gh-ij-plugins%/Angular/src/org/angular2/cli/config/AngularConfigProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.angular2.entitiesSource"/></include> | [`Angular2EntitiesSource`](%gh-ij-plugins%/Angular/src/org/angular2/entities/Angular2EntitiesSource.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.angular2.frameworkHandler"/></include> ![Experimental][experimental] | [`Angular2FrameworkHandler`](%gh-ij-plugins%/Angular/src/org/angular2/entities/Angular2FrameworkHandler.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.angular2.importsHandler"/></include> | [`Angular2ImportsHandler`](%gh-ij-plugins%/Angular/src/org/angular2/codeInsight/imports/Angular2ImportsHandler.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.angular2.jsHandlersFactory"/></include> | [`Angular2JSHandlersFactory`](%gh-ij-plugins%/Angular/src/org/angular2/codeInsight/Angular2HandlersFactory.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.angular2.templateScopesProvider"/></include> | [`Angular2TemplateScopesProvider`](%gh-ij-plugins%/Angular/src/org/angular2/codeInsight/template/Angular2TemplateScopesProvider.kt) |
### com.thoughtworks.gauge
[`com.thoughtworks.gauge`](%gh-ij-plugins%/gauge/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.thoughtworks.gauge.moduleImporter"/></include> | [`GaugeModuleImporter`](%gh-ij-plugins%/gauge/src/com/thoughtworks/gauge/wizard/GaugeModuleImporter.java) |
### gherkin
[`gherkin`](%gh-ij-plugins%/cucumber/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.cucumber.injector.injectorExtensionPoint"/></include> | [`GherkinInjectorExtensionPoint`](%gh-ij-plugins%/cucumber/src/org/jetbrains/plugins/cucumber/injector/GherkinInjectorExtensionPoint.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.cucumber.steps.cucumberJvmExtensionPoint"/></include> | [`CucumberJvmExtensionPoint`](%gh-ij-plugins%/cucumber/src/org/jetbrains/plugins/cucumber/CucumberJvmExtensionPoint.java) |
### idea.plugin.protoeditor
[`idea.plugin.protoeditor`](%gh-ij-plugins%/protobuf/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.protobuf.codeImplementationSearcher"/></include> | [`PbCodeImplementationSearcher`](%gh-ij-plugins%/protobuf/protoeditor-core/src/com/intellij/protobuf/ide/gutter/PbGeneratedCodeConverterProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.protobuf.fileResolveProvider"/></include> ![Project-Level][project-level] | [`FileResolveProvider`](%gh-ij-plugins%/protobuf/protoeditor-core/src/com/intellij/protobuf/lang/resolve/FileResolveProvider.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.protobuf.generatedCodeConverterProvider"/></include> | [`PbGeneratedCodeConverterProvider`](%gh-ij-plugins%/protobuf/protoeditor-core/src/com/intellij/protobuf/ide/gutter/PbGeneratedCodeConverterProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.protobuf.nameGeneratorContributor"/></include> | [`NameGeneratorContributor`](%gh-ij-plugins%/protobuf/protoeditor-core/src/com/intellij/protobuf/lang/names/NameGeneratorContributor.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.protobuf.projectSettingsConfigurator"/></include> ![Project-Level][project-level] | [`ProjectSettingsConfigurator`](%gh-ij-plugins%/protobuf/protoeditor-core/src/com/intellij/protobuf/ide/settings/ProjectSettingsConfigurator.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.protobuf.schemaProvider"/></include> ![Project-Level][project-level] | [`SchemaProvider`](%gh-ij-plugins%/protobuf/protoeditor-core/src/com/intellij/protobuf/lang/resolve/SchemaProvider.java) |
### intellij.prettierJS
[`intellij.prettierJS`](%gh-ij-plugins%/prettierJS/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.prettierjs.codeStyleInstaller"/></include> | [`PrettierCodeStyleInstaller`](%gh-ij-plugins%/prettierJS/src/com/intellij/prettierjs/codeStyle/PrettierCodeStyleInstaller.java) |
### name.kropp.intellij.makefile
[`name.kropp.intellij.makefile`](%gh-ij-plugins%/makefile/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.makefile.toolWindowStripeController"/></include> | [`MakefileToolWindowStripeController`](%gh-ij-plugins%/makefile/src/com/jetbrains/lang/makefile/toolWindow/MakefileToolWindowStripeController.kt) |
### org.jetbrains.plugins.vue
[`org.jetbrains.plugins.vue`](%gh-ij-plugins%/vuejs/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.vuejs.containerInfoProvider"/></include> | [`VueContainerInfoProvider`](%gh-ij-plugins%/vuejs/src/org/jetbrains/vuejs/model/source/VueContainerInfoProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.vuejs.templateScopesProvider"/></include> | [`VueTemplateScopesProvider`](%gh-ij-plugins%/vuejs/src/org/jetbrains/vuejs/codeInsight/template/VueTemplateScopesProvider.kt) |
### tslint
[`tslint`](%gh-ij-plugins%/tslint/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.tslint.configDetector"/></include> | [`TsLintConfigDetector`](%gh-ij-plugins%/tslint/src/com/intellij/lang/javascript/linter/tslint/config/TsLintConfigDetector.java) |
## Dart Plugin
### Dart Plugin Listeners
| Topic | Listener |
|-------|----------|
| [`DartAnalysisServerMessages#DART_ANALYSIS_TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.lang.dart.analyzer.DartAnalysisServerMessages.DartAnalysisNotifier) | [`DartAnalysisNotifier`](%gh-ij-plugins%/Dart/src/com/jetbrains/lang/dart/analyzer/DartAnalysisServerMessages.java) |
### Dart
[`Dart`](%gh-ij-plugins%/Dart/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="Dart.completionExtension"/></include> | [`DartCompletionExtension`](%gh-ij-plugins%/Dart/src/com/jetbrains/lang/dart/ide/completion/DartCompletionExtension.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="Dart.completionTimerExtension"/></include> | [`DartCompletionTimerExtension`](%gh-ij-plugins%/Dart/src/com/jetbrains/lang/dart/ide/completion/DartCompletionTimerExtension.java) |
## Devicetree Plugin
### Devicetree Plugin Listeners
| Topic | Listener |
|-------|----------|
| [`ChangeListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.dts.settings.DtsSettings.ChangeListener) ![Project-Level][project-level] | [`ChangeListener`](%gh-ij-plugins%/dts/src/com/intellij/dts/settings/DtsSettings.kt) |
### com.intellij.dts
[`com.intellij.dts`](%gh-ij-plugins%/dts/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.clion.dtsUtil"/></include> | [`DtsCLionUtil`](%gh-ij-plugins%/dts/src/com/intellij/dts/clion/DtsCLionUtil.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.dts.settings.disabler"/></include> | [`DtsSettingsDisabler`](%gh-ij-plugins%/dts/src/com/intellij/dts/settings/DtsSettingsDisabler.kt) |
### dts-withCLion.xml
[`dts-withCLion.xml`](%gh-ij-plugins%/dts/resources/META-INF/dts-withCLion.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.dts.cmake.configurationDataProvider"/></include> | [`DtsCMakeModelConfigurationDataProvider`](%gh-ij-plugins%/dts/src/com/intellij/dts/clion/impl/DtsCMakeModelConfigurationDataProvider.kt) |
## Flex Plugin
### Flex Plugin Listeners
| Topic | Listener |
|-------|----------|
| [`FlexBuildConfigurationChangeListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.lang.javascript.flex.projectStructure.model.impl.FlexBuildConfigurationChangeListener) | [`FlexBuildConfigurationChangeListener`](%gh-ij-plugins%/flex/src/com/intellij/lang/javascript/flex/projectStructure/model/impl/FlexBuildConfigurationChangeListener.java) |
### com.intellij.flex
[`com.intellij.flex`](%gh-ij-plugins%/flex/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.flex.breakpoint.type.provider"/></include> ![Non-Dynamic][non-dynamic] | [`BreakpointTypeProvider`](%gh-ij-plugins%/flex/src/com/intellij/lang/javascript/flex/debug/FlexBreakpointsHandler.java) |
## OSGi Plugin
### OSGi Plugin Listeners
| Topic | Listener |
|-------|----------|
| [`FrameworkDefinitionListener#TOPIC`](https://jb.gg/ipe/listeners?topics=org.osmorc.settings.FrameworkDefinitionListener) | [`FrameworkDefinitionListener`](%gh-ij-plugins%/osmorc/src/org/osmorc/settings/FrameworkDefinitionListener.java) |
### Osmorc
[`Osmorc`](%gh-ij-plugins%/osmorc/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="Osmorc.frameworkIntegrator"/></include> | [`FrameworkIntegrator`](%gh-ij-plugins%/osmorc/src/org/osmorc/frameworkintegration/FrameworkIntegrator.java) |
## Perforce Helix Core
### Perforce Helix Core Listeners
| Topic | Listener |
|-------|----------|
| [`PerforceSettings#OFFLINE_MODE_EXITED`](https://jb.gg/ipe/listeners?topics=java.lang.Runnable) | `Runnable` |
| [`P4ConfigListener#TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.idea.perforce.perforce.connections.P4ConfigListener) ![Internal][internal] ![Project-Level][project-level] | [`P4ConfigListener`](%gh-ij-plugins%/PerforceIntegration/src/org/jetbrains/idea/perforce/perforce/connections/PerforceExternalConfigTracker.kt) |
| [`P4EnvHelper#P4_ENV_CHANGED`](https://jb.gg/ipe/listeners?topics=org.jetbrains.idea.perforce.perforce.connections.P4EnvHelper.P4EnvListener) ![Project-Level][project-level] | [`P4EnvListener`](%gh-ij-plugins%/PerforceIntegration/src/org/jetbrains/idea/perforce/perforce/connections/P4EnvHelper.java) |
### PerforceDirectPlugin
[`PerforceDirectPlugin`](%gh-ij-plugins%/PerforceIntegration/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="Perforce.P4ConnectionParametersProvider"/></include> ![Experimental][experimental] | [`P4ConnectionParametersProvider`](%gh-ij-plugins%/PerforceIntegration/src/org/jetbrains/idea/perforce/perforce/connections/P4ConnectionParametersProvider.kt) |
## PlatformIO for CLion Plugin
### PlatformIO for CLion Plugin Listeners
| Topic | Listener |
|-------|----------|
| [`PlatformioServiceKt#PLATFORMIO_UPDATES_TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.embedded.platformio.PlatformioUpdatesNotifier) ![Project-Level][project-level] | [`PlatformioUpdatesNotifier`](%gh-ij-plugins%/platformio/src/com/jetbrains/cidr/cpp/embedded/platformio/PlatformioService.kt) |
| [`PlatformioSettingsListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.embedded.platformio.project.PlatformioSettingsListener) | [`PlatformioSettingsListener`](%gh-ij-plugins%/platformio/src/com/jetbrains/cidr/cpp/embedded/platformio/project/PlatformioSettings.kt) |
## Qodana Plugin
### intellij.qodana.coverage.xml
[`intellij.qodana.coverage.xml`](%gh-ij-plugins%/qodana/coverage/resources/intellij.qodana.coverage.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.qodana.coverage.cloudArtifactsProcessor"/></include> | [`CoverageCloudArtifactsProcessor`](%gh-ij-plugins%/qodana/coverage/src/org/jetbrains/qodana/staticAnalysis/inspections/coverage/CoverageCloudArtifactsProcessor.kt) |
### org.intellij.qodana
[`org.intellij.qodana`](%gh-ij-plugins%/qodana/core/resources/META-INF/plugin.xml)
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.azureCiConfigUpdateHandler"/></include> | [`AzureCIConfigHandler`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/ci/AzureCIConfigHandler.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.bitbucketCiConfigUpdateHandler"/></include> | [`BitbucketCIConfigHandler`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/ci/BitbucketCIConfigHandler.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.circleCiConfigUpdateHandler"/></include> | [`CircleCIConfigHandler`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/ci/CircleCIConfigHandler.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.compiledInspectionKtsPostProcessorFactory"/></include> | [`CompiledInspectionKtsPostProcessorFactory`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/inspectionKts/InspectionKtsFileStatus.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.configUpdateHandler"/></include> | [`ConfigUpdateHandler`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/ConfigUpdateHandler.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.contextMarginProvider"/></include> | [`ContextMarginProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/sarif/ContextMarginProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.customPluginsForKtsClasspathProvider"/></include> | [`CustomPluginsForKtsClasspathProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/inspectionKts/CustomPluginsForKtsClasspathProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.cyclomaticComplexityFileVisitor"/></include> | [`CyclomaticComplexityMetricFileVisitor`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/inspections/metrics/inspections/cyclomaticComplexity/CyclomaticComplexityMetricFileVisitor.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.defaultQodanaYamlItemProvider"/></include> | [`QodanaYamlItemProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/settings/QodanaYamlItem.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.dynamicInspectionsInitializer"/></include> | [`DynamicInspectionInitializer`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/inspectionKts/DynamicInspectionInitializer.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.externalToolsConfigurationProvider"/></include> | [`ExternalToolsConfigurationProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/inspections/runner/externalTools/ExternalToolsConfigurationProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.externalToolsProvider"/></include> | [`ExternalToolsProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/inspections/runner/externalTools/ExternalToolsProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.githubCiConfigHandler"/></include> | [`GitHubCIConfigHandler`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/ci/GitHubCIConfigHandler.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.gitlabCiConfigHandler"/></include> | [`GitLabCIConfigHandler`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/ci/GitLabCIConfigHandler.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.globalOutputConsumer"/></include> ![Internal][internal] | [`GlobalOutputConsumer`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/inspections/runner/globalOutput/GlobalOutputConsumer.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.highlightingListener"/></include> | [`QodanaHighlightingListener`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/highlight/QodanaHighlightingListener.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.inspectionKtsDefaultImportProvider"/></include> | [`InspectionKtsDefaultImportProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/inspectionKts/imports.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.inspectionKtsExampleProvider"/></include> | [`Provider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/inspectionKts/examples/InspectionKtsExample.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.inspectionKtsTemplateProvider"/></include> | [`Provider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/inspectionKts/templates/InspectionKtsTemplate.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.inspectionProfileProvider"/></include> | [`QodanaInspectionProfileProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/profile/QodanaInspectionProfileProvider.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.jenkinsConfigHandler"/></include> | [`JenkinsConfigHandler`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/ci/JenkinsConfigHandler.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.metricTable"/></include> | [`MetricTable`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/inspections/metrics/database/tables/MetricTable.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.metricsAggregator"/></include> | [`MetricAggregator`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/inspections/metrics/aggregators/MetricAggregator.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.problemsViewModuleSupport"/></include> | [`QodanaGroupByModuleSupport`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/ui/problemsView/QodanaGroupByModuleSupport.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.projectDescriber"/></include> | [`QodanaProjectDescriber`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/projectDescription/QodanaProjectDescriber.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.psiViewerSupport"/></include> | [`PsiViewerSupport`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/inspectionKts/ui/psi-viewer.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.qodanaHighlightInfoComparator"/></include> | [`QodanaHighlightInfoComparator`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/QodanaHighlightInfoComparator.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.qodanaHighlightInfoTypeProvider"/></include> | [`QodanaHighlightInfoTypeProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/QodanaHighlightInfoTypeProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.qodanaHighlightingSupportInfoProvider"/></include> | [`QodanaHighlightingSupportInfoProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/QodanaHighlightingSupportInfoProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.qodanaScriptFactory"/></include> ![Internal][internal] | [`QodanaScriptFactory`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/script/QodanaScriptFactory.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.quickFixesStrategyProvider"/></include> | [`QuickFixesStrategyProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/sarif/QuickFixesStrategyProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.reportMetadataArtifact"/></include> | [`ReportMetadataArtifactProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/report/LoadedReport.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.repositoryInfoProvider"/></include> | [`RepositoryInfoProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/RepositoryInfoProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.repositoryRevisionProvider"/></include> | [`RepositoryRevisionProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/RepositoryRevisionProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.sarifReportContributor"/></include> | [`SarifReportContributor`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/sarif/SarifReportContributor.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.setupCIProviderFactory"/></include> | [`SetupCIProviderFactory`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/ui/ci/SetupCIProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.vcsIgnoredFilesProvider"/></include> | [`VcsIgnoredFilesProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/extensions/VcsIgnoredFilesProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.vcsRevisionProvider"/></include> | [`VcsRevisionProvider`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/vcs/VcsRevisionProvider.kt) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.intellij.qodana.workflowExtension"/></include> ![Internal][internal] | [`QodanaWorkflowExtension`](%gh-ij-plugins%/qodana/core/src/org/jetbrains/qodana/staticAnalysis/workflow/QodanaWorkflowExtension.kt) |
## Serial Port Monitor Plugin
### Serial Port Monitor Plugin Listeners
| Topic | Listener |
|-------|----------|
| [`SerialPortsListener.Companion#SERIAL_PORTS_TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.plugins.serialmonitor.service.SerialPortsListener) | [`SerialPortsListener`](%gh-ij-plugins%/serial-monitor/src/main/java/com/intellij/plugins/serialmonitor/service/SerialPortsListener.kt) |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
[obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square
[experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square
[internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square
[project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square
[non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square
[dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square

View File

@ -1,7 +1,5 @@
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. --> <!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- EP List Directory: /phpstorm/ -->
# PHP Extension Point and Listener List # PHP Extension Point and Listener List
<link-summary>Overview of Extension Points and Listeners for PHP.</link-summary> <link-summary>Overview of Extension Points and Listeners for PHP.</link-summary>
@ -14,142 +12,4 @@
> See [](intellij_platform_extension_point_list.md) for IntelliJ Platform. > See [](intellij_platform_extension_point_list.md) for IntelliJ Platform.
63 Extension Points and 11 Listeners <include from="generated_php_extension_point_list.md" element-id="content"/>
<include from="snippets.topic" element-id="ep_list_legend"/>
## PhpStorm
### PhpStorm Listeners
| Topic | Listener |
|-------|----------|
| [`ComposerInstalledPackagesService#PACKAGE_MANAGER_TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.composer.actions.update.ComposerInstalledPackagesService.ComposerUpdateListener) ![Project-Level][project-level] | `ComposerUpdateListener` |
| [`RepositoriesComposerConfig#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.composer.json.cache.ComposerRepositoriesChangedListener) | `ComposerRepositoriesChangedListener` |
| [`StateChangedListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.config.PhpProjectSharedConfiguration.StateChangedListener) | `StateChangedListener` |
| [`StateChangedListener#LANGUAGE_LEVEL_CHANGED_TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.config.PhpProjectSharedConfiguration.StateChangedListener) | `StateChangedListener` |
| [`PhpProjectWorkspaceConfiguration#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.config.PhpProjectWorkspaceConfigurationListener) | `PhpProjectWorkspaceConfigurationListener` |
| [`DefaultStubsPathListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.config.PhpRuntimeConfiguration.DefaultStubsPathListener) | `DefaultStubsPathListener` |
| [`PhpInterpreterConflictResolveListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.config.interpreters.PhpInterpretersManagerImpl.PhpInterpreterConflictResolveListener) | `PhpInterpreterConflictResolveListener` |
| [`StateChangedListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.debug.listener.PhpDebugExternalConnectionsAccepter.StateChangedListener) | `StateChangedListener` |
| [`RectorChangesListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.rector.RectorChangesListener) | `RectorChangesListener` |
| [`PhpRemoteInterpreterChangedListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.remote.interpreter.ui.PhpRemoteInterpreterConfigurationForm.PhpRemoteInterpreterChangedListener) | `PhpRemoteInterpreterChangedListener` |
| [`CustomExpectationNotifier.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.pestphp.pest.features.customExpectations.CustomExpectationNotifier) ![Project-Level][project-level] | `CustomExpectationNotifier` |
### com.intellij.phing
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.phing.phpFileDescriptionProvider"/></include> ![Non-Dynamic][non-dynamic] | `PhingPhpFileDescriptionProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.phing.propertyFilesManager"/></include> ![Non-Dynamic][non-dynamic] | `PropertyFilesManager` |
### com.intellij.php.psalm
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.tools.quality.Psalm.PsalmConfigurationProvider"/></include> ![Non-Dynamic][non-dynamic] | `PsalmConfigurationProvider` |
### com.intellij.php.tools.quality.phpstan
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.tools.quality.PhpStan.PhpStanConfigurationProvider"/></include> ![Non-Dynamic][non-dynamic] | `PhpStanConfigurationProvider` |
### com.jetbrains.php
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.php.debug.template.configurable"/></include> ![Internal][internal] ![Project-Level][project-level] | `PhpTemplateDebugConfigurable` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.php.debug.templateLanguage"/></include> ![Internal][internal] | `PhpTemplateLanguagePathMapper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.php.typeProvider2"/></include> ![Deprecated][deprecated] | `PhpTypeProvider2` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.phpDeadCode"/></include> | [`EntryPoint`](%gh-ic%/platform/analysis-api/src/com/intellij/codeInspection/reference/EntryPoint.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.phpRunConfigurationExtension"/></include> | `PhpRunConfigurationExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.arrayShapesProvider"/></include> | `PhpArrayShapesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.baseLexerProvider"/></include> ![Internal][internal] | `PhpBaseLexerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.classAliasProvider"/></include> | `PhpClassAliasProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.composer.execProvider"/></include> | `ComposerExecutionProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.composerConfigClient"/></include> ![Internal][internal] | `ComposerConfigClient` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.config.customFormatFunctionsProvider"/></include> | `PhpCustomFormatFunctionsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.config.interpreterFormProvider"/></include> | `PhpInterpreterFormProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.config.interpreters.PhpInterpretersStateListener"/></include> | `PhpInterpretersStateListener` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.coreMethodProvider"/></include> ![Internal][internal] | `PhpCoreHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.customFunctionIndex"/></include> | `PhpCustomFunctionIndex` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.customFunctionPredicate"/></include> ![Internal][internal] | `PhpCustomFunctionPredicateIndex` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.customTemplatesNamesProvider"/></include> ![Experimental][experimental] | `PhpCustomTemplatesNamesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.debug.mapping.localPathFixer"/></include> | `PhpLocalPathFixer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.deprecationFixesProvider"/></include> | `PhpDeprecationQuickFixesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.deprecationProvider"/></include> | `PhpDeprecationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.dfaStateFromAssertionProvider"/></include> ![Internal][internal] | `PhpDfaStateFromAssertionProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.docPrefixProvider"/></include> ![Internal][internal] | `PhpDocPrefixProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.docTagValuesStubProvider"/></include> | `PhpCustomDocTagValuesStubProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.expressionClassNamesProvider"/></include> ![Internal][internal] | `PhpExpressionClassNamesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.externalUsagesSearcher"/></include> | `PhpExternalUsagesSearcher` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.frameworkProjectConfigurableProvider"/></include> | `PhpFrameworkConfigurableProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.frameworkUsageProvider"/></include> | `PhpFrameworkUsageProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.includedPathsContributor"/></include> | `PhpIncludedPathsContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.injectionExternalFragmentSubstProvider"/></include> ![Project-Level][project-level] | `PhpInjectionExternalFragmentSubstProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.keyTypeProvider"/></include> ![Internal][internal] | `PhpKeyTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.libraryRoot"/></include> ![Internal][internal] | `PhpLibraryRootProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.magicMethodProvider"/></include> ![Internal][internal] | `PhpMagicHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.metaSignatureResolver"/></include> ![Internal][internal] | `PhpMetaSignatureResolver` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.metaTableProvider"/></include> ![Internal][internal] | `PhpMetaTableProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.noReturnProvider"/></include> | `PhpNoReturnProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.openSettingsProvider"/></include> | `Settings` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.phpunit.phpUnitSettingsLoader"/></include> ![Internal][internal] | `PhpUnitSettingsLoader` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.predefinedVariableProvider"/></include> | `PhpPredefinedVariableProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.referenceResolver2"/></include> | `PhpMultipleDeclarationFilter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.referenceScopeExtension"/></include> ![Experimental][experimental] | `PhpReferenceScopeExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.relatedToPhpFilesContributor"/></include> | `RelatedToPhpFilesContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.remote.remoteInterpreterManager"/></include> | `PhpRemoteInterpreterManager` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.templateLanguageHighlightingExtension"/></include> ![Internal][internal] | `TemplateLanguageBackgroundColorProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.testFramework.phpTestOldConfigHolder"/></include> ![Deprecated][deprecated] ![Internal][internal] | `PhpTestFrameworkOldConfigHolder` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.testFrameworkType"/></include> | `PhpTestFrameworkType` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.tools.quality.laravelPint.laravelPintConfigurationProvider"/></include> | `LaravelPintConfigurationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.tools.quality.messDetector.messDetectorConfigurationProvider"/></include> | `MessDetectorConfigurationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.tools.quality.phpCSFixer.phpCSFixerConfigurationProvider"/></include> | `PhpCSFixerConfigurationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.tools.quality.phpcs.phpCSConfigurationProvider"/></include> | `PhpCSConfigurationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.tools.quality.type"/></include> | `QualityToolType` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.typeProvider3"/></include> ![Deprecated][deprecated] | `PhpTypeProvider3` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.typeProvider4"/></include> | `PhpTypeProvider4` |
### com.jetbrains.php.behat
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.behat.gherkinContextProvider"/></include> | `ContextInterfaceProvider` |
### com.jetbrains.php.blade
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.blade.bladeDirectiveContributor"/></include> ![Experimental][experimental] | `BladeDirectiveContributor` |
### com.jetbrains.php.framework
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.framework.descriptionProvider"/></include> ![Internal][internal] | `FrameworkDescriptionProvider` |
### intellij.php.frontback.impl.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.php.docTagParserExtension"/></include> ![Internal][internal] | `PhpDocTagParser` |
### phpstorm-remote-interpreter-plugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.remote.interpreter.ui.customConfigProvider"/></include> | `PhpProjectConfigComponentProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.remote.phpHelperScriptProvider"/></include> | `PhpHelperScriptProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.php.remote.remoteProcessManager"/></include> | `PhpRemoteProcessManager` |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
[obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square
[experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square
[internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square
[project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square
[non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square
[dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square

View File

@ -1,7 +1,5 @@
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. --> <!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- EP List Directory: /rider/ -->
# Rider Extension Point and Listener List # Rider Extension Point and Listener List
<link-summary>Overview of Extension Points and Listeners for Rider.</link-summary> <link-summary>Overview of Extension Points and Listeners for Rider.</link-summary>
@ -14,262 +12,4 @@
> See [](intellij_platform_extension_point_list.md) for IntelliJ Platform. > See [](intellij_platform_extension_point_list.md) for IntelliJ Platform.
145 Extension Points and 9 Listeners <include from="generated_rider_extension_point_list.md" element-id="content"/>
<include from="snippets.topic" element-id="ep_list_legend"/>
## Rider
### Rider Listeners
| Topic | Listener |
|-------|----------|
| [`RiderStyleCopConfigurable#STYLE_COP_CONFIGURABLE_TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.application.options.editor.EditorOptionsListener) | [`EditorOptionsListener`](%gh-ic%/platform/platform-impl/src/com/intellij/application/options/editor/EditorOptionsListener.java) |
| [`SSHCredentialsInClipboardNotifier.Companion#SSH_CREDENTIALS_IN_CLIPBOARD_TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.rider.debugger.attach.remoting.SSHCredentialsInClipboardNotifier) | `SSHCredentialsInClipboardNotifier` |
| [`DotnetDebuggerSymbolsLoadedListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.rider.debugger.modulesView.actions.DotnetDebuggerSymbolsLoadedListener) | `DotnetDebuggerSymbolsLoadedListener` |
| [`FrontendTypedHandlerManager#BEFORE_TYPING_SENT`](https://jb.gg/ipe/listeners?topics=com.jetbrains.rider.editorActions.IFrontendTypingListener) | `IFrontendTypingListener` |
| [`RiderDockerDeploymentListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.rider.plugins.appender.docker.deployment.RiderDockerDeploymentListener) | `RiderDockerDeploymentListener` |
| [`AutoAttachDebuggerListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.rider.run.AutoAttachDebuggerListener) | `AutoAttachDebuggerListener` |
| [`PublishConfigurationValidationListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.rider.run.configurations.publishing.PublishConfigurationValidationListener) | `PublishConfigurationValidationListener` |
| [`MSBuildEvaluationListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.rider.run.environment.MSBuildEvaluationListener) | `MSBuildEvaluationListener` |
| [`RiderGlobalBackendProgressListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.rider.services.RiderGlobalProgressHost.RiderGlobalBackendProgressListener) | `RiderGlobalBackendProgressListener` |
### com.intellij.rider.frontend.customization
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rdclient.rider.completion.helper"/></include> | `CompletionHelper` |
### com.jetbrains.dotTrace.dotMemory
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.dotTrace.dotMemory.runtime.detector"/></include> | `DotTraceRuntimeDetector` |
### com.jetbrains.rider-cpp
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.rider-cpp.run.configurations.cpp"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `CppConfigurationParametersExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.rider-cpp.run.configurations.cpp.launch.profile"/></include> ![Non-Dynamic][non-dynamic] | `CppProjectLaunchProfile` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.rider-cpp.run.configurations.cpp.platformInfoProvider"/></include> ![Non-Dynamic][non-dynamic] | `CppPlatformInfoProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.jetbrains.rider-cpp.run.configurations.cpp.platformPluginPromotion"/></include> ![Non-Dynamic][non-dynamic] ![Internal][internal] | `CppPlatformPluginPromotion` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="rider.cpp.debugProcessExtension"/></include> | `RiderCppDebugProcessExtension` |
### com.jetbrains.rider.razor
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.blazorDialectSubstitutor"/></include> ![Non-Dynamic][non-dynamic] | `BlazorHtmlDialectSubstitutor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.webTypingAssistClassifier"/></include> | `WebTypingAssistClassifier` |
### DotNetPluginEP.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.backend.actions.support"/></include> | `RiderActionSupportPolicy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.backend.auto.import.support"/></include> | `RiderAutoImportSupportPolicy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.backend.autoPopup.support"/></include> | `RiderAutoPopupSupportPolicy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.backend.markup.adapterFactory"/></include> ![Non-Dynamic][non-dynamic] | `FrontendMarkupAdapterFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.backend.typedHandler"/></include> | `FrontendTypedHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.completion.completionSessionStrategy"/></include> | `CompletionSessionStrategy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.frontend.completion.helper"/></include> | `ICompletionHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.lang.altEnter"/></include> | `BulbMenuModelFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.lang.altEnter.popupModelDelegate"/></include> | `PopupModelDelegate` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.navbar.members.support"/></include> | `RiderNavBarMembersSupport` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.projectModelViewUpdater"/></include> ![Project-Level][project-level] | `ProjectModelViewUpdater` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rdclient.actionsDataContextProvider"/></include> ![Internal][internal] | `FrontendActionsDataContextProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rdclient.preemptiveCompletionSuppressor"/></include> | `PreemptiveCompletionSuppressor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rdclient.typingPolicy"/></include> | `CustomTypingSessionPolicy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.action.fallback.strategy"/></include> | `RiderAsyncBackendDelegatingActionFallbackStrategy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.additionalQuickDocProvider"/></include> | `AdditionalQuickDocProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.altEnter.layouter"/></include> | `RiderAltEnterLayouter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.backendCrashAnalyser"/></include> | `BackendCrashAnalyzer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.backendLogXmlPathProvider"/></include> | `RiderCustomBackendLogXmlPathProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.codeStyleContentConverter"/></include> | `RiderCodeStyleContentPageConverter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.credentials.provider"/></include> | `ICredentialsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.diagnostics.specialPathsProvider"/></include> | `SpecialPathsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.documentBehaviour"/></include> | `RiderDocumentBehaviour` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.editors.customBackendLanguageSupport"/></include> | `RiderCustomBackendLanguageSupport` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.extraSettingsSync"/></include> | `ExtraSettingsSync` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.fileBreadcrumbExtensions"/></include> | `CustomFileBreadcrumbExtensions` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.grave.filter"/></include> ![Experimental][experimental] | `RiderHighlightingGraveFilter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.ideaInspectionBackendSuppressionSupport"/></include> | `IdeaInspectionBackendSuppressionSupport` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.namingPageProvider"/></include> | `NamingPageProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.protocol.hostEnvProvider"/></include> | `RiderBackendEnvProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.riderApplicationPreloadListener"/></include> | `RiderApplicationPreloadListener` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.smartTabsBackendSynchronizer"/></include> ![Non-Dynamic][non-dynamic] | `RiderSmartTabsBackendSynchronizer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.startupListener"/></include> ![Internal][internal] | `RiderInitialStartupListener` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.selfProfilingPaths.customizer"/></include> | `DotnetSelfProfilerPathsCustomizer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.solutionLoadNotification"/></include> ![Project-Level][project-level] | `SolutionLoadNotification` |
### DotNetProjectView.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.projectModelIconProvider"/></include> | `ProjectModelIconProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.workspaceCountableProjectsPolicy"/></include> | `CountableProjectsPolicy` |
### intellij.rider.cpp.debugger
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.cpp.debuggerSettings"/></include> ![Non-Dynamic][non-dynamic] | `CppDebuggerSettings` |
### intellij.rider.plugins.appender.database.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.database.connectionStringRetriever"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `DatabaseConnectionUrlRetriever` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.database.connectionStringToJdbcUrlMapper"/></include> ![Project-Level][project-level] | `ConnectionStringToJdbcUrlConverter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.database.connectionStringsFactory"/></include> ![Project-Level][project-level] | `ConnectionStringsFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.database.connectionStringsFinder"/></include> ![Project-Level][project-level] | `ConnectionStringsFinder` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.database.dotnetDataProvider"/></include> ![Project-Level][project-level] | `DotnetDataProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.database.jdbcUrlToConnectionStringConverter"/></include> ![Project-Level][project-level] | `JdbcUrlToConnectionStringConverter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.database.schemaCompareDataModelCreatedListener"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `SchemaCompareDataModelCreatedListener` |
### intellij.rider.plugins.appender.docker.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.dockerDebugProvider"/></include> ![Non-Dynamic][non-dynamic] ![Internal][internal] | `RiderDockerDebugProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.dockerDeploymentTransformer"/></include> ![Non-Dynamic][non-dynamic] ![Internal][internal] | `RiderDockerDeploymentTransformer` |
### intellij.rider.plugins.appender.javascript.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.packageJson.configuration.handler"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RiderPackageJsonConfiguratorHandler` |
### intellij.rider.rdclient.languages.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.rdclient.breakingWorkflowChangeInterceptor"/></include> ![Non-Dynamic][non-dynamic] ![Experimental][experimental] ![Internal][internal] | `RiderBreakingWorkflowChangeInterceptor` |
### org.jetbrains.plugins.clion.radler
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="cidr.radler.externalSymbolsProvider"/></include> | `RadExternalSymbolsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.refactoringPageProvider"/></include> ![Non-Dynamic][non-dynamic] | `RefactoringPageProvider` |
### RiderCwmCoreEP.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.client.typedHandler"/></include> | `RiderClientLookupTypedHandler` |
### RiderDebugger.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.debugger.evaluation.advice"/></include> | `DebugEvalAdviceProvider` |
### RiderExtensionPoints.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.fileSystemExplorerCustomization"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `FileSystemExplorerCustomization` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.moveProviderExtension"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `MoveProviderExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.nestingRulesLanguageExtensions"/></include> ![Non-Dynamic][non-dynamic] | `RiderNestingRulesLanguageExtensions` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.nugetCredentialProvider"/></include> ![Non-Dynamic][non-dynamic] | `NuGetCredentialProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.openDirectoryExtensions"/></include> ![Non-Dynamic][non-dynamic] | `OpenDirectoryExtensions` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.projectModelViewExtensions"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `ProjectModelViewExtensions` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.projectTemplateCustomizer"/></include> ![Non-Dynamic][non-dynamic] | `ProjectTemplateCustomizer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.projectTemplateDialogProvider"/></include> ![Non-Dynamic][non-dynamic] | `ProjectTemplateDialogProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.projectTemplateProviderNew"/></include> ![Non-Dynamic][non-dynamic] | `ProjectTemplateProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.ProjectTypesProvider"/></include> ![Non-Dynamic][non-dynamic] | `RiderProjectTypesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.SolutionFileTypesProvider"/></include> ![Non-Dynamic][non-dynamic] | `SolutionFileTypesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.action.technical.support.info.provider"/></include> ![Non-Dynamic][non-dynamic] | `RiderTechnicalSupportInfoProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.breakpoint.customPanelProvider"/></include> ![Non-Dynamic][non-dynamic] | `IDotNetLineBreakpointCustomPanelsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.breakpoint.customPopupActionsProvider"/></include> ![Non-Dynamic][non-dynamic] | `IDotNetLineBreakpointPopupActionsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.build.riderBuildConsoleDecorator"/></include> ![Project-Level][project-level] | `RiderBuildConsoleDecorator` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.buildButtonModeProvider"/></include> | `BuildButtonModeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.codeLens.vcsDeclarationRangesProvider"/></include> ![Non-Dynamic][non-dynamic] | `VcsDeclarationRangesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.completion.csharpIdentifierPartHelper"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `CSharpIdentifierPartHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.completion.preselectionStrategy"/></include> ![Non-Dynamic][non-dynamic] | `RiderFrontendLanguagesPreselectionStrategy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.configurationExecutorExtension"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RiderConfigurationExecutorExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.configurationLaunchSettingsExtension"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RiderConfigurationLaunchSettingsExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.consoleFilter"/></include> | `RiderConsoleFilterExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.contributedLanguageElementNameCrawler"/></include> | `RiderContributedLanguageElementNameCrawler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.debug.breakpoint.handler.factory"/></include> ![Non-Dynamic][non-dynamic] | `IDotNetSupportedBreakpointHandlerFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.debugger.editAndContinue.dotNetEncInfoAutodetect"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `DotNetEncInfoAutodetect` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.debugger.value.evaluator.factory"/></include> ![Non-Dynamic][non-dynamic] | `RiderCustomComponentEvaluatorFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.debugger.value.presenter"/></include> ![Non-Dynamic][non-dynamic] | `RiderDebuggerValuePresenter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.debuggerSupportPolicy"/></include> ![Non-Dynamic][non-dynamic] | `RiderDebuggerSupportPolicy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.editSourceSuppressor"/></include> ![Non-Dynamic][non-dynamic] | `RiderEditSourceSuppressor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.extendedCodeStructure"/></include> ![Non-Dynamic][non-dynamic] | `RiderExtendedFileStructure` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.externalDirectoryProvider"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `ExternalDirectoryProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.fileTemplating.postCreateAction"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RiderNewFileFromTemplateExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.filesIndexingRuleProvider"/></include> ![Non-Dynamic][non-dynamic] | `RiderFilesIndexingRuleProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.findPopupProjectScopeProvider"/></include> | `FindPopupProjectScopeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.godotDetector"/></include> | `GodotDetector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.gotoCustomizer"/></include> | `GotoCustomizer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.guidPresenter"/></include> ![Project-Level][project-level] | `GuidGeneratorPresenter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.newFileListener"/></include> ![Project-Level][project-level] | `RiderNewFileListener` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.newRunConfigurationTreeGroupingProvider"/></include> ![Non-Dynamic][non-dynamic] | `RiderNewRunConfigurationTreeGroupingProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.patchCommandLine"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `PatchCommandLineExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.pencils.filters.provider"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `PencilsFiltersProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.pencils.inspectionToolGroup"/></include> ![Non-Dynamic][non-dynamic] | `n/a` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.pencils.pencilsFilterGroup"/></include> ![Non-Dynamic][non-dynamic] | `n/a` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.problemsView.actionsHandler"/></include> ![Non-Dynamic][non-dynamic] | `RiderProblemsViewActionsHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.problemsView.problems.notifier"/></include> ![Non-Dynamic][non-dynamic] | `ProblemsViewNotifier` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.problemsView.problems.processor"/></include> | `RiderProblemsDiffProcessor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.publish.publishSettingsProvider"/></include> ![Project-Level][project-level] | `IPublishRuntimeCoreSettingsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.publishConfigurationProvider"/></include> ![Non-Dynamic][non-dynamic] | `RiderContextPublishProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.reader.mode.matcher"/></include> | `RiderCustomReaderModeMatcher` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.refactoringPageProvider"/></include> ![Non-Dynamic][non-dynamic] | `RefactoringPageProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.resolveContextWidgetProvider"/></include> ![Non-Dynamic][non-dynamic] | `RiderResolveContextWidgetProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.configurations.dotNetExe"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `DotNetExeConfigurationExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.configurations.externalRunConfigurationGenerator"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `ExternalRunConfigurationGeneratorExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.configurations.host"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RunConfigurationHostExtensions` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.configurations.host.executor"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RunConfigurationHostExecutorExtensions` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.configurations.launchSettings"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `LaunchSettingsConfigurationExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.configurations.launchSettings.command"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `LaunchSettingsCommandExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.configurations.launchSettings.generator"/></include> | `LaunchSettingsConfigGeneratorExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.configurations.multiPlatform.mac.extension"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `MacRunConfigurationExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.configurations.project"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `DotNetProjectConfigurationExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.configurations.riderCoreDumpConfigurationProvider"/></include> ![Non-Dynamic][non-dynamic] | `RiderCoreDumpConfigurationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.configurations.uwp"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `UwpConfigurationExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.run.dotNetProfileConsoleViewProvider"/></include> ![Non-Dynamic][non-dynamic] | `DotNetProfileConsoleViewProviderExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.runToPopupShowPolicy"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RiderRunToPopupShowPolicy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.runWidgetSuspenderExtension"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RunWidgetSuspenderExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.runtime.dotNetRuntimeAutodetect"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `DotNetRuntimeAutodetect` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.solutionConfigurationPresenter"/></include> | `SolutionConfigurationPresenter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.solutionConfigurationToolbarCustomizer"/></include> | `SolutionConfigurationToolbarCustomizer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.unitTesting.actionsProvider"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RiderUnitTestActionsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.unitTesting.sessionHandler"/></include> ![Non-Dynamic][non-dynamic] | `IRiderUnitTestDebuggerSessionsHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.unityDetector"/></include> ![Project-Level][project-level] | `UnityDetector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.web.extensions.companionDebugStarter"/></include> ![Non-Dynamic][non-dynamic] | `DotNetCompanionDebugStarter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.web.extensions.webBrowserDebugSupport"/></include> ![Non-Dynamic][non-dynamic] | `WebBrowserDebugSupport` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.writingAccessProvider"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RiderDebugWritingAccessProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.xaml.preview.editor"/></include> ![Non-Dynamic][non-dynamic] | `XamlPreviewEditorExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.solutionExplorerCustomization"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `SolutionExplorerCustomization` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.solutionExplorerRootProvider"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `SolutionExplorerRootProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.solutionManagerExtensions"/></include> ![Non-Dynamic][non-dynamic] | `SolutionManagerExtensions` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.solutionViewPsiNodeNavigator"/></include> ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `SolutionViewPsiNodeNavigator` |
### RiderReformatAndCleanup.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.code.cleanup.support"/></include> | `RiderCodeCleanupSupportPolicy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.ProfileActionPrinter"/></include> ![Non-Dynamic][non-dynamic] | `ProfileActionPrinter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.cleanupAction"/></include> ![Non-Dynamic][non-dynamic] | `CleanupAction` |
### RiderSettingsSync.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.rider.settings.machineDependentBackendSetting"/></include> ![Non-Dynamic][non-dynamic] | `n/a` |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
[obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square
[experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square
[internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square
[project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square
[non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square
[dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square

View File

@ -1,7 +1,5 @@
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. --> <!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- EP List Directory: /ruby/ -->
# RubyMine Extension Point and Listener List # RubyMine Extension Point and Listener List
<link-summary>Overview of Extension Points and Listeners for RubyMine.</link-summary> <link-summary>Overview of Extension Points and Listeners for RubyMine.</link-summary>
@ -14,149 +12,4 @@
> See [](intellij_platform_extension_point_list.md) for IntelliJ Platform. > See [](intellij_platform_extension_point_list.md) for IntelliJ Platform.
88 Extension Points and 13 Listeners <include from="generated_rubymine_extension_point_list.md" element-id="content"/>
<include from="snippets.topic" element-id="ep_list_legend"/>
## RubyMine
### RubyMine Listeners
| Topic | Listener |
|-------|----------|
| [`RbsLanguageSettingsChangedListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.lang.ruby.rbs.settings.RbsLanguageSettingsChangedListener) | `RbsLanguageSettingsChangedListener` |
| [`ChefTopics#COOKBOOK`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.chef.sdk.CookbooksListener) | `CookbooksListener` |
| [`GemManager#GEMSET_CHANGED_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.gem.GemManager.GemSetListener) | `GemSetListener` |
| [`GemManager#MODULE_GEMS_CHANGED_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.gem.GemManager.ModuleGemsListener) ![Project-Level][project-level] | `ModuleGemsListener` |
| [`GemRequirementsHolder#GEM_REQUIREMENTS_CHANGED_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.gem.module.GemRequirementsHolder.RequirementsChangedListener) ![Project-Level][project-level] | `RequirementsChangedListener` |
| [`InflectorService#INFLECTIONS_CHANGED`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.rails.InflectorService.InflectionChanged) | `InflectionChanged` |
| [`AssetsRegistrationWatcher#ASSETS_CHANGED_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.rails.codeInsight.sprockets.assetsPaths.AssetsRegistrationWatcher.AssetsListener) | `AssetsListener` |
| [`MigrationParser#MIGRATIONS_CHANGED_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.rails.database.MigrationParser.MigrationListener) ![Project-Level][project-level] | `MigrationListener` |
| [`RailsPathsChangedListener#TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.rails.facet.configuration.RailsPathsChangedListener) | `RailsPathsChangedListener` |
| [`RubyRemoteInterpreterManager#RUBY_REMOTE_SDK_TRANSFER_LISTENER_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.remote.RubyRemoteSdkTransferListener) | `RubyRemoteSdkTransferListener` |
| [`RequireSetChangedListener#TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.ruby.codeInsight.symbols.cache.RequiresIndexExtension.RequireSetChangedListener) | `RequireSetChangedListener` |
| [`RubySdkType#SDK_PATHS_INITIALIZED_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.ruby.sdk.RubySdkType.SdkPathsInitializedListener) | `SdkPathsInitializedListener` |
| [`RVMSupportUtil#RVM_GEMSET_ADDED_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.version.management.rvm.RVMSupportUtil.RVMGemsetListener) | `RVMGemsetListener` |
### intellij.ruby.coverage.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.coverage.deserializer"/></include> | `RubyCoverageDeserializationProvider` |
### intellij.ruby.frontback.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.formatter.additionalSpacingProcessor"/></include> | `RubyAdditionalSpacingProcessor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.languageLevelProvider"/></include> | `LanguageLevelProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubyBuilderFactory"/></include> | `RubyBuilderFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.templates.elements.provider"/></include> | `TemplateElementsProvider` |
### ruby-core.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.associationFactory"/></include> | `AssociationFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.attributeProvider"/></include> | `AttributeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.autoImportProvider"/></include> | `RubyAutoImportProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.callNavigationOffsetProvider"/></include> | `StructureCallNavigationOffsetProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.callTypeProvider"/></include> | `RubyCallTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.completionProvider"/></include> | `RubyCompletionProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.fileLocationProvider"/></include> | `FileLocationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.gem.module.gemInfrastructure"/></include> | `GemInfrastructure` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.gemScannerSuppressor"/></include> | `GemScannerSuppressor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.implicitGemProvider"/></include> | `ImplicitRequireGemProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.implicitRequireProvider"/></include> | `ImplicitRequireProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.includeExtendReceiverFqnProvider"/></include> | `RubyIncludeExtendReceiverFqnProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.methodMissingProvider"/></include> | `MethodMissingProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.model.psiSymbolDeclarationsSearch"/></include> | [`QueryExecutor`](%gh-ic%/platform/core-api/src/com/intellij/util/QueryExecutor.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.moduleGemDependencyProvider"/></include> | `ModuleGemDependencyProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.moduleGemProvider"/></include> | `ModuleGemProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.overriddenMethodGenerator"/></include> | `OverriddenMethodGenerator` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.paramDefProvider"/></include> | `ParamDefProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.psiElementFactory"/></include> | `PsiElementFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rails.viewFileTemplateProvider"/></include> | `RailsViewFileTemplateProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.renameHelper"/></include> | `RubyRenameHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.routesProvider"/></include> | `RubyRoutesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.coercibleExpressionTypeProvider"/></include> | `RubyCoercibleExpressionTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.expectedArgumentNilabilityProvider"/></include> | `RubyExpectedArgumentNilabilityProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.expectedArgumentTypeProvider"/></include> | `RubyExpectedArgumentTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.expectedConstantTypeProvider"/></include> | `RubyExpectedConstantTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.expectedGlobalVariableTypeProvider"/></include> | `RubyExpectedGlobalVariableTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.expectedMethodSignatureProvider"/></include> | `RubyExpectedMethodSignatureProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.expectedParameterTypeProvider"/></include> | `RubyExpectedParameterTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.expectedReturnTypeProvider"/></include> | `RubyExpectedReturnTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.expectedVariableTypeProvider"/></include> | `RubyExpectedVariableTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.findUsagesSecondaryElementsProvider"/></include> | `RubyFindUsagesSecondaryElementsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.run.runEnvironmentProvider"/></include> | `RunEnvironmentProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.run.testFrameworkConfigurator"/></include> | `TestFrameworkConfigurator` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubyElementNameAndDescriptionProvider"/></include> | `RubyElementNameAndDescriptionProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubyLocalVariablesProvider"/></include> | `RubyLocalVariablesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubyParamDefSearchTextProvider"/></include> | `RubyParamDefSearchTextProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubyParameterInfoDelegateProvider"/></include> | `RubyParameterInfoDelegateProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubyRenameProcessor"/></include> | `RenameProcessor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubySdkConfigurator"/></include> | `RubySdkConfigurator` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubySdkRefresher"/></include> | `SdkRefresher` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubySuperMethodsSearch"/></include> | [`QueryExecutor`](%gh-ic%/platform/core-api/src/com/intellij/util/QueryExecutor.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubySupportProvider"/></include> | `RubySupportProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubyTypeProvider"/></include> | `RubyTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.run.console.filter"/></include> | `RubyConsoleFilterProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.runnableScriptFilter"/></include> | `RunnableScriptFilter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.sdkConfigFactory"/></include> | `Factory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.superMethodInfoProvider"/></include> | `RubySuperMethodInfoProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.symbolMixinsProvider"/></include> | `RubySymbolMixinsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.symbolProvider"/></include> | `RubySymbolProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.symbolicTypeInferenceProvider"/></include> | `SymbolicTypeInferenceProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.templates.integration"/></include> | `TemplateIntegration` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.versionManagerHandler"/></include> | `RubyVersionManagerHandler` |
### ruby-plugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.ruby.projectStructure.sourceRootEditHandler"/></include> | `RubyModuleSourceRootEditProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.breadcrumbsCustomizer"/></include> | `RubyBreadcrumbsCustomizer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.debug.infoProvider"/></include> | `ContextInfoProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.gem.detector"/></include> | `GemDetector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.gemFacetEditorTab"/></include> | `GemFacetEditorTabFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.generatorConfigurator"/></include> | `GeneratorActionConfigurator` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.i18n.i18nProvider"/></include> | `I18nProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.inflectionsProvider"/></include> | `RubyInflectionsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rails.assetsPathsProvider"/></include> | `SprocketAssetsPathProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rails.sprocketsDirectiveContextProvider"/></include> | `SprocketsDirectiveContextProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rails.viewFileTypesProvider"/></include> | `RailsViewFileTypesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.railsFacetEditorTab"/></include> | `FacetEditorTabFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.railsModelFieldsProvider"/></include> | `RailsModelFieldsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.railsNavigateFrom"/></include> | `RailsNavigateFromProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.railsSchemaParser"/></include> | `RailsSchemaParser` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rake.rakeRunCommandLineModifierProvider"/></include> | `RakeRunCommandLineModifierProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rake.runConfigurationSettingsFactory"/></include> | `RakeRunConfigurationSettingsFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rerunFailedTestsActionProvider"/></include> | `RubyRerunFailedTestsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.associatedDeclarationProvider"/></include> ![DumbAware][dumb-aware] | `RubyAssociatedDeclarationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.run.configuration.debugger.rubyDebugHelperFactory"/></include> | `RubyDebugHelperFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.topLevelSymbolProvider"/></include> | `RubyTopLevelSymbolProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.ruby.typeSignatureProvider"/></include> ![DumbAware][dumb-aware] | `RubyTypeSignatureProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubyFileStructureProvider"/></include> | `RubyFileStructureViewProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubyInsertHandlerProvider"/></include> | `RubyInsertHandlerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.rubyMethodTypeDocPresentationProvider"/></include> | `RubyMethodTypeDocPresentationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.runConfigurationExtension"/></include> | `RubyRunConfigurationExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.structureViewCustomizer"/></include> | `RubyStructureViewCustomizer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.testing.rspec.rspecContextNameProvider"/></include> | `RSpecContextNameProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.ruby.testing.rspec.rspecContextSymbolProvider"/></include> | `RSpecContextSymbolProvider` |
### ruby-rbs.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.lang.ruby.rbs.containerHierarchyMapper"/></include> | `RbsContainerHierarchyMapper` |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
[obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square
[experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square
[internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square
[project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square
[non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square
[dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square

View File

@ -1,7 +1,5 @@
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. --> <!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- EP List Directory: /plugins/spring/ -->
# Spring API Extension Point and Listener List # Spring API Extension Point and Listener List
<primary-label ref="IntelliJIDEA_Ultimate"/> <primary-label ref="IntelliJIDEA_Ultimate"/>
@ -20,198 +18,4 @@
> >
{style="note"} {style="note"}
58 Extension Points and 6 Listeners <include from="generated_spring_extension_point_list.md" element-id="content"/>
<include from="snippets.topic" element-id="ep_list_legend"/>
## Spring
### Spring Listeners
| Topic | Listener |
|-------|----------|
| [`SpringFileSetService#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.spring.facet.SpringFileSetService.SpringFileSetListener) | `SpringFileSetListener` |
| [`SpringBeansViewSettings#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.spring.toolWindow.SpringBeansViewSettings.Listener) | `Listener` |
### com.intellij.spring
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.autodetected.filesets"/></include> | `SpringAutodetectedFilesetsSearcher` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.autodetected.models"/></include> | `SpringAutodetectedModelsSearcher` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.beanClassLineMarker"/></include> | `BeanClassLineMarker` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.beans.stereotype"/></include> | `SpringBeanStereotype` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.componentScanExtender"/></include> | `ComponentScanExtender` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.conditionalEvaluatorProvider"/></include> | `ConditionalEvaluatorProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.configSearcherScopeModifier"/></include> | `ConfigSearcherScopeModifier` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.configurator"/></include> | `SpringConfigurator` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.customBeanScope"/></include> | `SpringCustomBeanScope` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.customConverterProvider"/></include> | `Provider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.customLocalComponentsDiscoverer"/></include> | `CustomLocalComponentsDiscoverer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.customModuleComponentsDiscoverer"/></include> | `CustomModuleComponentsDiscoverer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.customNamespaces"/></include> | `SpringCustomNamespaces` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.effective.types.provider"/></include> | `SpringBeanEffectiveTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.factoryMethodTypeHandler"/></include> | `CustomFactoryMethodTypeHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.fileSetEditorCustomization"/></include> | `SpringFileSetEditorCustomization` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.inspectionsRegistryAdditionalFilesContributor"/></include> | `AdditionalFilesContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.inspectionsRegistryContributor"/></include> | `Contributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.jam.customMetaImplementation"/></include> | `n/a` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.localAnnotationModelDependentModelsProvider"/></include> | `LocalAnnotationModelDependentModelsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.localModelProducer"/></include> | `SpringLocalModelProducer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.placeholderReferenceResolver"/></include> | `SpringPlaceholderReferenceResolver` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.resourceTypeProvider"/></include> | `SpringResourceTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.scriptBeanPsiClassDiscoverer"/></include> | `ScriptBeanPsiClassDiscoverer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.settingsProvider"/></include> | `SpringSettingsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.springTemplateProvider"/></include> | `SpringTemplateProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.testingAnnotationsProvider"/></include> | `SpringTestingAnnotationsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.testingImplicitContextsProvider"/></include> | `SpringTestingImplicitContextsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.valueConverter"/></include> | `SpringValueConvertersProvider` |
### intellij.spring.el.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.el.contexts"/></include> | `SpringElContextsExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.el.injection.context"/></include> | `SpringElInjectionContext` |
### intellij.spring.graph.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.gutterDiagramActionProvider"/></include> | `SpringGutterDiagramActionProvider` |
## Spring Boot Plugin
### Spring Boot Plugin Listeners
| Topic | Listener |
|-------|----------|
| [`SpringBootEndpointsTabSettings#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.spring.boot.run.lifecycle.tabs.SpringBootEndpointsTabSettings.Listener) | `Listener` |
### com.intellij.spring.boot
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.configFileDetector"/></include> | `SpringBootConfigFileDetector` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.customHintReferenceProvider"/></include> | `SpringBootCustomHintReferenceProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.languageSpecificBridge"/></include> | `SpringBootLanguageSpecificBridge` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.modelConditionalContributor"/></include> | `ConditionalContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.modelConfigFileContributor"/></include> | `SpringBootModelConfigFileContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.modelConfigFileNameContributor"/></include> | `SpringBootModelConfigFileNameContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.modelExtender"/></include> | `SpringBootModelExtender` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.replacementTokenResolver"/></include> | `SpringBootReplacementTokenResolver` |
### intellij.spring.boot.mvc.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.mvc.templateAvailabilityProvider"/></include> | `TemplateAvailabilityProvider` |
### intellij.spring.boot.run.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.run.applicationUpdatePolicy"/></include> | `SpringBootApplicationUpdatePolicy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.run.applicationUrlPathProviderFactory"/></include> | `SpringBootApplicationUrlPathProviderFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.run.endpoint"/></include> ![Experimental][experimental] | `Endpoint` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.run.endpointTabConfigurable"/></include> ![Project-Level][project-level] | `EndpointTabConfigurable` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.run.liveBeansPanelContent"/></include> | `LiveBeansPanelContent` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.boot.run.runtimeApplicationProvider"/></include> | `SpringBootRuntimeApplicationProvider` |
## Spring Data Plugin
### Spring Data Plugin Listeners
| Topic | Listener |
|-------|----------|
| [`SpringRepositoriesViewSettings#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.spring.data.commons.view.SpringRepositoriesViewSettings.Listener) | `Listener` |
## Spring Debugger Plugin
### Spring Debugger Plugin Listeners
| Topic | Listener |
|-------|----------|
| [`SpringDebugModelListener.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.spring.debugger.model.SpringDebugModelListener) | `SpringDebugModelListener` |
### com.intellij.spring.debugger
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.debugger.configCodeVisionProvider"/></include> ![Internal][internal] | `SpringConfigFileCodeVisionInfoProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.debugger.runConfigurationExtender"/></include> | `SpringDebuggerRunConfigurationExtender` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.debugger.sessionListener"/></include> | `SpringDebuggerSessionListener` |
## Spring GraphQL Plugin
### com.intellij.spring.graphql
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.graphql.appPathProvider"/></include> | `GraphQLApplicationPathProvider` |
## Spring Messaging Plugin
### com.intellij.spring.messaging
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.messaging.urlProvider"/></include> | `SpringMessagingUrlProvider` |
## Spring Security Plugin
### com.intellij.spring.security
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.security.rolesProvider"/></include> | `SpringSecurityRolesProvider` |
## Spring Web Plugin
### Spring Web Plugin Listeners
| Topic | Listener |
|-------|----------|
| [`SpringMvcViewSettings#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.spring.mvc.toolwindow.SpringMvcViewSettings.Listener) | `Listener` |
### com.intellij.spring.mvc
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.mvc.applicationPathProvider"/></include> | `SpringApplicationPathProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.mvc.completion.controllerParamTypeProvider"/></include> | `ControllerParameterProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.mvc.mergingMvcRequestMappingLineMarkerProvider"/></include> | `SpringMergingMvcRequestMappingLineMarkerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.mvc.springEndpointsIconProvider"/></include> | `SpringEndpointsIconProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.spring.mvc.viewResolverFactory"/></include> | `ViewResolverFactory` |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
[obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square
[experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square
[internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square
[project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square
[non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square
[dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square

View File

@ -1,12 +1,5 @@
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. --> <!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- EP List Directory:
/CSS/
/plugins/JavaScriptLanguage/
/plugins/NodeJS/
/plugins/sass/
-->
# WebStorm Extension Point and Listener List # WebStorm Extension Point and Listener List
<link-summary>Overview of Extension Points and Listeners for WebStorm.</link-summary> <link-summary>Overview of Extension Points and Listeners for WebStorm.</link-summary>
@ -19,137 +12,4 @@
> See [](intellij_platform_extension_point_list.md) for IntelliJ Platform and [](oss_plugins_extension_point_list.md) for additional plugins. > See [](intellij_platform_extension_point_list.md) for IntelliJ Platform and [](oss_plugins_extension_point_list.md) for additional plugins.
80 Extension Points and 5 Listeners <include from="generated_webstorm_extension_point_list.md" element-id="content"/>
<include from="snippets.topic" element-id="ep_list_legend"/>
## WebStorm
### WebStorm Listeners
| Topic | Listener |
|-------|----------|
| [`JestConsoleProperties#COVERAGE_CONFIG_TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.javascript.jest.JestCoverageConfigListener) ![Project-Level][project-level] | `JestCoverageConfigListener` |
| [`PackageJsonFileManager#CHANGES_TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.javascript.nodejs.packageJson.PackageJsonFileManager.PackageJsonChangesListener) ![Project-Level][project-level] | `PackageJsonChangesListener` |
| [`VitestConsoleProperties#COVERAGE_CONFIG_TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.javascript.testing.vitest.coverage.VitestCoverageConfigListener) ![Project-Level][project-level] | `VitestCoverageConfigListener` |
| [`JSLibraryManager#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.lang.javascript.library.JSLibraryManager.JSLibraryManagerChangeListener) ![Project-Level][project-level] | `JSLibraryManagerChangeListener` |
| [`JSRemoteModulesRegistry#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.lang.javascript.modules.remote.JSRemoteModulesChangeListener) | `JSRemoteModulesChangeListener` |
### com.intellij.css
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.css.classOrIdUsagesProvider"/></include> | `CssClassOrIdUsagesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.css.cssFileReferenceProvider"/></include> | `CssFileReferenceProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.css.cssInspectionFilter"/></include> | `CssInspectionFilter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.css.cssIntentionFilter"/></include> | `CssIntentionFilter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.css.cssRelatedStylesheetsProvider"/></include> | `CssRelatedStylesheetsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.css.dialect"/></include> | `CssDialect` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.css.elementDescriptorProvider"/></include> | `CssElementDescriptorProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.css.embeddedCssProvider"/></include> | `EmbeddedCssProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.css.inclusionContext"/></include> | `CssInclusionContext` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.css.structureViewChildrenProvider"/></include> | `CssStructureViewElementsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.css.supportedFileTypesProvider"/></include> | `CssSupportedFileTypesProvider` |
### intellij.javascript.impl.diagrams.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.javascript.module.provider"/></include> | `JSModuleConnectionProvider` |
### intellij.javascript.web.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.javascript.webTypes"/></include> ![Removal][removal] | `n/a` |
### js-plugin.xml
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.FlowJSAnnotatorCheckerProvider"/></include> | `FlowJSAnnotatorCheckerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.JSImplicitElementsIndexFileTypeProvider"/></include> | `JSImplicitElementsIndexFileTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.TypeScriptAnnotatorCheckerProvider"/></include> ![Project-Level][project-level] | `TypeScriptAnnotatorCheckerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.analysisHandlersFactory"/></include> | `JSAnalysisHandlersFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.classInheritorsProvider"/></include> | `JSClassInheritorsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.completionHelper"/></include> | `JSCompletionHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.completionPlaceFilter"/></include> ![Project-Level][project-level] | `JSCompletionPlaceFilterProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.componentUsageProvider"/></include> | `JSComponentUsageProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.conditionalCompilationDefinitionsProvider"/></include> | `JSConditionalCompilationDefinitionsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.dialectSpecificHandlersFactory"/></include> | `JSDialectSpecificHandlersFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.directFileReferenceResolverProvider"/></include> | `JSDirectFileReferenceResolverProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.elementScopeProvider"/></include> | `JSElementResolveScopeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.frameworkIndexingHandler"/></include> | `FrameworkIndexingHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.frameworkSpecificHandler"/></include> | `JSFrameworkSpecificHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.frameworkSpecificStructureViewExtension"/></include> | `JSFrameworkSpecificStructureExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.handlersFactory"/></include> | `JSHandlersFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.iconProvider"/></include> | `JSIconProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.importCandidatesFactory"/></include> | `CandidatesFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.importCandidatesFilterFactory"/></include> | `FilterFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.importModulePathStrategy"/></include> ![Experimental][experimental] | `JSImportModulePathStrategy` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.indexedFileTypeProvider"/></include> | `IndexedFileTypeProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.inheritedLanguagesConfigurableProvider"/></include> | `JSInheritedLanguagesConfigurableProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.intentionAndInspectionFilter"/></include> | `IntentionAndInspectionFilter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.itemPresentation"/></include> ![Experimental][experimental] | `JSItemPresentationProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.jestPackageProvider"/></include> | `JestPackageProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.jsDocCustomTagsHandler"/></include> ![Experimental][experimental] | `JSDocCustomTagsHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.jsxImplementation"/></include> | `JSXImplementation` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.lang.templates"/></include> ![Project-Level][project-level] | [`Configurable`](%gh-ic%/platform/ide-core/src/com/intellij/openapi/options/Configurable.java) |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.languageServiceProvider"/></include> ![Project-Level][project-level] | `JSLanguageServiceProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.languageServiceQuickFixProvider"/></include> | `JSLanguageServiceQuickFixProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.languageServiceRemoteHelperFactory"/></include> | `Factory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.minifiedFileIndexingProvider"/></include> ![Internal][internal] | `JSMinifiedFileIndexingProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.moduleExportsProvider"/></include> | `JSModuleExportsProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.moduleReferenceContributor"/></include> | `JSModuleReferenceContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.nodeModulesIndexableFileNamesProvider"/></include> | `NodeModulesIndexableFileNamesProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.nodeRunConfigurationExtension"/></include> | `AbstractNodeRunConfigurationExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.predefinedLibraryProvider"/></include> | `JSPredefinedLibraryProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.projectGeneratorPanelCustomizer"/></include> | `ProjectGeneratorSettingsCustomizer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.resolveHelper"/></include> | `JSResolveHelper` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.runConfigurationBuilder"/></include> ![Project-Level][project-level] | `JSRunConfigurationBuilder` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.scanningFileListenerContributor"/></include> | `ScanningFileListenerContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.smartCompletionContributor"/></include> | `JSSmartCompletionContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.spellcheckerProvider"/></include> | `JSSpellcheckerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.testFrameworkDetector"/></include> | `n/a` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.testWatchProvider"/></include> | `JsTestWatchProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.tsConfigCustomizer"/></include> ![Experimental][experimental] | `TypeScriptConfigCustomizer` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.tsImportResolver"/></include> | `TypeScriptImportsResolverProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.tsServiceExtension"/></include> | `TypeScriptServiceExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.typeScriptCompilerTypePatcher"/></include> | `TypeScriptCompilerTypePatcher` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.unresolvedReferenceErrorUpdater"/></include> ![Experimental][experimental] | `JSUnresolvedReferenceErrorUpdater` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.webBundlerCssReferenceContributor"/></include> | `JSModuleReferenceContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.webBundlerDefinition"/></include> | `WebBundlerDefinition` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="JavaScript.xmlBackedClassProvider"/></include> | `XmlBackedJSClassProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="NodeJS.runConfigurationLocationFilter"/></include> | `NodeRunConfigurationLocationFilter` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.JavaScript.linter.descriptor"/></include> | `JSLinterDescriptor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.JavaScript.linter.execution.suppressor"/></include> | `JSLinterExecutionSuppressor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.eslint.ruleMappersFactory"/></include> | `EslintRuleMappersFactory` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.javascript.extract.interface.extension"/></include> | `JSCustomExtractInterfaceHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.javascript.introduce.variable.extension"/></include> | `JSCustomIntroduceVariableHandler` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.javascript.json.schema.provider"/></include> | `JsonSchemaInJavaScriptProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.javascript.library.externalDefinitionsContributor"/></include> | `TypeScriptExternalDefinitionsContributor` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.javascript.names.suggester"/></include> | `JSNamesSuggester` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.javascript.rename.extension"/></include> | `JSRenameExtension` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.jsbtFileManagerProvider"/></include> | `JsbtFileManagerProvider` |
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.jsbtService"/></include> | `JsbtApplicationService` |
### org.jetbrains.plugins.node-remote-interpreter
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="org.jetbrains.plugins.node-remote-interpreter.nodeRemoteTargetRunSetupFactory"/></include> | `NodeRemoteTargetRunSetupFactory` |
### org.jetbrains.plugins.sass
| Extension Point | Implementation |
|-----------------|----------------|
| <include from="snippets.topic" element-id="epLink"><var name="ep" value="com.intellij.sass.extension"/></include> | `SassExtension` |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
[obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square
[experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square
[internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square
[project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square
[non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square
[dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square