//arrow-meta/arrow.meta.internal.registry/InternalRegistry

InternalRegistry

[jvm]
interface InternalRegistry : ConfigSyntax

Types

Name Summary
DelegatingContributor [jvm]
class DelegatingContributor(phase: StorageComponentContainer, ctx: CompilerContext) : StorageComponentContainerContributor

Functions

Name Summary
callChecker [jvm]
open fun callChecker(check: CompilerContext.(resolvedCall: ResolvedCall<*>, reportOn: PsiElement, context: CallCheckerContext) -> Unit): StorageComponentContainer
compilerContextService [jvm]
open fun compilerContextService(): StorageComponentContainer
declarationChecker [jvm]
open fun declarationChecker(check: CompilerContext.(declaration: KtDeclaration, descriptor: DeclarationDescriptor, context: DeclarationCheckerContext) -> Unit): StorageComponentContainer
enableIr [jvm]
open fun enableIr(): ExtensionPhase
The enableIr function enables the Intermediate Representation Backend. The IR Backend is a part of the code generation phase and emits code in the IR format. The IR Format is a tree structure with significant indentation that contains all the information needed to generate bytecode for all platforms the Kotlin programming language targets. When the IR backend is disabled, which is the current default in the Kotlin Compiler, the JVM ASM Backend is used instead.
intercept [jvm]
abstract fun intercept(ctx: CompilerContext): List<CliPlugin>
meta [jvm]
open fun meta(vararg phases: ExtensionPhase): List<ExtensionPhase>
packageFragmentProvider [jvm]
open fun packageFragmentProvider(project: Project, phase: PackageProvider, ctx: CompilerContext)
registerAnalysisHandler [jvm]
open fun registerAnalysisHandler(project: Project, phase: AnalysisHandler, ctx: CompilerContext)
registerClassBuilder [jvm]
open fun registerClassBuilder(project: Project, phase: ClassBuilder, ctx: CompilerContext)
registerCodegen [jvm]
open fun registerCodegen(project: Project, phase: Codegen, ctx: CompilerContext)
registerCollectAdditionalSources [jvm]
open fun registerCollectAdditionalSources(project: Project, phase: CollectAdditionalSources, ctx: CompilerContext)
registerCompilerConfiguration [jvm]
open fun registerCompilerConfiguration(project: Project, phase: Config, ctx: CompilerContext)
registerDeclarationAttributeAlterer [jvm]
open fun registerDeclarationAttributeAlterer(project: Project, phase: DeclarationAttributeAlterer, ctx: CompilerContext)
registerExtraImports [jvm]
open fun registerExtraImports(project: Project, phase: ExtraImports, ctx: CompilerContext)
registerIRGeneration [jvm]
open fun registerIRGeneration(project: Project, phase: IRGeneration, compilerContext: CompilerContext)
registerMetaAnalyzer [jvm]
open fun registerMetaAnalyzer(): ExtensionPhase
registerMetaComponents [jvm]
open fun registerMetaComponents(project: Project, configuration: CompilerConfiguration, context: CompilerContext? = null)
registerPreprocessedVirtualFileFactory [jvm]
open fun registerPreprocessedVirtualFileFactory(project: Project, phase: PreprocessedVirtualFileFactory, ctx: CompilerContext)
registerProjectComponents [jvm]
open fun registerProjectComponents(project: MockProject, configuration: CompilerConfiguration)
registerStorageComponentContainer [jvm]
open fun registerStorageComponentContainer(project: Project, phase: StorageComponentContainer, ctx: CompilerContext)
registerSyntheticResolver [jvm]
open fun registerSyntheticResolver(project: Project, phase: SyntheticResolver, compilerContext: CompilerContext)
registerSyntheticScopeProvider [jvm]
open fun registerSyntheticScopeProvider(project: Project, phase: SyntheticScopeProvider, ctx: CompilerContext)
registerSyntheticScopeProviderIfNeeded [jvm]
open fun registerSyntheticScopeProviderIfNeeded(project: Project)
storageComponent [jvm]
open fun storageComponent(registerModuleComponents: CompilerContext.(container: StorageComponentContainer, moduleDescriptor: ModuleDescriptor) -> Unit, check: CompilerContext.(declaration: KtDeclaration, descriptor: DeclarationDescriptor, context: DeclarationCheckerContext) -> Unit = Noop.effect4): StorageComponentContainer
The storageComponent function allows access to the StorageComponentContributor. This is the Dependency Injector and service registry the compiler uses in all phases. In this function, you can register new services or modify existing ones before the container is composed and sealed prior to compilation.
updateConfig [jvm]
open fun updateConfig(updateConfiguration: CompilerContext.(configuration: CompilerConfiguration) -> Unit): Config
The updateConfig function provides access to the CompilerConfiguration that contains the map of properties used to enable/disable the different features in compilation.

Inheritors

Name
Meta

Do you like Arrow?

Arrow Org
<