All Downloads are FREE. Search and download functionalities are using the official Maven repository.

arrow.meta.phases.resolve.DeclarationAttributeAlterer.kt Maven / Gradle / Ivy

There is a newer version: 1.6.3-alpha.2
Show newest version
package arrow.meta.phases.resolve

import arrow.meta.phases.CompilerContext
import arrow.meta.phases.ExtensionPhase
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
import org.jetbrains.kotlin.descriptors.Modality
import org.jetbrains.kotlin.psi.KtModifierListOwner

/**
 * @see [ExtensionPhase]
 * @see [arrow.meta.dsl.resolve.ResolveSyntax.declarationAttributeAlterer]
 */
interface DeclarationAttributeAlterer : ExtensionPhase {
  fun CompilerContext.refineDeclarationModality(
    modifierListOwner: KtModifierListOwner,
    declaration: DeclarationDescriptor?,
    containingDeclaration: DeclarationDescriptor?,
    currentModality: Modality,
    isImplicitModality: Boolean
  ): Modality?
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy