Rename Visibility to DescriptorVisibility
This commit is contained in:
+2
-2
@@ -17,7 +17,7 @@
|
||||
package org.jetbrains.kotlin.backend.common
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.CallableMemberDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.IrElement
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
@@ -311,7 +311,7 @@ class CheckIrElementVisitor(
|
||||
if (declaration is IrOverridableDeclaration<*>) {
|
||||
for (overriddenSymbol in declaration.overriddenSymbols) {
|
||||
val overriddenDeclaration = overriddenSymbol.owner as? IrDeclarationWithVisibility ?: continue
|
||||
if (overriddenDeclaration.visibility == Visibilities.PRIVATE) {
|
||||
if (overriddenDeclaration.visibility == DescriptorVisibilities.PRIVATE) {
|
||||
reportError(declaration, "Overrides private declaration $overriddenDeclaration")
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,8 +9,8 @@ import org.jetbrains.kotlin.backend.common.CommonBackendContext
|
||||
import org.jetbrains.kotlin.backend.common.deepCopyWithVariables
|
||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.descriptors.annotations.Annotations
|
||||
import org.jetbrains.kotlin.ir.IrElement
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
@@ -86,7 +86,7 @@ val IrCall.isSuspend get() = (symbol.owner as? IrSimpleFunction)?.isSuspend == t
|
||||
val IrFunctionReference.isSuspend get() = (symbol.owner as? IrSimpleFunction)?.isSuspend == true
|
||||
|
||||
val IrSimpleFunction.isOverridable: Boolean
|
||||
get() = visibility != Visibilities.PRIVATE && modality != Modality.FINAL && (parent as? IrClass)?.isFinalClass != true
|
||||
get() = visibility != DescriptorVisibilities.PRIVATE && modality != Modality.FINAL && (parent as? IrClass)?.isFinalClass != true
|
||||
|
||||
val IrSimpleFunction.isOverridableOrOverrides: Boolean get() = isOverridable || overriddenSymbols.isNotEmpty()
|
||||
|
||||
@@ -456,7 +456,7 @@ fun IrClass.addFakeOverridesViaIncorrectHeuristic(implementedMembers: List<IrSim
|
||||
irClass.declarations
|
||||
.flatMap { it.toList() }
|
||||
.filter { it !in overriddenFunctions }
|
||||
.filter { it.visibility != Visibilities.PRIVATE }
|
||||
.filter { it.visibility != DescriptorVisibilities.PRIVATE }
|
||||
}
|
||||
.toMutableSet()
|
||||
|
||||
@@ -468,7 +468,7 @@ fun IrClass.addFakeOverridesViaIncorrectHeuristic(implementedMembers: List<IrSim
|
||||
irFunction.factory.buildFun {
|
||||
origin = IrDeclarationOrigin.FAKE_OVERRIDE
|
||||
name = irFunction.name
|
||||
visibility = Visibilities.PUBLIC
|
||||
visibility = DescriptorVisibilities.PUBLIC
|
||||
modality = irFunction.modality
|
||||
returnType = irFunction.returnType
|
||||
isInline = irFunction.isInline
|
||||
@@ -499,16 +499,16 @@ fun IrClass.addFakeOverridesViaIncorrectHeuristic(implementedMembers: List<IrSim
|
||||
|
||||
@OptIn(ObsoleteDescriptorBasedAPI::class)
|
||||
fun IrFactory.createStaticFunctionWithReceivers(
|
||||
irParent: IrDeclarationParent,
|
||||
name: Name,
|
||||
oldFunction: IrFunction,
|
||||
dispatchReceiverType: IrType? = oldFunction.dispatchReceiverParameter?.type,
|
||||
origin: IrDeclarationOrigin = oldFunction.origin,
|
||||
modality: Modality = Modality.FINAL,
|
||||
visibility: Visibility = oldFunction.visibility,
|
||||
isFakeOverride: Boolean = oldFunction.isFakeOverride,
|
||||
copyMetadata: Boolean = true,
|
||||
typeParametersFromContext: List<IrTypeParameter> = listOf()
|
||||
irParent: IrDeclarationParent,
|
||||
name: Name,
|
||||
oldFunction: IrFunction,
|
||||
dispatchReceiverType: IrType? = oldFunction.dispatchReceiverParameter?.type,
|
||||
origin: IrDeclarationOrigin = oldFunction.origin,
|
||||
modality: Modality = Modality.FINAL,
|
||||
visibility: DescriptorVisibility = oldFunction.visibility,
|
||||
isFakeOverride: Boolean = oldFunction.isFakeOverride,
|
||||
copyMetadata: Boolean = true,
|
||||
typeParametersFromContext: List<IrTypeParameter> = listOf()
|
||||
): IrSimpleFunction {
|
||||
val descriptor = (oldFunction.descriptor as? DescriptorWithContainerSource)?.let {
|
||||
WrappedFunctionDescriptorWithContainerSource()
|
||||
|
||||
+4
-4
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.backend.common.lower
|
||||
import org.jetbrains.kotlin.backend.common.*
|
||||
import org.jetbrains.kotlin.backend.common.ir.*
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.IrElement
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.builders.*
|
||||
@@ -449,7 +449,7 @@ abstract class AbstractSuspendFunctionsLowering<C : CommonBackendContext>(val co
|
||||
endOffset = irFunction.endOffset
|
||||
origin = DECLARATION_ORIGIN_COROUTINE_IMPL
|
||||
name = Name.identifier("create")
|
||||
visibility = Visibilities.PROTECTED
|
||||
visibility = DescriptorVisibilities.PROTECTED
|
||||
returnType = coroutineClass.defaultType
|
||||
}.apply {
|
||||
parent = coroutineClass
|
||||
@@ -505,7 +505,7 @@ abstract class AbstractSuspendFunctionsLowering<C : CommonBackendContext>(val co
|
||||
endOffset = irFunction.endOffset
|
||||
origin = DECLARATION_ORIGIN_COROUTINE_IMPL
|
||||
name = Name.identifier("invoke")
|
||||
visibility = Visibilities.PROTECTED
|
||||
visibility = DescriptorVisibilities.PROTECTED
|
||||
returnType = context.irBuiltIns.anyNType
|
||||
isSuspend = true
|
||||
}.apply {
|
||||
@@ -623,7 +623,7 @@ abstract class AbstractSuspendFunctionsLowering<C : CommonBackendContext>(val co
|
||||
this.origin = DECLARATION_ORIGIN_COROUTINE_IMPL
|
||||
this.name = name
|
||||
this.type = type
|
||||
this.visibility = Visibilities.PRIVATE
|
||||
this.visibility = DescriptorVisibilities.PRIVATE
|
||||
this.isFinal = !isMutable
|
||||
}.also {
|
||||
it.parent = this
|
||||
|
||||
+3
-3
@@ -17,7 +17,7 @@
|
||||
package org.jetbrains.kotlin.backend.common.lower
|
||||
|
||||
import org.jetbrains.kotlin.backend.common.ir.ir2string
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.IrElement
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.expressions.*
|
||||
@@ -264,7 +264,7 @@ class ClosureAnnotator(irElement: IrElement, declaration: IrDeclaration) {
|
||||
|
||||
private fun processMemberAccess(declaration: IrDeclaration, parentClosure: ClosureBuilder?) {
|
||||
if (declaration.isLocal) {
|
||||
if (declaration is IrSimpleFunction && declaration.visibility != Visibilities.LOCAL) {
|
||||
if (declaration is IrSimpleFunction && declaration.visibility != DescriptorVisibilities.LOCAL) {
|
||||
return
|
||||
}
|
||||
|
||||
@@ -275,4 +275,4 @@ class ClosureAnnotator(irElement: IrElement, declaration: IrDeclaration) {
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+15
-15
@@ -9,8 +9,8 @@ import org.jetbrains.kotlin.backend.common.*
|
||||
import org.jetbrains.kotlin.backend.common.descriptors.synthesizedString
|
||||
import org.jetbrains.kotlin.backend.common.ir.*
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.UNDEFINED_OFFSET
|
||||
import org.jetbrains.kotlin.ir.builders.*
|
||||
@@ -229,7 +229,7 @@ open class DefaultArgumentStubGenerator(
|
||||
error("This method should be overridden")
|
||||
}
|
||||
|
||||
protected open fun defaultArgumentStubVisibility(function: IrFunction) = Visibilities.PUBLIC
|
||||
protected open fun defaultArgumentStubVisibility(function: IrFunction) = DescriptorVisibilities.PUBLIC
|
||||
|
||||
protected open fun useConstructorMarker(function: IrFunction) = function is IrConstructor
|
||||
|
||||
@@ -415,7 +415,7 @@ open class DefaultParameterInjector(
|
||||
protected open fun nullConst(startOffset: Int, endOffset: Int, type: IrType): IrExpression =
|
||||
IrConstImpl.defaultValueForType(startOffset, endOffset, type)
|
||||
|
||||
protected open fun defaultArgumentStubVisibility(function: IrFunction) = Visibilities.PUBLIC
|
||||
protected open fun defaultArgumentStubVisibility(function: IrFunction) = DescriptorVisibilities.PUBLIC
|
||||
|
||||
protected open fun useConstructorMarker(function: IrFunction) = function is IrConstructor
|
||||
|
||||
@@ -465,12 +465,12 @@ class DefaultParameterPatchOverridenSymbolsLowering(
|
||||
}
|
||||
|
||||
private fun IrFunction.generateDefaultsFunction(
|
||||
context: CommonBackendContext,
|
||||
skipInlineMethods: Boolean,
|
||||
skipExternalMethods: Boolean,
|
||||
forceSetOverrideSymbols: Boolean,
|
||||
visibility: Visibility,
|
||||
useConstructorMarker: Boolean
|
||||
context: CommonBackendContext,
|
||||
skipInlineMethods: Boolean,
|
||||
skipExternalMethods: Boolean,
|
||||
forceSetOverrideSymbols: Boolean,
|
||||
visibility: DescriptorVisibility,
|
||||
useConstructorMarker: Boolean
|
||||
): IrFunction? {
|
||||
if (skipInlineMethods && isInline) return null
|
||||
if (skipExternalMethods && isExternalOrInheritedFromExternal()) return null
|
||||
@@ -520,11 +520,11 @@ private fun IrFunction.generateDefaultsFunction(
|
||||
|
||||
@OptIn(ObsoleteDescriptorBasedAPI::class)
|
||||
private fun IrFunction.generateDefaultsFunctionImpl(
|
||||
context: CommonBackendContext,
|
||||
newOrigin: IrDeclarationOrigin,
|
||||
newVisibility: Visibility,
|
||||
isFakeOverride: Boolean,
|
||||
useConstructorMarker: Boolean
|
||||
context: CommonBackendContext,
|
||||
newOrigin: IrDeclarationOrigin,
|
||||
newVisibility: DescriptorVisibility,
|
||||
isFakeOverride: Boolean,
|
||||
useConstructorMarker: Boolean
|
||||
): IrFunction {
|
||||
val newFunction = when (this) {
|
||||
is IrConstructor ->
|
||||
|
||||
+17
-17
@@ -12,8 +12,8 @@ import org.jetbrains.kotlin.backend.common.ir.*
|
||||
import org.jetbrains.kotlin.backend.common.runOnFilePostfix
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.ReceiverParameterDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.*
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.buildConstructor
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.buildField
|
||||
@@ -49,14 +49,14 @@ interface LocalNameProvider {
|
||||
}
|
||||
|
||||
interface VisibilityPolicy {
|
||||
fun forClass(declaration: IrClass, inInlineFunctionScope: Boolean): Visibility =
|
||||
fun forClass(declaration: IrClass, inInlineFunctionScope: Boolean): DescriptorVisibility =
|
||||
declaration.visibility
|
||||
|
||||
fun forConstructor(declaration: IrConstructor, inInlineFunctionScope: Boolean): Visibility =
|
||||
Visibilities.PRIVATE
|
||||
fun forConstructor(declaration: IrConstructor, inInlineFunctionScope: Boolean): DescriptorVisibility =
|
||||
DescriptorVisibilities.PRIVATE
|
||||
|
||||
fun forCapturedField(value: IrValueSymbol): Visibility =
|
||||
Visibilities.PRIVATE
|
||||
fun forCapturedField(value: IrValueSymbol): DescriptorVisibility =
|
||||
DescriptorVisibilities.PRIVATE
|
||||
|
||||
companion object {
|
||||
val DEFAULT = object : VisibilityPolicy {}
|
||||
@@ -597,7 +597,7 @@ class LocalDeclarationsLowering(
|
||||
val newDeclaration = context.irFactory.buildFun {
|
||||
updateFrom(oldDeclaration)
|
||||
name = newName
|
||||
visibility = Visibilities.PRIVATE
|
||||
visibility = DescriptorVisibilities.PRIVATE
|
||||
modality = Modality.FINAL
|
||||
}
|
||||
|
||||
@@ -721,13 +721,13 @@ class LocalDeclarationsLowering(
|
||||
}
|
||||
|
||||
private fun createFieldForCapturedValue(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
parent: IrClass,
|
||||
fieldType: IrType,
|
||||
isCrossinline: Boolean
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
parent: IrClass,
|
||||
fieldType: IrType,
|
||||
isCrossinline: Boolean
|
||||
): IrField =
|
||||
context.irFactory.buildField {
|
||||
this.startOffset = startOffset
|
||||
@@ -883,7 +883,7 @@ class LocalDeclarationsLowering(
|
||||
override fun visitSimpleFunction(declaration: IrSimpleFunction, data: Data) {
|
||||
super.visitSimpleFunction(declaration, data.withInline(declaration.isInline))
|
||||
|
||||
if (declaration.visibility == Visibilities.LOCAL) {
|
||||
if (declaration.visibility == DescriptorVisibilities.LOCAL) {
|
||||
val enclosingScope = data.currentClass
|
||||
?: enclosingClass?.scopeWithCounter
|
||||
// File is required for K/N because file declarations are not split by classes.
|
||||
@@ -924,4 +924,4 @@ class LocalDeclarationsLowering(
|
||||
}
|
||||
|
||||
// Local inner classes capture anything through outer
|
||||
internal fun IrClass.isLocalNotInner(): Boolean = visibility == Visibilities.LOCAL && !isInner
|
||||
internal fun IrClass.isLocalNotInner(): Boolean = visibility == DescriptorVisibilities.LOCAL && !isInner
|
||||
|
||||
+6
-6
@@ -14,8 +14,8 @@ import org.jetbrains.kotlin.backend.common.ir.copyTo
|
||||
import org.jetbrains.kotlin.backend.common.ir.createImplicitParameterDeclarationWithWrappedDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.IrElement
|
||||
import org.jetbrains.kotlin.ir.IrStatement
|
||||
import org.jetbrains.kotlin.ir.builders.*
|
||||
@@ -62,7 +62,7 @@ abstract class SingleAbstractMethodLowering(val context: CommonBackendContext) :
|
||||
protected val inlineCachedImplementations = mutableMapOf<IrType, IrClass>()
|
||||
protected var enclosingContainer: IrDeclarationContainer? = null
|
||||
|
||||
abstract fun getWrapperVisibility(expression: IrTypeOperatorCall, scopes: List<ScopeWithIr>): Visibility
|
||||
abstract fun getWrapperVisibility(expression: IrTypeOperatorCall, scopes: List<ScopeWithIr>): DescriptorVisibility
|
||||
|
||||
abstract fun getSuperTypeForWrapper(typeOperand: IrType): IrType
|
||||
|
||||
@@ -143,14 +143,14 @@ abstract class SingleAbstractMethodLowering(val context: CommonBackendContext) :
|
||||
|
||||
// Construct a class that wraps an invokable object into an implementation of an interface:
|
||||
// class sam$n(private val invokable: F) : Interface { override fun method(...) = invokable(...) }
|
||||
private fun createObjectProxy(superType: IrType, wrapperVisibility: Visibility, createFor: IrElement): IrClass {
|
||||
private fun createObjectProxy(superType: IrType, wrapperVisibility: DescriptorVisibility, createFor: IrElement): IrClass {
|
||||
val superClass = superType.classifierOrFail.owner as IrClass
|
||||
// The language documentation prohibits casting lambdas to classes, but if it was allowed,
|
||||
// the `irDelegatingConstructorCall` in the constructor below would need to be modified.
|
||||
assert(superClass.kind == ClassKind.INTERFACE) { "SAM conversion to an abstract class not allowed" }
|
||||
|
||||
val superFqName = superClass.fqNameWhenAvailable!!.asString().replace('.', '_')
|
||||
val inlinePrefix = if (wrapperVisibility == Visibilities.PUBLIC) "\$i" else ""
|
||||
val inlinePrefix = if (wrapperVisibility == DescriptorVisibilities.PUBLIC) "\$i" else ""
|
||||
val wrapperName = Name.identifier("sam$inlinePrefix\$$superFqName$SAM_WRAPPER_SUFFIX")
|
||||
val superMethod = superClass.functions.single { it.modality == Modality.ABSTRACT }
|
||||
val extensionReceiversCount = if (superMethod.extensionReceiverParameter == null) 0 else 1
|
||||
@@ -178,7 +178,7 @@ abstract class SingleAbstractMethodLowering(val context: CommonBackendContext) :
|
||||
name = Name.identifier(FUNCTION_FIELD_NAME)
|
||||
type = wrappedFunctionType
|
||||
origin = subclass.origin
|
||||
visibility = Visibilities.PRIVATE
|
||||
visibility = DescriptorVisibilities.PRIVATE
|
||||
setSourceRange(createFor)
|
||||
}
|
||||
|
||||
|
||||
+3
-3
@@ -9,7 +9,7 @@ import org.jetbrains.kotlin.backend.common.BodyLoweringPass
|
||||
import org.jetbrains.kotlin.backend.common.CommonBackendContext
|
||||
import org.jetbrains.kotlin.backend.common.ir.isTopLevel
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.expressions.*
|
||||
import org.jetbrains.kotlin.ir.expressions.impl.IrGetFieldImpl
|
||||
@@ -21,7 +21,7 @@ import org.jetbrains.kotlin.ir.visitors.transformChildrenVoid
|
||||
|
||||
class PropertyAccessorInlineLowering(private val context: CommonBackendContext) : BodyLoweringPass {
|
||||
|
||||
private val IrProperty.isSafeToInline: Boolean get() = isTopLevel || (modality === Modality.FINAL || visibility == Visibilities.PRIVATE) || (parent as IrClass).modality === Modality.FINAL
|
||||
private val IrProperty.isSafeToInline: Boolean get() = isTopLevel || (modality === Modality.FINAL || visibility == DescriptorVisibilities.PRIVATE) || (parent as IrClass).modality === Modality.FINAL
|
||||
|
||||
// TODO: implement general function inlining optimization and replace it with
|
||||
private inner class AccessorInliner : IrElementTransformerVoid() {
|
||||
@@ -129,4 +129,4 @@ class PropertyAccessorInlineLowering(private val context: CommonBackendContext)
|
||||
override fun lower(irBody: IrBody, container: IrDeclaration) {
|
||||
irBody.transformChildrenVoid(AccessorInliner())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+10
-10
@@ -65,14 +65,14 @@ inline fun IrClass.addField(builder: IrFieldBuilder.() -> Unit) =
|
||||
declarations.add(field)
|
||||
}
|
||||
|
||||
fun IrClass.addField(fieldName: Name, fieldType: IrType, fieldVisibility: Visibility = Visibilities.PRIVATE): IrField =
|
||||
fun IrClass.addField(fieldName: Name, fieldType: IrType, fieldVisibility: DescriptorVisibility = DescriptorVisibilities.PRIVATE): IrField =
|
||||
addField {
|
||||
name = fieldName
|
||||
type = fieldType
|
||||
visibility = fieldVisibility
|
||||
}
|
||||
|
||||
fun IrClass.addField(fieldName: String, fieldType: IrType, fieldVisibility: Visibility = Visibilities.PRIVATE): IrField =
|
||||
fun IrClass.addField(fieldName: String, fieldType: IrType, fieldVisibility: DescriptorVisibility = DescriptorVisibilities.PRIVATE): IrField =
|
||||
addField(Name.identifier(fieldName), fieldType, fieldVisibility)
|
||||
|
||||
@PublishedApi
|
||||
@@ -162,14 +162,14 @@ inline fun IrClass.addFunction(builder: IrFunctionBuilder.() -> Unit): IrSimpleF
|
||||
factory.addFunction(this, builder)
|
||||
|
||||
fun IrClass.addFunction(
|
||||
name: String,
|
||||
returnType: IrType,
|
||||
modality: Modality = Modality.FINAL,
|
||||
visibility: Visibility = Visibilities.PUBLIC,
|
||||
isStatic: Boolean = false,
|
||||
isSuspend: Boolean = false,
|
||||
isFakeOverride: Boolean = false,
|
||||
origin: IrDeclarationOrigin = IrDeclarationOrigin.DEFINED
|
||||
name: String,
|
||||
returnType: IrType,
|
||||
modality: Modality = Modality.FINAL,
|
||||
visibility: DescriptorVisibility = DescriptorVisibilities.PUBLIC,
|
||||
isStatic: Boolean = false,
|
||||
isSuspend: Boolean = false,
|
||||
isFakeOverride: Boolean = false,
|
||||
origin: IrDeclarationOrigin = IrDeclarationOrigin.DEFINED
|
||||
): IrSimpleFunction =
|
||||
addFunction {
|
||||
this.name = Name.identifier(name)
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.ir.backend.js
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.IrElement
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.declarations.persistent.PersistentIrBodyBase
|
||||
@@ -152,7 +152,7 @@ open class MutableController(val context: JsIrBackendContext, val lowerings: Lis
|
||||
}
|
||||
|
||||
override fun canAccessDeclarationsOf(irClass: IrClass): Boolean {
|
||||
return !declarationListsRestricted || irClass.visibility == Visibilities.LOCAL && irClass !in context.extractedLocalClasses
|
||||
return !declarationListsRestricted || irClass.visibility == DescriptorVisibilities.LOCAL && irClass !in context.extractedLocalClasses
|
||||
}
|
||||
|
||||
private var restrictedToDeclaration: IrDeclaration? = null
|
||||
|
||||
+2
-2
@@ -9,7 +9,7 @@ import org.jetbrains.kotlin.backend.common.ir.isExpect
|
||||
import org.jetbrains.kotlin.config.CommonConfigurationKeys
|
||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.backend.js.*
|
||||
import org.jetbrains.kotlin.ir.backend.js.lower.ES6AddInternalParametersToConstructorPhase.*
|
||||
import org.jetbrains.kotlin.ir.backend.js.utils.getJsNameOrKotlinName
|
||||
@@ -356,7 +356,7 @@ private fun getExportCandidate(declaration: IrDeclaration): IrDeclarationWithNam
|
||||
// Only actual public declarations with name can be exported
|
||||
if (declaration !is IrDeclarationWithVisibility ||
|
||||
declaration !is IrDeclarationWithName ||
|
||||
declaration.visibility != Visibilities.PUBLIC ||
|
||||
declaration.visibility != DescriptorVisibilities.PUBLIC ||
|
||||
declaration.isExpect
|
||||
) {
|
||||
return null
|
||||
|
||||
+3
-3
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.ir.backend.js.lower
|
||||
import org.jetbrains.kotlin.backend.common.BodyLoweringPass
|
||||
import org.jetbrains.kotlin.backend.common.CommonBackendContext
|
||||
import org.jetbrains.kotlin.backend.common.ir.isElseBranch
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.IrElement
|
||||
import org.jetbrains.kotlin.ir.IrStatement
|
||||
import org.jetbrains.kotlin.ir.backend.js.JsCommonBackendContext
|
||||
@@ -57,7 +57,7 @@ abstract class AbstractBlockDecomposerLowering(
|
||||
val initFunction = context.irFactory.buildFun {
|
||||
name = Name.identifier(container.name.asString() + "\$init\$")
|
||||
returnType = container.type
|
||||
visibility = Visibilities.PRIVATE
|
||||
visibility = DescriptorVisibilities.PRIVATE
|
||||
origin = JsIrBuilder.SYNTHESIZED_DECLARATION
|
||||
}.apply {
|
||||
parent = container.parent
|
||||
@@ -766,4 +766,4 @@ class BlockDecomposerTransformer(
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+3
-3
@@ -12,7 +12,7 @@ import org.jetbrains.kotlin.backend.common.ir.createImplicitParameterDeclaration
|
||||
import org.jetbrains.kotlin.backend.common.ir.moveBodyTo
|
||||
import org.jetbrains.kotlin.backend.common.lower.createIrBuilder
|
||||
import org.jetbrains.kotlin.backend.common.runOnFilePostfix
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.UNDEFINED_OFFSET
|
||||
import org.jetbrains.kotlin.ir.builders.*
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.*
|
||||
@@ -116,7 +116,7 @@ class CallableReferenceLowering(private val context: CommonBackendContext) : Bod
|
||||
private fun buildReferenceClass(): IrClass {
|
||||
return context.irFactory.buildClass {
|
||||
setSourceRange(reference)
|
||||
visibility = Visibilities.LOCAL
|
||||
visibility = DescriptorVisibilities.LOCAL
|
||||
// A callable reference results in a synthetic class, while a lambda is not synthetic.
|
||||
// We don't produce GENERATED_SAM_IMPLEMENTATION, which is always synthetic.
|
||||
origin = if (isKReference || !isLambda) FUNCTION_REFERENCE_IMPL else LAMBDA_IMPL
|
||||
@@ -377,4 +377,4 @@ class CallableReferenceLowering(private val context: CommonBackendContext) : Bod
|
||||
val BOUND_RECEIVER_NAME = Name.identifier("\$boundThis")
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -7,7 +7,7 @@ package org.jetbrains.kotlin.ir.backend.js.lower
|
||||
|
||||
import org.jetbrains.kotlin.backend.common.CommonBackendContext
|
||||
import org.jetbrains.kotlin.backend.common.FileLoweringPass
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.IrStatement
|
||||
import org.jetbrains.kotlin.ir.UNDEFINED_OFFSET
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.buildFun
|
||||
@@ -91,7 +91,7 @@ class CreateScriptFunctionsPhase(val context: CommonBackendContext) : FileLoweri
|
||||
this.endOffset = endOffset
|
||||
this.origin = SCRIPT_FUNCTION
|
||||
this.name = Name.identifier(name)
|
||||
this.visibility = Visibilities.PRIVATE
|
||||
this.visibility = DescriptorVisibilities.PRIVATE
|
||||
this.returnType = returnType
|
||||
}.also {
|
||||
it.parent = irScript
|
||||
|
||||
+2
-2
@@ -7,7 +7,7 @@ package org.jetbrains.kotlin.ir.backend.js.lower
|
||||
|
||||
import org.jetbrains.kotlin.backend.common.BodyLoweringPass
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.IrStatement
|
||||
import org.jetbrains.kotlin.ir.UNDEFINED_OFFSET
|
||||
import org.jetbrains.kotlin.ir.backend.js.JsIrBackendContext
|
||||
@@ -109,7 +109,7 @@ class ES6AddInternalParametersToConstructorPhase(val context: JsIrBackendContext
|
||||
return context.irFactory.buildFun {
|
||||
name = Name.identifier(functionName)
|
||||
returnType = context.irBuiltIns.unitType
|
||||
visibility = Visibilities.PROTECTED
|
||||
visibility = DescriptorVisibilities.PROTECTED
|
||||
modality = Modality.FINAL
|
||||
isInline = constructor.isInline
|
||||
isExternal = constructor.isExternal
|
||||
|
||||
+2
-2
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.ir.backend.js.lower
|
||||
import org.jetbrains.kotlin.backend.common.BodyLoweringPass
|
||||
import org.jetbrains.kotlin.backend.common.ir.copyTo
|
||||
import org.jetbrains.kotlin.backend.common.ir.copyToWithoutSuperTypes
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.IrStatement
|
||||
import org.jetbrains.kotlin.ir.UNDEFINED_OFFSET
|
||||
import org.jetbrains.kotlin.ir.backend.js.JsIrBackendContext
|
||||
@@ -114,7 +114,7 @@ class InteropCallableReferenceLowering(val context: JsIrBackendContext) : BodyLo
|
||||
endOffset = invokeFun.endOffset
|
||||
// Since box/unbox is done on declaration side in case of suspend function use the specified type
|
||||
returnType = if (invokeFun.isSuspend) invokeFun.returnType else superInvokeFun.returnType
|
||||
visibility = Visibilities.LOCAL
|
||||
visibility = DescriptorVisibilities.LOCAL
|
||||
name = lambdaName
|
||||
isSuspend = invokeFun.isSuspend
|
||||
}
|
||||
|
||||
+2
-2
@@ -9,7 +9,7 @@ import org.jetbrains.kotlin.backend.common.getOrPut
|
||||
import org.jetbrains.kotlin.backend.common.ir.copyTo
|
||||
import org.jetbrains.kotlin.backend.common.ir.copyTypeParametersFrom
|
||||
import org.jetbrains.kotlin.backend.common.lower.InnerClassesSupport
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.backend.js.JsMapping
|
||||
import org.jetbrains.kotlin.ir.backend.js.ir.JsIrBuilder.SYNTHESIZED_DECLARATION
|
||||
@@ -41,7 +41,7 @@ class JsInnerClassesSupport(mapping: JsMapping, private val irFactory: IrFactory
|
||||
origin = InnerClassesSupport.FIELD_FOR_OUTER_THIS
|
||||
name = Name.identifier("\$this")
|
||||
type = outerClass.defaultType
|
||||
visibility = Visibilities.PROTECTED
|
||||
visibility = DescriptorVisibilities.PROTECTED
|
||||
isFinal = true
|
||||
isExternal = false
|
||||
isStatic = false
|
||||
|
||||
+5
-5
@@ -8,8 +8,8 @@ package org.jetbrains.kotlin.ir.backend.js.lower
|
||||
import org.jetbrains.kotlin.backend.common.BodyLoweringPass
|
||||
import org.jetbrains.kotlin.backend.common.lower.SingleAbstractMethodLowering
|
||||
import org.jetbrains.kotlin.backend.common.ScopeWithIr
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.backend.js.JsIrBackendContext
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.expressions.IrBody
|
||||
@@ -24,8 +24,8 @@ import org.jetbrains.kotlin.ir.util.render
|
||||
|
||||
class JsSingleAbstractMethodLowering(context: JsIrBackendContext) : SingleAbstractMethodLowering(context), BodyLoweringPass {
|
||||
|
||||
override fun getWrapperVisibility(expression: IrTypeOperatorCall, scopes: List<ScopeWithIr>): Visibility {
|
||||
return Visibilities.PRIVATE
|
||||
override fun getWrapperVisibility(expression: IrTypeOperatorCall, scopes: List<ScopeWithIr>): DescriptorVisibility {
|
||||
return DescriptorVisibilities.PRIVATE
|
||||
}
|
||||
|
||||
override val IrType.needEqualsHashCodeMethods get() = false
|
||||
@@ -62,4 +62,4 @@ class JsSingleAbstractMethodLowering(context: JsIrBackendContext) : SingleAbstra
|
||||
// we don't have to be more saint than a pope here.
|
||||
return typeOperand.classOrNull?.defaultType ?: error("Unsupported SAM conversion: ${typeOperand.render()}")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -7,7 +7,7 @@ package org.jetbrains.kotlin.ir.backend.js.lower
|
||||
|
||||
import org.jetbrains.kotlin.backend.common.BodyLoweringPass
|
||||
import org.jetbrains.kotlin.backend.common.DeclarationTransformer
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.IrStatement
|
||||
import org.jetbrains.kotlin.ir.backend.js.JsCommonBackendContext
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.addConstructor
|
||||
@@ -48,7 +48,7 @@ class PrimaryConstructorLowering(context: JsCommonBackendContext) : DeclarationT
|
||||
irClass.addConstructor {
|
||||
origin = SYNTHETIC_PRIMARY_CONSTRUCTOR
|
||||
isPrimary = true
|
||||
visibility = Visibilities.PRIVATE
|
||||
visibility = DescriptorVisibilities.PRIVATE
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+3
-3
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.ir.backend.js.lower
|
||||
import org.jetbrains.kotlin.backend.common.BodyLoweringPass
|
||||
import org.jetbrains.kotlin.backend.common.DeclarationTransformer
|
||||
import org.jetbrains.kotlin.backend.common.ir.copyTo
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.backend.js.JsIrBackendContext
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.buildFun
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.buildValueParameter
|
||||
@@ -47,7 +47,7 @@ class PrivateMembersLowering(val context: JsIrBackendContext) : DeclarationTrans
|
||||
|
||||
private fun transformMemberToStaticFunction(function: IrSimpleFunction): IrSimpleFunction? {
|
||||
|
||||
if (function.visibility != Visibilities.PRIVATE || function.dispatchReceiverParameter == null) return null
|
||||
if (function.visibility != DescriptorVisibilities.PRIVATE || function.dispatchReceiverParameter == null) return null
|
||||
|
||||
val staticFunction = context.irFactory.buildFun {
|
||||
updateFrom(function)
|
||||
@@ -215,4 +215,4 @@ class PrivateMemberBodiesLowering(val context: JsIrBackendContext) : BodyLowerin
|
||||
}
|
||||
}, null)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+3
-3
@@ -11,7 +11,7 @@ import org.jetbrains.kotlin.backend.common.getOrPut
|
||||
import org.jetbrains.kotlin.backend.common.ir.copyTo
|
||||
import org.jetbrains.kotlin.backend.common.ir.copyTypeParametersFrom
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.IrElement
|
||||
import org.jetbrains.kotlin.ir.IrStatement
|
||||
import org.jetbrains.kotlin.ir.UNDEFINED_OFFSET
|
||||
@@ -172,7 +172,7 @@ private fun JsIrBackendContext.buildInitDeclaration(constructor: IrConstructor,
|
||||
return irFactory.buildFun {
|
||||
name = Name.identifier(functionName)
|
||||
returnType = type
|
||||
visibility = Visibilities.INTERNAL
|
||||
visibility = DescriptorVisibilities.INTERNAL
|
||||
modality = Modality.FINAL
|
||||
isInline = constructor.isInline
|
||||
isExternal = constructor.isExternal
|
||||
@@ -306,4 +306,4 @@ private class CallsiteRedirectionTransformer(private val context: JsIrBackendCon
|
||||
putValueArgument(i, call.getValueArgument(i))
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+3
-3
@@ -9,7 +9,7 @@ import org.jetbrains.kotlin.backend.common.*
|
||||
import org.jetbrains.kotlin.backend.common.ir.*
|
||||
import org.jetbrains.kotlin.backend.common.lower.createIrBuilder
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.IrElement
|
||||
import org.jetbrains.kotlin.ir.backend.js.lower.CallableReferenceLowering
|
||||
import org.jetbrains.kotlin.ir.builders.*
|
||||
@@ -334,7 +334,7 @@ abstract class AbstractSuspendFunctionsLowering<C : CommonBackendContext>(val co
|
||||
endOffset = function.endOffset
|
||||
origin = DECLARATION_ORIGIN_COROUTINE_IMPL
|
||||
name = Name.identifier("create")
|
||||
visibility = Visibilities.PROTECTED
|
||||
visibility = DescriptorVisibilities.PROTECTED
|
||||
returnType = coroutineClass.defaultType
|
||||
}.apply {
|
||||
parent = coroutineClass
|
||||
@@ -522,7 +522,7 @@ abstract class AbstractSuspendFunctionsLowering<C : CommonBackendContext>(val co
|
||||
this.origin = DECLARATION_ORIGIN_COROUTINE_IMPL
|
||||
this.name = name
|
||||
this.type = type
|
||||
this.visibility = Visibilities.PRIVATE
|
||||
this.visibility = DescriptorVisibilities.PRIVATE
|
||||
this.isFinal = !isMutable
|
||||
}.also {
|
||||
it.parent = this
|
||||
|
||||
+3
-3
@@ -5,7 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.ir.backend.js.transformers.irToJs
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.backend.js.export.isExported
|
||||
import org.jetbrains.kotlin.ir.backend.js.utils.*
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
@@ -100,7 +100,7 @@ class JsClassGenerator(private val irClass: IrClass, val context: JsGenerationCo
|
||||
if (property.getter?.extensionReceiverParameter != null || property.setter?.extensionReceiverParameter != null)
|
||||
continue
|
||||
|
||||
if (property.visibility != Visibilities.PUBLIC)
|
||||
if (property.visibility != DescriptorVisibilities.PUBLIC)
|
||||
continue
|
||||
|
||||
if (property.isFakeOverride)
|
||||
@@ -108,7 +108,7 @@ class JsClassGenerator(private val irClass: IrClass, val context: JsGenerationCo
|
||||
|
||||
fun IrSimpleFunction.accessorRef(): JsNameRef? =
|
||||
when (visibility) {
|
||||
Visibilities.PRIVATE -> null
|
||||
DescriptorVisibilities.PRIVATE -> null
|
||||
else -> JsNameRef(
|
||||
context.getNameForMemberFunction(this),
|
||||
classPrototypeRef
|
||||
|
||||
+6
-6
@@ -15,8 +15,8 @@ import org.jetbrains.kotlin.backend.jvm.ir.copyCorrespondingPropertyFrom
|
||||
import org.jetbrains.kotlin.backend.jvm.ir.replaceThisByStaticReference
|
||||
import org.jetbrains.kotlin.config.LanguageFeature
|
||||
import org.jetbrains.kotlin.config.LanguageVersionSettings
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.buildClass
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.buildField
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.buildFun
|
||||
@@ -26,7 +26,7 @@ import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.expressions.IrExpressionBody
|
||||
import org.jetbrains.kotlin.ir.util.*
|
||||
import org.jetbrains.kotlin.load.java.DescriptorsJvmAbiUtil.isMappedIntrinsicCompanionObject
|
||||
import org.jetbrains.kotlin.load.java.JavaVisibilities
|
||||
import org.jetbrains.kotlin.load.java.JavaDescriptorVisibilities
|
||||
import org.jetbrains.kotlin.load.java.JvmAbi
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.resolve.deprecation.DeprecationResolver
|
||||
@@ -74,8 +74,8 @@ class JvmCachedDeclarations(
|
||||
isFinal = true
|
||||
isStatic = true
|
||||
visibility = when {
|
||||
!useProperVisibilityForCompanion -> Visibilities.PUBLIC
|
||||
originalVisibility == Visibilities.PROTECTED -> JavaVisibilities.PROTECTED_STATIC_VISIBILITY
|
||||
!useProperVisibilityForCompanion -> DescriptorVisibilities.PUBLIC
|
||||
originalVisibility == DescriptorVisibilities.PROTECTED -> JavaDescriptorVisibilities.PROTECTED_STATIC_VISIBILITY
|
||||
else -> originalVisibility
|
||||
}
|
||||
|
||||
@@ -93,7 +93,7 @@ class JvmCachedDeclarations(
|
||||
origin = JvmLoweredDeclarationOrigin.INTERFACE_COMPANION_PRIVATE_INSTANCE
|
||||
isFinal = true
|
||||
isStatic = true
|
||||
visibility = JavaVisibilities.PACKAGE_VISIBILITY
|
||||
visibility = JavaDescriptorVisibilities.PACKAGE_VISIBILITY
|
||||
}.apply {
|
||||
parent = singleton
|
||||
}
|
||||
@@ -170,7 +170,7 @@ class JvmCachedDeclarations(
|
||||
// Interface functions are public or private, with one exception: clone in Cloneable, which is protected.
|
||||
// However, Cloneable has no DefaultImpls, so this merely replicates the incorrect behavior of the old backend.
|
||||
// We should rather not generate a bridge to clone when interface inherits from Cloneable at all.
|
||||
visibility = if (interfaceFun.visibility == Visibilities.PRIVATE) Visibilities.PRIVATE else Visibilities.PUBLIC,
|
||||
visibility = if (interfaceFun.visibility == DescriptorVisibilities.PRIVATE) DescriptorVisibilities.PRIVATE else DescriptorVisibilities.PUBLIC,
|
||||
|
||||
isFakeOverride = false,
|
||||
typeParametersFromContext = parent.typeParameters
|
||||
|
||||
+1
-1
@@ -52,7 +52,7 @@ class JvmGeneratorExtensions(private val generateFacades: Boolean = true) : Gene
|
||||
companion object Instance : JvmSamConversion()
|
||||
}
|
||||
|
||||
override fun computeFieldVisibility(descriptor: PropertyDescriptor): Visibility? =
|
||||
override fun computeFieldVisibility(descriptor: PropertyDescriptor): DescriptorVisibility? =
|
||||
if (descriptor.hasJvmFieldAnnotation() || descriptor is JavaCallableMemberDescriptor)
|
||||
descriptor.visibility
|
||||
else
|
||||
|
||||
@@ -13,11 +13,10 @@ import org.jetbrains.kotlin.backend.common.lower.optimizations.foldConstantLower
|
||||
import org.jetbrains.kotlin.backend.common.phaser.*
|
||||
import org.jetbrains.kotlin.backend.jvm.codegen.shouldContainSuspendMarkers
|
||||
import org.jetbrains.kotlin.backend.jvm.lower.*
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.IrElement
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.symbols.IrValueParameterSymbol
|
||||
import org.jetbrains.kotlin.ir.symbols.IrValueSymbol
|
||||
import org.jetbrains.kotlin.ir.util.PatchDeclarationParentsVisitor
|
||||
import org.jetbrains.kotlin.ir.util.isAnonymousObject
|
||||
@@ -25,7 +24,7 @@ import org.jetbrains.kotlin.ir.util.parentAsClass
|
||||
import org.jetbrains.kotlin.ir.visitors.IrElementVisitorVoid
|
||||
import org.jetbrains.kotlin.ir.visitors.acceptChildrenVoid
|
||||
import org.jetbrains.kotlin.ir.visitors.acceptVoid
|
||||
import org.jetbrains.kotlin.load.java.JavaVisibilities
|
||||
import org.jetbrains.kotlin.load.java.JavaDescriptorVisibilities
|
||||
import org.jetbrains.kotlin.name.NameUtils
|
||||
|
||||
private fun makePatchParentsPhase(number: Int): NamedCompilerPhase<CommonBackendContext, IrFile> = makeIrFilePhase(
|
||||
@@ -112,7 +111,7 @@ internal val localDeclarationsPhase = makeIrFilePhase(
|
||||
NameUtils.sanitizeAsJavaIdentifier(super.localName(declaration))
|
||||
},
|
||||
object : VisibilityPolicy {
|
||||
override fun forClass(declaration: IrClass, inInlineFunctionScope: Boolean): Visibility =
|
||||
override fun forClass(declaration: IrClass, inInlineFunctionScope: Boolean): DescriptorVisibility =
|
||||
if (declaration.origin == JvmLoweredDeclarationOrigin.LAMBDA_IMPL ||
|
||||
declaration.origin == JvmLoweredDeclarationOrigin.FUNCTION_REFERENCE_IMPL ||
|
||||
declaration.origin == JvmLoweredDeclarationOrigin.GENERATED_PROPERTY_REFERENCE
|
||||
@@ -122,17 +121,17 @@ internal val localDeclarationsPhase = makeIrFilePhase(
|
||||
declaration.visibility
|
||||
}
|
||||
|
||||
override fun forConstructor(declaration: IrConstructor, inInlineFunctionScope: Boolean): Visibility =
|
||||
override fun forConstructor(declaration: IrConstructor, inInlineFunctionScope: Boolean): DescriptorVisibility =
|
||||
if (declaration.parentAsClass.isAnonymousObject)
|
||||
scopedVisibility(inInlineFunctionScope)
|
||||
else
|
||||
declaration.visibility
|
||||
|
||||
override fun forCapturedField(value: IrValueSymbol): Visibility =
|
||||
JavaVisibilities.PACKAGE_VISIBILITY // avoid requiring a synthetic accessor for it
|
||||
override fun forCapturedField(value: IrValueSymbol): DescriptorVisibility =
|
||||
JavaDescriptorVisibilities.PACKAGE_VISIBILITY // avoid requiring a synthetic accessor for it
|
||||
|
||||
private fun scopedVisibility(inInlineFunctionScope: Boolean): Visibility =
|
||||
if (inInlineFunctionScope) Visibilities.PUBLIC else JavaVisibilities.PACKAGE_VISIBILITY
|
||||
private fun scopedVisibility(inInlineFunctionScope: Boolean): DescriptorVisibility =
|
||||
if (inInlineFunctionScope) DescriptorVisibilities.PUBLIC else JavaDescriptorVisibilities.PACKAGE_VISIBILITY
|
||||
}
|
||||
)
|
||||
},
|
||||
|
||||
@@ -18,7 +18,7 @@ import org.jetbrains.kotlin.codegen.coroutines.SUSPEND_FUNCTION_CREATE_METHOD_NA
|
||||
import org.jetbrains.kotlin.descriptors.ClassDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.*
|
||||
import org.jetbrains.kotlin.ir.declarations.IrClass
|
||||
import org.jetbrains.kotlin.ir.declarations.IrDeclarationOrigin
|
||||
@@ -277,7 +277,7 @@ class JvmSymbols(
|
||||
continuationClass.typeWith(irBuiltIns.anyNType).makeNullable()
|
||||
)
|
||||
}
|
||||
klass.addFunction(INVOKE_SUSPEND_METHOD_NAME, irBuiltIns.anyNType, Modality.ABSTRACT, Visibilities.PROTECTED).apply {
|
||||
klass.addFunction(INVOKE_SUSPEND_METHOD_NAME, irBuiltIns.anyNType, Modality.ABSTRACT, DescriptorVisibilities.PROTECTED).apply {
|
||||
addValueParameter(SUSPEND_CALL_RESULT_NAME, resultClassStub.typeWith(irBuiltIns.anyNType))
|
||||
}
|
||||
klass.addFunction(SUSPEND_FUNCTION_CREATE_METHOD_NAME, continuationClass.typeWith(irBuiltIns.unitType), Modality.OPEN).apply {
|
||||
@@ -306,7 +306,7 @@ class JvmSymbols(
|
||||
addValueParameter("receiver", irBuiltIns.anyNType)
|
||||
}
|
||||
|
||||
klass.addField("receiver", irBuiltIns.anyNType, Visibilities.PROTECTED)
|
||||
klass.addField("receiver", irBuiltIns.anyNType, DescriptorVisibilities.PROTECTED)
|
||||
|
||||
generateCallableReferenceMethods(klass)
|
||||
}
|
||||
@@ -440,7 +440,7 @@ class JvmSymbols(
|
||||
backingField = irFactory.buildField {
|
||||
name = receiverFieldName
|
||||
type = irBuiltIns.anyNType
|
||||
visibility = Visibilities.PROTECTED
|
||||
visibility = DescriptorVisibilities.PROTECTED
|
||||
}.also { field ->
|
||||
field.parent = klass
|
||||
}
|
||||
|
||||
+2
-2
@@ -29,7 +29,7 @@ import org.jetbrains.kotlin.codegen.TypePathInfo
|
||||
import org.jetbrains.kotlin.config.JVMConfigurationKeys
|
||||
import org.jetbrains.kotlin.config.JvmTarget.JVM_1_6
|
||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.annotations.KotlinRetention
|
||||
import org.jetbrains.kotlin.descriptors.annotations.KotlinTarget
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
@@ -81,7 +81,7 @@ abstract class AnnotationCodegen(
|
||||
KotlinTarget.CLASS !in applicableTargets &&
|
||||
KotlinTarget.ANNOTATION_CLASS !in applicableTargets
|
||||
) {
|
||||
if (annotated.visibility == Visibilities.LOCAL) {
|
||||
if (annotated.visibility == DescriptorVisibilities.LOCAL) {
|
||||
assert(KotlinTarget.EXPRESSION in applicableTargets) {
|
||||
"Inconsistent target list for object literal annotation: $applicableTargets on $annotated"
|
||||
}
|
||||
|
||||
+2
-2
@@ -14,7 +14,7 @@ import org.jetbrains.kotlin.codegen.AsmUtil
|
||||
import org.jetbrains.kotlin.codegen.inline.*
|
||||
import org.jetbrains.kotlin.config.LanguageFeature
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.buildFun
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.descriptors.toIrBasedDescriptor
|
||||
@@ -426,7 +426,7 @@ private val Modality.flags: Int
|
||||
else -> throw AssertionError("Unsupported modality $this")
|
||||
}
|
||||
|
||||
private val Visibility.flags: Int
|
||||
private val DescriptorVisibility.flags: Int
|
||||
get() = AsmUtil.getVisibilityAccessFlag(this) ?: throw AssertionError("Unsupported visibility $this")
|
||||
|
||||
internal val IrDeclaration.OtherOrigin: JvmDeclarationOrigin
|
||||
|
||||
+2
-2
@@ -28,7 +28,7 @@ import org.jetbrains.kotlin.config.LanguageFeature
|
||||
import org.jetbrains.kotlin.config.isReleaseCoroutines
|
||||
import org.jetbrains.kotlin.config.languageVersionSettings
|
||||
import org.jetbrains.kotlin.descriptors.ClassDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.diagnostics.Errors
|
||||
import org.jetbrains.kotlin.ir.IrElement
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
@@ -258,7 +258,7 @@ class ExpressionCodegen(
|
||||
return
|
||||
|
||||
val notCallableFromJava = inlinedInto != null ||
|
||||
(Visibilities.isPrivate(irFunction.visibility) && !(irFunction is IrSimpleFunction && irFunction.isOperator)) ||
|
||||
(DescriptorVisibilities.isPrivate(irFunction.visibility) && !(irFunction is IrSimpleFunction && irFunction.isOperator)) ||
|
||||
irFunction.origin.isSynthetic ||
|
||||
// TODO: refine this condition to not generate nullability assertions on parameters
|
||||
// corresponding to captured variables and anonymous object super constructor arguments
|
||||
|
||||
+5
-5
@@ -21,12 +21,12 @@ import org.jetbrains.kotlin.codegen.state.GenerationState
|
||||
import org.jetbrains.kotlin.codegen.visitAnnotableParameterCount
|
||||
import org.jetbrains.kotlin.config.LanguageFeature
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.descriptors.toIrBasedDescriptor
|
||||
import org.jetbrains.kotlin.ir.expressions.*
|
||||
import org.jetbrains.kotlin.ir.util.*
|
||||
import org.jetbrains.kotlin.load.java.JavaVisibilities
|
||||
import org.jetbrains.kotlin.load.java.JavaDescriptorVisibilities
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.resolve.annotations.JVM_THROWS_ANNOTATION_FQ_NAME
|
||||
import org.jetbrains.kotlin.resolve.jvm.annotations.JVM_SYNTHETIC_ANNOTATION_FQ_NAME
|
||||
@@ -155,8 +155,8 @@ class FunctionCodegen(
|
||||
|
||||
private fun IrFunction.getVisibilityForDefaultArgumentStub(): Int =
|
||||
when (visibility) {
|
||||
Visibilities.PUBLIC -> Opcodes.ACC_PUBLIC
|
||||
JavaVisibilities.PACKAGE_VISIBILITY -> AsmUtil.NO_FLAG_PACKAGE_PRIVATE
|
||||
DescriptorVisibilities.PUBLIC -> Opcodes.ACC_PUBLIC
|
||||
JavaDescriptorVisibilities.PACKAGE_VISIBILITY -> AsmUtil.NO_FLAG_PACKAGE_PRIVATE
|
||||
else -> throw IllegalStateException("Default argument stub should be either public or package private: ${ir2string(this)}")
|
||||
}
|
||||
|
||||
@@ -182,7 +182,7 @@ class FunctionCodegen(
|
||||
else -> if (parentAsClass.isJvmInterface && body == null) Opcodes.ACC_ABSTRACT else 0
|
||||
}
|
||||
val isSynthetic = origin.isSynthetic || hasAnnotation(JVM_SYNTHETIC_ANNOTATION_FQ_NAME) ||
|
||||
(isSuspend && Visibilities.isPrivate(visibility) && !isInline) || isReifiable()
|
||||
(isSuspend && DescriptorVisibilities.isPrivate(visibility) && !isInline) || isReifiable()
|
||||
val isStrict = hasAnnotation(STRICTFP_ANNOTATION_FQ_NAME)
|
||||
val isSynchronized = hasAnnotation(SYNCHRONIZED_ANNOTATION_FQ_NAME)
|
||||
|
||||
|
||||
+2
-2
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.backend.jvm.codegen
|
||||
import org.jetbrains.kotlin.builtins.jvm.JavaToKotlinClassMap
|
||||
import org.jetbrains.kotlin.codegen.signature.JvmSignatureWriter
|
||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.types.IrSimpleType
|
||||
import org.jetbrains.kotlin.ir.types.IrType
|
||||
@@ -63,7 +63,7 @@ private fun IrSimpleType.buildPossiblyInnerType(classifier: IrClass?, index: Int
|
||||
|
||||
val toIndex = classifier.typeParameters.size + index
|
||||
if (!classifier.isInner) {
|
||||
assert(toIndex == arguments.size || classifier.visibility == Visibilities.LOCAL) {
|
||||
assert(toIndex == arguments.size || classifier.visibility == DescriptorVisibilities.LOCAL) {
|
||||
"${arguments.size - toIndex} trailing arguments were found in this type: ${render()}"
|
||||
}
|
||||
|
||||
|
||||
+5
-5
@@ -26,7 +26,7 @@ import org.jetbrains.kotlin.codegen.state.JVM_SUPPRESS_WILDCARDS_ANNOTATION_FQ_N
|
||||
import org.jetbrains.kotlin.codegen.state.KotlinTypeMapper
|
||||
import org.jetbrains.kotlin.codegen.state.extractTypeMappingModeFromAnnotation
|
||||
import org.jetbrains.kotlin.codegen.state.isMethodWithDeclarationSiteWildcardsFqName
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.declarations.lazy.IrLazyClass
|
||||
import org.jetbrains.kotlin.ir.declarations.lazy.IrLazyFunctionBase
|
||||
@@ -106,7 +106,7 @@ class MethodSignatureMapper(private val context: JvmBackendContext) {
|
||||
val newName = JvmCodegenUtil.sanitizeNameIfNeeded(name, context.state.languageVersionSettings)
|
||||
|
||||
if (function.isTopLevel) {
|
||||
if (Visibilities.isPrivate(function.suspendFunctionOriginal().visibility) &&
|
||||
if (DescriptorVisibilities.isPrivate(function.suspendFunctionOriginal().visibility) &&
|
||||
newName != "<clinit>" && (function.parent as? IrClass)?.attributeOwnerId in context.multifileFacadeForPart
|
||||
) {
|
||||
return "$newName$${function.parentAsClass.name.asString()}"
|
||||
@@ -123,7 +123,7 @@ class MethodSignatureMapper(private val context: JvmBackendContext) {
|
||||
private fun IrFunction.shouldMangleAsInternal() =
|
||||
this !is IrConstructor &&
|
||||
origin != JvmLoweredDeclarationOrigin.STATIC_INLINE_CLASS_CONSTRUCTOR &&
|
||||
visibility == Visibilities.INTERNAL &&
|
||||
visibility == DescriptorVisibilities.INTERNAL &&
|
||||
!isPublishedApi()
|
||||
|
||||
private fun getModuleName(function: IrFunction): String =
|
||||
@@ -313,8 +313,8 @@ class MethodSignatureMapper(private val context: JvmBackendContext) {
|
||||
val invokeOpcode = when {
|
||||
callee.dispatchReceiverParameter == null -> Opcodes.INVOKESTATIC
|
||||
isSuperCall -> Opcodes.INVOKESPECIAL
|
||||
isInterface && !Visibilities.isPrivate(callee.visibility) -> Opcodes.INVOKEINTERFACE
|
||||
Visibilities.isPrivate(callee.visibility) && !callee.isSuspend -> Opcodes.INVOKESPECIAL
|
||||
isInterface && !DescriptorVisibilities.isPrivate(callee.visibility) -> Opcodes.INVOKEINTERFACE
|
||||
DescriptorVisibilities.isPrivate(callee.visibility) && !callee.isSuspend -> Opcodes.INVOKESPECIAL
|
||||
else -> Opcodes.INVOKEVIRTUAL
|
||||
}
|
||||
|
||||
|
||||
+21
-21
@@ -20,7 +20,7 @@ import org.jetbrains.kotlin.codegen.signature.BothSignatureWriter
|
||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||
import org.jetbrains.kotlin.descriptors.DeclarationDescriptorWithSource
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.expressions.IrGetEnumValue
|
||||
import org.jetbrains.kotlin.ir.expressions.IrMemberAccessExpression
|
||||
@@ -29,7 +29,7 @@ import org.jetbrains.kotlin.ir.symbols.IrSymbol
|
||||
import org.jetbrains.kotlin.ir.types.IrSimpleType
|
||||
import org.jetbrains.kotlin.ir.types.IrType
|
||||
import org.jetbrains.kotlin.ir.util.*
|
||||
import org.jetbrains.kotlin.load.java.JavaVisibilities
|
||||
import org.jetbrains.kotlin.load.java.JavaDescriptorVisibilities
|
||||
import org.jetbrains.kotlin.load.java.JvmAbi
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
import org.jetbrains.kotlin.resolve.checkers.ExpectedActualDeclarationChecker
|
||||
@@ -133,7 +133,7 @@ fun IrClass.calculateInnerClassAccessFlags(context: JvmBackendContext): Int {
|
||||
}
|
||||
val visibility = when {
|
||||
isLambda -> getVisibilityAccessFlagForAnonymous()
|
||||
visibility === Visibilities.LOCAL -> Opcodes.ACC_PUBLIC
|
||||
visibility === DescriptorVisibilities.LOCAL -> Opcodes.ACC_PUBLIC
|
||||
else -> getVisibilityAccessFlag()
|
||||
}
|
||||
return visibility or
|
||||
@@ -163,15 +163,15 @@ fun IrDeclarationWithVisibility.getVisibilityAccessFlag(kind: OwnerKind? = null)
|
||||
return it
|
||||
}
|
||||
return when (visibility) {
|
||||
Visibilities.PRIVATE -> Opcodes.ACC_PRIVATE
|
||||
Visibilities.PRIVATE_TO_THIS -> Opcodes.ACC_PRIVATE
|
||||
Visibilities.PROTECTED -> Opcodes.ACC_PROTECTED
|
||||
JavaVisibilities.PROTECTED_STATIC_VISIBILITY -> Opcodes.ACC_PROTECTED
|
||||
JavaVisibilities.PROTECTED_AND_PACKAGE -> Opcodes.ACC_PROTECTED
|
||||
Visibilities.PUBLIC -> Opcodes.ACC_PUBLIC
|
||||
Visibilities.INTERNAL -> Opcodes.ACC_PUBLIC
|
||||
Visibilities.LOCAL -> NO_FLAG_LOCAL
|
||||
JavaVisibilities.PACKAGE_VISIBILITY -> AsmUtil.NO_FLAG_PACKAGE_PRIVATE
|
||||
DescriptorVisibilities.PRIVATE -> Opcodes.ACC_PRIVATE
|
||||
DescriptorVisibilities.PRIVATE_TO_THIS -> Opcodes.ACC_PRIVATE
|
||||
DescriptorVisibilities.PROTECTED -> Opcodes.ACC_PROTECTED
|
||||
JavaDescriptorVisibilities.PROTECTED_STATIC_VISIBILITY -> Opcodes.ACC_PROTECTED
|
||||
JavaDescriptorVisibilities.PROTECTED_AND_PACKAGE -> Opcodes.ACC_PROTECTED
|
||||
DescriptorVisibilities.PUBLIC -> Opcodes.ACC_PUBLIC
|
||||
DescriptorVisibilities.INTERNAL -> Opcodes.ACC_PUBLIC
|
||||
DescriptorVisibilities.LOCAL -> NO_FLAG_LOCAL
|
||||
JavaDescriptorVisibilities.PACKAGE_VISIBILITY -> AsmUtil.NO_FLAG_PACKAGE_PRIVATE
|
||||
else -> throw IllegalStateException("$visibility is not a valid visibility in backend for ${ir2string(this)}")
|
||||
}
|
||||
}
|
||||
@@ -180,7 +180,7 @@ private fun IrDeclarationWithVisibility.specialCaseVisibility(kind: OwnerKind?):
|
||||
// if (JvmCodegenUtil.isNonIntrinsicPrivateCompanionObjectInInterface(memberDescriptor)) {
|
||||
// return ACC_PUBLIC
|
||||
// }
|
||||
if (this is IrClass && Visibilities.isPrivate(visibility) && isCompanion && hasInterfaceParent()) {
|
||||
if (this is IrClass && DescriptorVisibilities.isPrivate(visibility) && isCompanion && hasInterfaceParent()) {
|
||||
// TODO: non-intrinsic
|
||||
return Opcodes.ACC_PUBLIC
|
||||
}
|
||||
@@ -200,7 +200,7 @@ private fun IrDeclarationWithVisibility.specialCaseVisibility(kind: OwnerKind?):
|
||||
}
|
||||
|
||||
// if (memberVisibility === Visibilities.LOCAL && memberDescriptor is CallableMemberDescriptor) {
|
||||
if (visibility === Visibilities.LOCAL && this is IrFunction) {
|
||||
if (visibility === DescriptorVisibilities.LOCAL && this is IrFunction) {
|
||||
return Opcodes.ACC_PUBLIC
|
||||
}
|
||||
|
||||
@@ -251,13 +251,13 @@ private fun IrDeclarationWithVisibility.specialCaseVisibility(kind: OwnerKind?):
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
if (this is IrSimpleFunction && visibility === Visibilities.PROTECTED &&
|
||||
if (this is IrSimpleFunction && visibility === DescriptorVisibilities.PROTECTED &&
|
||||
allOverridden().any { it.parentAsClass.isJvmInterface }
|
||||
) {
|
||||
return Opcodes.ACC_PUBLIC
|
||||
}
|
||||
|
||||
if (!Visibilities.isPrivate(visibility)) {
|
||||
if (!DescriptorVisibilities.isPrivate(visibility)) {
|
||||
return null
|
||||
}
|
||||
|
||||
@@ -299,7 +299,7 @@ fun IrDeclarationWithVisibility.isInlineOnlyPrivateInBytecode(): Boolean =
|
||||
(this is IrFunction && isInlineOnly()) || isPrivateInlineSuspend()
|
||||
|
||||
private fun IrDeclarationWithVisibility.isPrivateInlineSuspend(): Boolean =
|
||||
this is IrFunction && isSuspend && isInline && visibility == Visibilities.PRIVATE
|
||||
this is IrFunction && isSuspend && isInline && visibility == DescriptorVisibilities.PRIVATE
|
||||
|
||||
private fun IrDeclarationWithVisibility.isInlineOnlyPropertyAccessor(): Boolean {
|
||||
if (this !is IrSimpleFunction) return false
|
||||
@@ -392,11 +392,11 @@ fun IrClass.getVisibilityAccessFlagForClass(): Int {
|
||||
if (kind == ClassKind.ENUM_ENTRY) {
|
||||
return AsmUtil.NO_FLAG_PACKAGE_PRIVATE
|
||||
}
|
||||
return if (visibility === Visibilities.PUBLIC ||
|
||||
visibility === Visibilities.PROTECTED ||
|
||||
return if (visibility === DescriptorVisibilities.PUBLIC ||
|
||||
visibility === DescriptorVisibilities.PROTECTED ||
|
||||
// TODO: should be package private, but for now Kotlin's reflection can't access members of such classes
|
||||
visibility === Visibilities.LOCAL ||
|
||||
visibility === Visibilities.INTERNAL
|
||||
visibility === DescriptorVisibilities.LOCAL ||
|
||||
visibility === DescriptorVisibilities.INTERNAL
|
||||
) {
|
||||
Opcodes.ACC_PUBLIC
|
||||
} else AsmUtil.NO_FLAG_PACKAGE_PRIVATE
|
||||
|
||||
@@ -18,7 +18,7 @@ import org.jetbrains.kotlin.codegen.inline.coroutines.FOR_INLINE_SUFFIX
|
||||
import org.jetbrains.kotlin.config.JvmDefaultMode
|
||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.deserialization.PLATFORM_DEPENDENT_ANNOTATION_FQ_NAME
|
||||
import org.jetbrains.kotlin.ir.UNDEFINED_OFFSET
|
||||
import org.jetbrains.kotlin.ir.builders.IrBuilderWithScope
|
||||
@@ -39,7 +39,7 @@ import org.jetbrains.kotlin.ir.types.impl.makeTypeProjection
|
||||
import org.jetbrains.kotlin.ir.types.impl.originalKotlinType
|
||||
import org.jetbrains.kotlin.ir.util.*
|
||||
import org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid
|
||||
import org.jetbrains.kotlin.load.java.JavaVisibilities
|
||||
import org.jetbrains.kotlin.load.java.JavaDescriptorVisibilities
|
||||
import org.jetbrains.kotlin.load.java.JvmAbi
|
||||
import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmProtoBufUtil
|
||||
import org.jetbrains.kotlin.resolve.DescriptorUtils
|
||||
@@ -169,7 +169,7 @@ fun IrClass.hasJvmDefaultNoCompatibilityAnnotation(): Boolean = hasAnnotation(JV
|
||||
fun IrFunction.hasPlatformDependent(): Boolean = propertyIfAccessor.hasAnnotation(PLATFORM_DEPENDENT_ANNOTATION_FQ_NAME)
|
||||
|
||||
fun IrFunction.getJvmVisibilityOfDefaultArgumentStub() =
|
||||
if (Visibilities.isPrivate(visibility) || isInlineOnly()) JavaVisibilities.PACKAGE_VISIBILITY else Visibilities.PUBLIC
|
||||
if (DescriptorVisibilities.isPrivate(visibility) || isInlineOnly()) JavaDescriptorVisibilities.PACKAGE_VISIBILITY else DescriptorVisibilities.PUBLIC
|
||||
|
||||
fun IrValueParameter.isInlineParameter() =
|
||||
index >= 0 && !isNoinline && (type.isFunction() || type.isSuspendFunctionTypeOrSubtype()) &&
|
||||
@@ -340,7 +340,7 @@ fun IrProperty.needsAccessor(accessor: IrSimpleFunction): Boolean = when {
|
||||
// @JvmField properties have no getters/setters
|
||||
resolveFakeOverride()?.backingField?.hasAnnotation(JvmAbi.JVM_FIELD_ANNOTATION_FQ_NAME) == true -> false
|
||||
// We do not produce default accessors for private fields
|
||||
else -> accessor.origin != IrDeclarationOrigin.DEFAULT_PROPERTY_ACCESSOR || !Visibilities.isPrivate(accessor.visibility)
|
||||
else -> accessor.origin != IrDeclarationOrigin.DEFAULT_PROPERTY_ACCESSOR || !DescriptorVisibilities.isPrivate(accessor.visibility)
|
||||
}
|
||||
|
||||
val IrDeclaration.isStaticInlineClassReplacement: Boolean
|
||||
|
||||
+15
-15
@@ -24,8 +24,8 @@ import org.jetbrains.kotlin.backend.jvm.localDeclarationsPhase
|
||||
import org.jetbrains.kotlin.codegen.coroutines.*
|
||||
import org.jetbrains.kotlin.codegen.inline.coroutines.FOR_INLINE_SUFFIX
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.IrStatement
|
||||
import org.jetbrains.kotlin.ir.UNDEFINED_OFFSET
|
||||
import org.jetbrains.kotlin.ir.builders.*
|
||||
@@ -42,7 +42,7 @@ import org.jetbrains.kotlin.ir.util.*
|
||||
import org.jetbrains.kotlin.ir.visitors.IrElementTransformer
|
||||
import org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid
|
||||
import org.jetbrains.kotlin.ir.visitors.transformChildrenVoid
|
||||
import org.jetbrains.kotlin.load.java.JavaVisibilities
|
||||
import org.jetbrains.kotlin.load.java.JavaDescriptorVisibilities
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.types.Variance
|
||||
import org.jetbrains.kotlin.util.OperatorNameConventions
|
||||
@@ -163,7 +163,7 @@ private class AddContinuationLowering(private val context: JvmBackendContext) :
|
||||
JvmLoweredDeclarationOrigin.SUSPEND_LAMBDA,
|
||||
// Since inline functions can be inlined to different package, we should generate lambdas inside these functions
|
||||
// as public
|
||||
if (insideInlineFunction) Visibilities.PUBLIC else JavaVisibilities.PACKAGE_VISIBILITY
|
||||
if (insideInlineFunction) DescriptorVisibilities.PUBLIC else JavaDescriptorVisibilities.PACKAGE_VISIBILITY
|
||||
).apply {
|
||||
copyAttributes(info.reference)
|
||||
copyTypeParametersFrom(info.function)
|
||||
@@ -178,7 +178,7 @@ private class AddContinuationLowering(private val context: JvmBackendContext) :
|
||||
annotations = emptyList()
|
||||
)
|
||||
|
||||
addField(COROUTINE_LABEL_FIELD_NAME, context.irBuiltIns.intType, JavaVisibilities.PACKAGE_VISIBILITY)
|
||||
addField(COROUTINE_LABEL_FIELD_NAME, context.irBuiltIns.intType, JavaDescriptorVisibilities.PACKAGE_VISIBILITY)
|
||||
|
||||
val receiverField = info.function.extensionReceiverParameter?.let {
|
||||
assert(info.arity != 0)
|
||||
@@ -188,7 +188,7 @@ private class AddContinuationLowering(private val context: JvmBackendContext) :
|
||||
// NB extension receiver can't be crossinline
|
||||
origin = LocalDeclarationsLowering.DECLARATION_ORIGIN_FIELD_FOR_CAPTURED_VALUE
|
||||
type = it.type
|
||||
visibility = Visibilities.PRIVATE
|
||||
visibility = DescriptorVisibilities.PRIVATE
|
||||
}
|
||||
}
|
||||
|
||||
@@ -201,7 +201,7 @@ private class AddContinuationLowering(private val context: JvmBackendContext) :
|
||||
else
|
||||
LocalDeclarationsLowering.DECLARATION_ORIGIN_FIELD_FOR_CAPTURED_VALUE
|
||||
isFinal = info.reference.getValueArgument(it.index) != null
|
||||
visibility = JavaVisibilities.PACKAGE_VISIBILITY
|
||||
visibility = JavaDescriptorVisibilities.PACKAGE_VISIBILITY
|
||||
}
|
||||
}
|
||||
val fieldsForBound = parametersFields.filter { it.isFinal }
|
||||
@@ -361,7 +361,7 @@ private class AddContinuationLowering(private val context: JvmBackendContext) :
|
||||
private fun IrClass.createContinuationClassFor(
|
||||
parent: IrDeclarationParent,
|
||||
newOrigin: IrDeclarationOrigin,
|
||||
newVisibility: Visibility
|
||||
newVisibility: DescriptorVisibility
|
||||
): IrClass = context.irFactory.buildClass {
|
||||
name = Name.special("<Continuation>")
|
||||
origin = newOrigin
|
||||
@@ -382,7 +382,7 @@ private class AddContinuationLowering(private val context: JvmBackendContext) :
|
||||
addConstructor {
|
||||
isPrimary = true
|
||||
returnType = defaultType
|
||||
visibility = if (insideInlineFunction) Visibilities.PUBLIC else JavaVisibilities.PACKAGE_VISIBILITY
|
||||
visibility = if (insideInlineFunction) DescriptorVisibilities.PUBLIC else JavaDescriptorVisibilities.PACKAGE_VISIBILITY
|
||||
}.also { constructor ->
|
||||
for ((param, arg) in info.reference.getArguments()) {
|
||||
constructor.addValueParameter(name = param.name.asString(), type = arg.type)
|
||||
@@ -423,25 +423,25 @@ private class AddContinuationLowering(private val context: JvmBackendContext) :
|
||||
.createContinuationClassFor(
|
||||
irFunction,
|
||||
JvmLoweredDeclarationOrigin.CONTINUATION_CLASS,
|
||||
if (capturesCrossinline) Visibilities.PUBLIC else JavaVisibilities.PACKAGE_VISIBILITY
|
||||
if (capturesCrossinline) DescriptorVisibilities.PUBLIC else JavaDescriptorVisibilities.PACKAGE_VISIBILITY
|
||||
).apply {
|
||||
copyTypeParametersFrom(irFunction)
|
||||
val resultField = addField {
|
||||
origin = JvmLoweredDeclarationOrigin.CONTINUATION_CLASS_RESULT_FIELD
|
||||
name = Name.identifier(context.state.languageVersionSettings.dataFieldName())
|
||||
type = context.irBuiltIns.anyNType
|
||||
visibility = JavaVisibilities.PACKAGE_VISIBILITY
|
||||
visibility = JavaDescriptorVisibilities.PACKAGE_VISIBILITY
|
||||
}
|
||||
val capturedThisField = dispatchReceiverParameter?.let {
|
||||
addField {
|
||||
name = Name.identifier("this$0")
|
||||
type = it.type
|
||||
origin = InnerClassesSupport.FIELD_FOR_OUTER_THIS
|
||||
visibility = JavaVisibilities.PACKAGE_VISIBILITY
|
||||
visibility = JavaDescriptorVisibilities.PACKAGE_VISIBILITY
|
||||
isFinal = true
|
||||
}
|
||||
}
|
||||
val labelField = addField(COROUTINE_LABEL_FIELD_NAME, context.irBuiltIns.intType, JavaVisibilities.PACKAGE_VISIBILITY)
|
||||
val labelField = addField(COROUTINE_LABEL_FIELD_NAME, context.irBuiltIns.intType, JavaDescriptorVisibilities.PACKAGE_VISIBILITY)
|
||||
addConstructorForNamedFunction(capturedThisField, capturesCrossinline)
|
||||
addInvokeSuspendForNamedFunction(
|
||||
irFunction,
|
||||
@@ -458,7 +458,7 @@ private class AddContinuationLowering(private val context: JvmBackendContext) :
|
||||
addConstructor {
|
||||
isPrimary = true
|
||||
returnType = defaultType
|
||||
visibility = if (capturesCrossinline) Visibilities.PUBLIC else JavaVisibilities.PACKAGE_VISIBILITY
|
||||
visibility = if (capturesCrossinline) DescriptorVisibilities.PUBLIC else JavaDescriptorVisibilities.PACKAGE_VISIBILITY
|
||||
}.also { constructor ->
|
||||
val capturedThisParameter = capturedThisField?.let { constructor.addValueParameter(it.name.asString(), it.type) }
|
||||
val completionParameterSymbol = constructor.addCompletionValueParameter()
|
||||
@@ -615,7 +615,7 @@ private class AddContinuationLowering(private val context: JvmBackendContext) :
|
||||
modality = view.modality
|
||||
isSuspend = view.isSuspend
|
||||
isInline = view.isInline
|
||||
visibility = if (view.isInline) Visibilities.PRIVATE else view.visibility
|
||||
visibility = if (view.isInline) DescriptorVisibilities.PRIVATE else view.visibility
|
||||
origin =
|
||||
if (view.isInline) JvmLoweredDeclarationOrigin.FOR_INLINE_STATE_MACHINE_TEMPLATE
|
||||
else JvmLoweredDeclarationOrigin.FOR_INLINE_STATE_MACHINE_TEMPLATE_CAPTURES_CROSSINLINE
|
||||
|
||||
+2
-2
@@ -29,7 +29,7 @@ import org.jetbrains.kotlin.ir.expressions.impl.IrCompositeImpl
|
||||
import org.jetbrains.kotlin.ir.types.getClass
|
||||
import org.jetbrains.kotlin.ir.util.*
|
||||
import org.jetbrains.kotlin.ir.visitors.IrElementTransformer
|
||||
import org.jetbrains.kotlin.load.java.JavaVisibilities
|
||||
import org.jetbrains.kotlin.load.java.JavaDescriptorVisibilities
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.util.OperatorNameConventions
|
||||
|
||||
@@ -141,7 +141,7 @@ fun IrClass.buildAssertionsDisabledField(backendContext: JvmBackendContext, topL
|
||||
factory.buildField {
|
||||
name = Name.identifier(ASSERTIONS_DISABLED_FIELD_NAME)
|
||||
origin = JvmLoweredDeclarationOrigin.GENERATED_ASSERTION_ENABLED_FIELD
|
||||
visibility = JavaVisibilities.PACKAGE_VISIBILITY
|
||||
visibility = JavaDescriptorVisibilities.PACKAGE_VISIBILITY
|
||||
type = backendContext.irBuiltIns.booleanType
|
||||
isFinal = true
|
||||
isStatic = true
|
||||
|
||||
+3
-3
@@ -21,7 +21,7 @@ import org.jetbrains.kotlin.backend.jvm.ir.isJvmAbstract
|
||||
import org.jetbrains.kotlin.backend.jvm.lower.inlineclasses.unboxInlineClass
|
||||
import org.jetbrains.kotlin.codegen.AsmUtil
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.IrStatement
|
||||
import org.jetbrains.kotlin.ir.builders.*
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.addFunction
|
||||
@@ -178,7 +178,7 @@ internal class BridgeLowering(val context: JvmBackendContext) : FileLoweringPass
|
||||
// Only overrides may need bridges and so in particular, private and static functions do not.
|
||||
// Note that this includes the static replacements for inline class functions (which are static, but have
|
||||
// overriddenSymbols in order to produce correct signatures in the type mapper).
|
||||
if (Visibilities.isPrivate(irFunction.visibility) || irFunction.isStatic || irFunction.overriddenSymbols.isEmpty())
|
||||
if (DescriptorVisibilities.isPrivate(irFunction.visibility) || irFunction.isStatic || irFunction.overriddenSymbols.isEmpty())
|
||||
return false
|
||||
|
||||
// None of the methods of Any have type parameters and so we will not need bridges for them.
|
||||
@@ -384,7 +384,7 @@ internal class BridgeLowering(val context: JvmBackendContext) : FileLoweringPass
|
||||
// Internal functions can be overridden by non-internal functions, which changes their names since the names of internal
|
||||
// functions are mangled. In order to avoid mangling the name twice we reset the visibility for bridges to internal
|
||||
// functions to public and use the mangled name directly.
|
||||
visibility = bridge.overridden.visibility.takeUnless { it == Visibilities.INTERNAL } ?: Visibilities.PUBLIC
|
||||
visibility = bridge.overridden.visibility.takeUnless { it == DescriptorVisibilities.INTERNAL } ?: DescriptorVisibilities.PUBLIC
|
||||
name = Name.identifier(bridge.signature.name)
|
||||
returnType = bridge.overridden.returnType.eraseTypeParameters()
|
||||
isSuspend = bridge.overridden.isSuspend
|
||||
|
||||
+2
-2
@@ -17,7 +17,7 @@ import org.jetbrains.kotlin.backend.jvm.JvmLoweredDeclarationOrigin
|
||||
import org.jetbrains.kotlin.backend.jvm.ir.createJvmIrBuilder
|
||||
import org.jetbrains.kotlin.backend.jvm.ir.irArray
|
||||
import org.jetbrains.kotlin.codegen.ImplementationBodyCodegen
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.IrStatement
|
||||
import org.jetbrains.kotlin.ir.builders.*
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.addField
|
||||
@@ -87,7 +87,7 @@ private class EnumClassLowering(val context: JvmBackendContext) : ClassLoweringP
|
||||
private fun buildValuesField(): IrField = irClass.addField {
|
||||
name = Name.identifier(ImplementationBodyCodegen.ENUM_VALUES_FIELD_NAME)
|
||||
type = context.irBuiltIns.arrayClass.typeWith(irClass.defaultType)
|
||||
visibility = Visibilities.PRIVATE
|
||||
visibility = DescriptorVisibilities.PRIVATE
|
||||
origin = IrDeclarationOrigin.FIELD_FOR_ENUM_VALUES
|
||||
isFinal = true
|
||||
isStatic = true
|
||||
|
||||
+3
-3
@@ -24,8 +24,8 @@ import org.jetbrains.kotlin.codegen.AsmUtil
|
||||
import org.jetbrains.kotlin.config.JvmAnalysisFlags
|
||||
import org.jetbrains.kotlin.descriptors.ClassDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.fileClasses.JvmFileClassInfo
|
||||
import org.jetbrains.kotlin.fileClasses.JvmFileClassUtil
|
||||
import org.jetbrains.kotlin.fileClasses.JvmSimpleFileClassInfo
|
||||
@@ -35,7 +35,7 @@ import org.jetbrains.kotlin.ir.descriptors.WrappedClassDescriptor
|
||||
import org.jetbrains.kotlin.ir.symbols.impl.IrClassSymbolImpl
|
||||
import org.jetbrains.kotlin.ir.util.NaiveSourceBasedFileEntryImpl
|
||||
import org.jetbrains.kotlin.ir.util.fqNameWhenAvailable
|
||||
import org.jetbrains.kotlin.load.java.JavaVisibilities
|
||||
import org.jetbrains.kotlin.load.java.JavaDescriptorVisibilities
|
||||
import org.jetbrains.kotlin.load.kotlin.PackagePartClassUtils
|
||||
import org.jetbrains.kotlin.psi2ir.PsiSourceManager
|
||||
import org.jetbrains.kotlin.resolve.jvm.JvmClassName
|
||||
@@ -100,7 +100,7 @@ private class FileClassLowering(val context: JvmBackendContext) : FileLoweringPa
|
||||
symbol = IrClassSymbolImpl(descriptor),
|
||||
name = fileClassInfo.fileClassFqName.shortName(),
|
||||
kind = ClassKind.CLASS,
|
||||
visibility = if (!fileClassInfo.withJvmMultifileClass) Visibilities.PUBLIC else JavaVisibilities.PACKAGE_VISIBILITY,
|
||||
visibility = if (!fileClassInfo.withJvmMultifileClass) DescriptorVisibilities.PUBLIC else JavaDescriptorVisibilities.PACKAGE_VISIBILITY,
|
||||
modality = Modality.FINAL
|
||||
).apply {
|
||||
descriptor.bind(this)
|
||||
|
||||
+2
-2
@@ -18,7 +18,7 @@ import org.jetbrains.kotlin.backend.jvm.ir.irArray
|
||||
import org.jetbrains.kotlin.builtins.StandardNames
|
||||
import org.jetbrains.kotlin.builtins.functions.BuiltInFunctionArity
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.IrStatement
|
||||
import org.jetbrains.kotlin.ir.builders.*
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.addFunction
|
||||
@@ -105,7 +105,7 @@ private class FunctionNVarargBridgeLowering(val context: JvmBackendContext) :
|
||||
name = superFunction.name
|
||||
returnType = context.irBuiltIns.anyNType
|
||||
modality = Modality.FINAL
|
||||
visibility = Visibilities.PUBLIC
|
||||
visibility = DescriptorVisibilities.PUBLIC
|
||||
origin = IrDeclarationOrigin.BRIDGE
|
||||
}.apply {
|
||||
overriddenSymbols += superFunction.symbol
|
||||
|
||||
+2
-2
@@ -15,7 +15,7 @@ import org.jetbrains.kotlin.backend.jvm.JvmLoweredDeclarationOrigin
|
||||
import org.jetbrains.kotlin.backend.jvm.ir.*
|
||||
import org.jetbrains.kotlin.backend.jvm.lower.inlineclasses.InlineClassAbi
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.UNDEFINED_OFFSET
|
||||
import org.jetbrains.kotlin.ir.builders.*
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.addConstructor
|
||||
@@ -168,7 +168,7 @@ internal class FunctionReferenceLowering(private val context: JvmBackendContext)
|
||||
|
||||
private val functionReferenceClass = context.irFactory.buildClass {
|
||||
setSourceRange(irFunctionReference)
|
||||
visibility = Visibilities.LOCAL
|
||||
visibility = DescriptorVisibilities.LOCAL
|
||||
// A callable reference results in a synthetic class, while a lambda is not synthetic.
|
||||
// We don't produce GENERATED_SAM_IMPLEMENTATION, which is always synthetic.
|
||||
origin = if (isLambda) JvmLoweredDeclarationOrigin.LAMBDA_IMPL else JvmLoweredDeclarationOrigin.FUNCTION_REFERENCE_IMPL
|
||||
|
||||
+6
-6
@@ -17,9 +17,9 @@ import org.jetbrains.kotlin.backend.jvm.JvmBackendContext
|
||||
import org.jetbrains.kotlin.backend.jvm.JvmLoweredDeclarationOrigin
|
||||
import org.jetbrains.kotlin.backend.jvm.codegen.fileParent
|
||||
import org.jetbrains.kotlin.config.JvmAnalysisFlags
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.ModuleDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.impl.EmptyPackageFragmentDescriptor
|
||||
import org.jetbrains.kotlin.ir.*
|
||||
import org.jetbrains.kotlin.ir.builders.*
|
||||
@@ -37,7 +37,7 @@ import org.jetbrains.kotlin.ir.util.*
|
||||
import org.jetbrains.kotlin.ir.visitors.IrElementTransformer
|
||||
import org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid
|
||||
import org.jetbrains.kotlin.ir.visitors.transformChildrenVoid
|
||||
import org.jetbrains.kotlin.load.java.JavaVisibilities
|
||||
import org.jetbrains.kotlin.load.java.JavaDescriptorVisibilities
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.resolve.inline.INLINE_ONLY_ANNOTATION_FQ_NAME
|
||||
import org.jetbrains.kotlin.resolve.jvm.JvmClassName
|
||||
@@ -123,7 +123,7 @@ private fun generateMultifileFacades(
|
||||
superTypes += superClass.typeWith()
|
||||
|
||||
addConstructor {
|
||||
visibility = Visibilities.PRIVATE
|
||||
visibility = DescriptorVisibilities.PRIVATE
|
||||
isPrimary = true
|
||||
}.also { constructor ->
|
||||
constructor.body = context.createIrBuilder(constructor.symbol).irBlockBody {
|
||||
@@ -163,7 +163,7 @@ private fun modifyMultifilePartsForHierarchy(context: JvmBackendContext, unsorte
|
||||
|
||||
for ((klass, superClass) in parts.zip(superClasses)) {
|
||||
klass.modality = Modality.OPEN
|
||||
klass.visibility = JavaVisibilities.PACKAGE_VISIBILITY
|
||||
klass.visibility = JavaDescriptorVisibilities.PACKAGE_VISIBILITY
|
||||
|
||||
klass.superTypes = listOf(superClass.typeWith())
|
||||
|
||||
@@ -191,7 +191,7 @@ private fun moveFieldsOfConstProperties(partClass: IrClass, facadeClass: IrClass
|
||||
|
||||
private fun IrField.shouldMoveToFacade(): Boolean {
|
||||
val property = correspondingPropertySymbol?.owner
|
||||
return property != null && property.isConst && !Visibilities.isPrivate(visibility)
|
||||
return property != null && property.isConst && !DescriptorVisibilities.isPrivate(visibility)
|
||||
}
|
||||
|
||||
private fun IrSimpleFunction.createMultifileDelegateIfNeeded(
|
||||
@@ -201,7 +201,7 @@ private fun IrSimpleFunction.createMultifileDelegateIfNeeded(
|
||||
): IrSimpleFunction? {
|
||||
val target = this
|
||||
|
||||
if (Visibilities.isPrivate(visibility) ||
|
||||
if (DescriptorVisibilities.isPrivate(visibility) ||
|
||||
name == StaticInitializersLowering.clinitName ||
|
||||
origin == JvmLoweredDeclarationOrigin.SYNTHETIC_ACCESSOR
|
||||
) return null
|
||||
|
||||
+2
-2
@@ -18,7 +18,7 @@ import org.jetbrains.kotlin.backend.jvm.codegen.isJvmInterface
|
||||
import org.jetbrains.kotlin.backend.jvm.ir.*
|
||||
import org.jetbrains.kotlin.config.JvmDefaultMode
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.deserialization.PLATFORM_DEPENDENT_ANNOTATION_FQ_NAME
|
||||
import org.jetbrains.kotlin.ir.IrElement
|
||||
import org.jetbrains.kotlin.ir.builders.irBlockBody
|
||||
@@ -250,7 +250,7 @@ internal fun IrSimpleFunction.findInterfaceImplementation(jvmDefaultMode: JvmDef
|
||||
}
|
||||
|
||||
if (!implementation.hasInterfaceParent()
|
||||
|| Visibilities.isPrivate(implementation.visibility)
|
||||
|| DescriptorVisibilities.isPrivate(implementation.visibility)
|
||||
|| implementation.isDefinitelyNotDefaultImplsMethod(jvmDefaultMode)
|
||||
|| implementation.isMethodOfAny()
|
||||
) {
|
||||
|
||||
+4
-4
@@ -16,7 +16,7 @@ import org.jetbrains.kotlin.backend.jvm.ir.IrInlineReferenceLocator
|
||||
import org.jetbrains.kotlin.backend.jvm.ir.createJvmIrBuilder
|
||||
import org.jetbrains.kotlin.backend.jvm.ir.irArray
|
||||
import org.jetbrains.kotlin.codegen.AsmUtil.BOUND_REFERENCE_RECEIVER
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.builders.*
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.addValueParameter
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.buildFun
|
||||
@@ -80,7 +80,7 @@ internal class InlineCallableReferenceToLambdaPhase(val context: JvmBackendConte
|
||||
setSourceRange(expression)
|
||||
origin = IrDeclarationOrigin.LOCAL_FUNCTION_FOR_LAMBDA
|
||||
name = Name.identifier("stub_for_inline")
|
||||
visibility = Visibilities.LOCAL
|
||||
visibility = DescriptorVisibilities.LOCAL
|
||||
returnType = field.type
|
||||
isSuspend = false
|
||||
}.apply {
|
||||
@@ -140,7 +140,7 @@ internal class InlineCallableReferenceToLambdaPhase(val context: JvmBackendConte
|
||||
setSourceRange(expression)
|
||||
origin = IrDeclarationOrigin.LOCAL_FUNCTION_FOR_LAMBDA
|
||||
name = Name.identifier("stub_for_inlining")
|
||||
visibility = Visibilities.LOCAL
|
||||
visibility = DescriptorVisibilities.LOCAL
|
||||
returnType = referencedFunction.returnType
|
||||
isSuspend = referencedFunction.isSuspend
|
||||
}.apply {
|
||||
@@ -197,4 +197,4 @@ internal class InlineCallableReferenceToLambdaPhase(val context: JvmBackendConte
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+3
-3
@@ -14,7 +14,7 @@ import org.jetbrains.kotlin.backend.jvm.codegen.isJvmInterface
|
||||
import org.jetbrains.kotlin.backend.jvm.ir.*
|
||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.expressions.IrCall
|
||||
import org.jetbrains.kotlin.ir.expressions.IrExpression
|
||||
@@ -104,7 +104,7 @@ internal class InterfaceLowering(val context: JvmBackendContext) : IrElementTran
|
||||
val implementation = function.resolveFakeOverride() ?: error("No single implementation found for: ${function.render()}")
|
||||
|
||||
when {
|
||||
Visibilities.isPrivate(implementation.visibility) || implementation.isMethodOfAny() ->
|
||||
DescriptorVisibilities.isPrivate(implementation.visibility) || implementation.isMethodOfAny() ->
|
||||
continue
|
||||
!function.isDefinitelyNotDefaultImplsMethod(jvmDefaultMode, implementation) -> {
|
||||
val defaultImpl = createDefaultImpl(function)
|
||||
@@ -123,7 +123,7 @@ internal class InterfaceLowering(val context: JvmBackendContext) : IrElementTran
|
||||
* 3) Private methods (not compiled to JVM defaults), default parameter dispatchers (not compiled to JVM defaults)
|
||||
* and $annotation methods are always moved without bridges
|
||||
*/
|
||||
(Visibilities.isPrivate(function.visibility) && !function.isCompiledToJvmDefault(jvmDefaultMode))
|
||||
(DescriptorVisibilities.isPrivate(function.visibility) && !function.isCompiledToJvmDefault(jvmDefaultMode))
|
||||
|| (function.origin == IrDeclarationOrigin.FUNCTION_FOR_DEFAULT_PARAMETER && !function.isCompiledToJvmDefault(jvmDefaultMode))
|
||||
|| function.origin == JvmLoweredDeclarationOrigin.SYNTHETIC_METHOD_FOR_PROPERTY_ANNOTATIONS -> {
|
||||
val defaultImpl = createDefaultImpl(function)
|
||||
|
||||
+4
-4
@@ -11,7 +11,7 @@ import org.jetbrains.kotlin.backend.common.lower.createIrBuilder
|
||||
import org.jetbrains.kotlin.backend.common.phaser.makeIrFilePhase
|
||||
import org.jetbrains.kotlin.backend.jvm.JvmBackendContext
|
||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.addConstructor
|
||||
import org.jetbrains.kotlin.ir.builders.irBlockBody
|
||||
import org.jetbrains.kotlin.ir.builders.irDelegatingConstructorCall
|
||||
@@ -35,11 +35,11 @@ internal val jvmDefaultConstructorPhase = makeIrFilePhase(
|
||||
private class JvmDefaultConstructorLowering(val context: JvmBackendContext) : ClassLoweringPass {
|
||||
|
||||
override fun lower(irClass: IrClass) {
|
||||
if (irClass.kind != ClassKind.CLASS || irClass.visibility == Visibilities.LOCAL || irClass.isInline || irClass.isInner)
|
||||
if (irClass.kind != ClassKind.CLASS || irClass.visibility == DescriptorVisibilities.LOCAL || irClass.isInline || irClass.isInner)
|
||||
return
|
||||
|
||||
val primaryConstructor = irClass.constructors.firstOrNull { it.isPrimary } ?: return
|
||||
if (Visibilities.isPrivate(primaryConstructor.visibility))
|
||||
if (DescriptorVisibilities.isPrivate(primaryConstructor.visibility))
|
||||
return
|
||||
|
||||
if (primaryConstructor.valueParameters.isEmpty() || !primaryConstructor.valueParameters.all { it.hasDefaultValue() })
|
||||
@@ -62,4 +62,4 @@ private class JvmDefaultConstructorLowering(val context: JvmBackendContext) : Cl
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -18,7 +18,7 @@ import org.jetbrains.kotlin.backend.jvm.JvmLoweredDeclarationOrigin
|
||||
import org.jetbrains.kotlin.backend.jvm.lower.inlineclasses.*
|
||||
import org.jetbrains.kotlin.builtins.StandardNames
|
||||
import org.jetbrains.kotlin.config.ApiVersion
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.IrStatement
|
||||
import org.jetbrains.kotlin.ir.UNDEFINED_OFFSET
|
||||
import org.jetbrains.kotlin.ir.builders.*
|
||||
@@ -468,7 +468,7 @@ private class JvmInlineClassLowering(private val context: JvmBackendContext) : F
|
||||
// Add the default primary constructor
|
||||
irClass.addConstructor {
|
||||
updateFrom(irConstructor)
|
||||
visibility = Visibilities.PRIVATE
|
||||
visibility = DescriptorVisibilities.PRIVATE
|
||||
origin = JvmLoweredDeclarationOrigin.SYNTHETIC_INLINE_CLASS_MEMBER
|
||||
returnType = irConstructor.returnType
|
||||
}.apply {
|
||||
|
||||
+2
-2
@@ -21,7 +21,7 @@ import org.jetbrains.kotlin.ir.util.deepCopyWithSymbols
|
||||
import org.jetbrains.kotlin.ir.util.defaultType
|
||||
import org.jetbrains.kotlin.ir.util.dump
|
||||
import org.jetbrains.kotlin.ir.util.parentAsClass
|
||||
import org.jetbrains.kotlin.load.java.JavaVisibilities
|
||||
import org.jetbrains.kotlin.load.java.JavaDescriptorVisibilities
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
|
||||
class JvmInnerClassesSupport(private val irFactory: IrFactory) : InnerClassesSupport {
|
||||
@@ -36,7 +36,7 @@ class JvmInnerClassesSupport(private val irFactory: IrFactory) : InnerClassesSup
|
||||
name = Name.identifier("this$0")
|
||||
type = innerClass.parentAsClass.defaultType
|
||||
origin = InnerClassesSupport.FIELD_FOR_OUTER_THIS
|
||||
visibility = JavaVisibilities.PACKAGE_VISIBILITY
|
||||
visibility = JavaDescriptorVisibilities.PACKAGE_VISIBILITY
|
||||
isFinal = true
|
||||
}.apply {
|
||||
parent = innerClass
|
||||
|
||||
+4
-4
@@ -10,13 +10,13 @@ import org.jetbrains.kotlin.backend.common.lower.SingleAbstractMethodLowering
|
||||
import org.jetbrains.kotlin.backend.common.phaser.makeIrFilePhase
|
||||
import org.jetbrains.kotlin.backend.jvm.JvmBackendContext
|
||||
import org.jetbrains.kotlin.backend.jvm.ir.erasedUpperBound
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.declarations.IrDeclarationOrigin
|
||||
import org.jetbrains.kotlin.ir.expressions.IrTypeOperatorCall
|
||||
import org.jetbrains.kotlin.ir.types.IrType
|
||||
import org.jetbrains.kotlin.ir.types.getClass
|
||||
import org.jetbrains.kotlin.ir.util.defaultType
|
||||
import org.jetbrains.kotlin.load.java.JavaVisibilities
|
||||
import org.jetbrains.kotlin.load.java.JavaDescriptorVisibilities
|
||||
|
||||
internal val singleAbstractMethodPhase = makeIrFilePhase(
|
||||
::JvmSingleAbstractMethodLowering,
|
||||
@@ -26,7 +26,7 @@ internal val singleAbstractMethodPhase = makeIrFilePhase(
|
||||
|
||||
private class JvmSingleAbstractMethodLowering(context: JvmBackendContext) : SingleAbstractMethodLowering(context) {
|
||||
override fun getWrapperVisibility(expression: IrTypeOperatorCall, scopes: List<ScopeWithIr>) =
|
||||
if (inInlineFunctionScope) Visibilities.PUBLIC else JavaVisibilities.PACKAGE_VISIBILITY
|
||||
if (inInlineFunctionScope) DescriptorVisibilities.PUBLIC else JavaDescriptorVisibilities.PACKAGE_VISIBILITY
|
||||
|
||||
override fun getSuperTypeForWrapper(typeOperand: IrType): IrType =
|
||||
typeOperand.erasedUpperBound.defaultType
|
||||
@@ -35,4 +35,4 @@ private class JvmSingleAbstractMethodLowering(context: JvmBackendContext) : Sing
|
||||
get() = getClass()?.origin != IrDeclarationOrigin.IR_EXTERNAL_JAVA_DECLARATION_STUB
|
||||
|
||||
override val IrType.needEqualsHashCodeMethods get() = isKotlinFunInterface
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -21,7 +21,7 @@ import org.jetbrains.kotlin.backend.jvm.ir.copyCorrespondingPropertyFrom
|
||||
import org.jetbrains.kotlin.backend.jvm.ir.isInCurrentModule
|
||||
import org.jetbrains.kotlin.backend.jvm.ir.replaceThisByStaticReference
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.addFunction
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.buildFun
|
||||
import org.jetbrains.kotlin.ir.builders.irCall
|
||||
@@ -102,7 +102,7 @@ private class CompanionObjectJvmStaticLowering(val context: JvmBackendContext) :
|
||||
modality = if (isInterface) Modality.OPEN else target.modality
|
||||
// Since we already mangle the name above we need to reset internal visibilities to public in order
|
||||
// to avoid mangling the same name twice.
|
||||
visibility = if (target.visibility == Visibilities.INTERNAL) Visibilities.PUBLIC else target.visibility
|
||||
visibility = if (target.visibility == DescriptorVisibilities.INTERNAL) DescriptorVisibilities.PUBLIC else target.visibility
|
||||
isSuspend = target.isSuspend
|
||||
}.apply {
|
||||
copyTypeParametersFrom(target)
|
||||
|
||||
+7
-7
@@ -16,8 +16,8 @@ import org.jetbrains.kotlin.backend.jvm.JvmLoweredDeclarationOrigin
|
||||
import org.jetbrains.kotlin.backend.jvm.ir.getJvmNameFromAnnotation
|
||||
import org.jetbrains.kotlin.config.LanguageFeature
|
||||
import org.jetbrains.kotlin.config.languageVersionSettings
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.ir.UNDEFINED_OFFSET
|
||||
import org.jetbrains.kotlin.ir.builders.*
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.*
|
||||
@@ -30,7 +30,7 @@ import org.jetbrains.kotlin.ir.types.*
|
||||
import org.jetbrains.kotlin.ir.util.constructors
|
||||
import org.jetbrains.kotlin.ir.util.functions
|
||||
import org.jetbrains.kotlin.ir.util.isFileClass
|
||||
import org.jetbrains.kotlin.load.java.JavaVisibilities
|
||||
import org.jetbrains.kotlin.load.java.JavaDescriptorVisibilities
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.types.Variance
|
||||
|
||||
@@ -122,7 +122,7 @@ private class MainMethodGenerationLowering(private val context: JvmBackendContex
|
||||
private fun IrClass.generateMainMethod(makeBody: IrBlockBodyBuilder.(IrValueParameter) -> Unit) =
|
||||
addFunction {
|
||||
name = Name.identifier("main")
|
||||
visibility = Visibilities.PUBLIC
|
||||
visibility = DescriptorVisibilities.PUBLIC
|
||||
returnType = context.irBuiltIns.unitType
|
||||
modality = Modality.FINAL
|
||||
this.origin = JvmLoweredDeclarationOrigin.GENERATED_EXTENDED_MAIN
|
||||
@@ -139,7 +139,7 @@ private class MainMethodGenerationLowering(private val context: JvmBackendContex
|
||||
return irBlock {
|
||||
val wrapperConstructor = backendContext.irFactory.buildClass {
|
||||
name = Name.special("<main-wrapper>")
|
||||
visibility = JavaVisibilities.PACKAGE_VISIBILITY
|
||||
visibility = JavaDescriptorVisibilities.PACKAGE_VISIBILITY
|
||||
modality = Modality.FINAL
|
||||
origin = JvmLoweredDeclarationOrigin.FUNCTION_REFERENCE_IMPL
|
||||
}.let { wrapper ->
|
||||
@@ -159,7 +159,7 @@ private class MainMethodGenerationLowering(private val context: JvmBackendContex
|
||||
wrapper.addField {
|
||||
name = Name.identifier("args")
|
||||
type = stringArrayType
|
||||
visibility = Visibilities.PRIVATE
|
||||
visibility = DescriptorVisibilities.PRIVATE
|
||||
origin = LocalDeclarationsLowering.DECLARATION_ORIGIN_FIELD_FOR_CAPTURED_VALUE
|
||||
}
|
||||
}
|
||||
@@ -179,7 +179,7 @@ private class MainMethodGenerationLowering(private val context: JvmBackendContex
|
||||
|
||||
wrapper.addConstructor {
|
||||
isPrimary = true
|
||||
visibility = JavaVisibilities.PACKAGE_VISIBILITY
|
||||
visibility = JavaDescriptorVisibilities.PACKAGE_VISIBILITY
|
||||
}.also { constructor ->
|
||||
val superClassConstructor = lambdaSuperClass.owner.constructors.single()
|
||||
val param = args?.let { constructor.addValueParameter("args", stringArrayType) }
|
||||
@@ -211,4 +211,4 @@ private class MainMethodGenerationLowering(private val context: JvmBackendContex
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -11,7 +11,7 @@ import org.jetbrains.kotlin.backend.common.phaser.makeIrFilePhase
|
||||
import org.jetbrains.kotlin.backend.jvm.JvmBackendContext
|
||||
import org.jetbrains.kotlin.backend.jvm.ir.replaceThisByStaticReference
|
||||
import org.jetbrains.kotlin.backend.jvm.propertiesPhase
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.addProperty
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.buildField
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
@@ -92,7 +92,7 @@ private class MoveOrCopyCompanionObjectFieldsLowering(val context: JvmBackendCon
|
||||
}
|
||||
|
||||
private val IrProperty.hasPublicVisibility: Boolean
|
||||
get() = !Visibilities.isPrivate(visibility) && visibility != Visibilities.PROTECTED
|
||||
get() = !DescriptorVisibilities.isPrivate(visibility) && visibility != DescriptorVisibilities.PROTECTED
|
||||
|
||||
private fun makeAnonymousInitializerStatic(oldInitializer: IrAnonymousInitializer, newParent: IrClass) =
|
||||
with(oldInitializer) {
|
||||
|
||||
+3
-3
@@ -11,7 +11,7 @@ import org.jetbrains.kotlin.backend.common.phaser.makeIrFilePhase
|
||||
import org.jetbrains.kotlin.backend.common.lower.createIrBuilder
|
||||
import org.jetbrains.kotlin.backend.jvm.JvmBackendContext
|
||||
import org.jetbrains.kotlin.config.LanguageFeature
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.IrStatement
|
||||
import org.jetbrains.kotlin.ir.builders.irCall
|
||||
import org.jetbrains.kotlin.ir.builders.irExprBody
|
||||
@@ -69,7 +69,7 @@ private class ObjectClassLowering(val context: JvmBackendContext) : IrElementTra
|
||||
// Mark object instance field as deprecated if the object visibility is private or protected,
|
||||
// and ProperVisibilityForCompanionObjectInstanceField language feature is not enabled.
|
||||
if (!context.state.languageVersionSettings.supportsFeature(LanguageFeature.ProperVisibilityForCompanionObjectInstanceField) &&
|
||||
(irClass.visibility == Visibilities.PRIVATE || irClass.visibility == Visibilities.PROTECTED)
|
||||
(irClass.visibility == DescriptorVisibilities.PRIVATE || irClass.visibility == DescriptorVisibilities.PROTECTED)
|
||||
) {
|
||||
context.createIrBuilder(irClass.symbol).run {
|
||||
publicInstanceField.annotations +=
|
||||
@@ -81,4 +81,4 @@ private class ObjectClassLowering(val context: JvmBackendContext) : IrElementTra
|
||||
(publicInstanceField.parent as IrDeclarationContainer).declarations.add(0, publicInstanceField)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+5
-5
@@ -23,8 +23,8 @@ import org.jetbrains.kotlin.backend.jvm.lower.FunctionReferenceLowering.Companio
|
||||
import org.jetbrains.kotlin.backend.jvm.lower.FunctionReferenceLowering.Companion.kClassToJavaClass
|
||||
import org.jetbrains.kotlin.backend.jvm.lower.inlineclasses.InlineClassAbi
|
||||
import org.jetbrains.kotlin.backend.jvm.lower.inlineclasses.isInlineClassFieldGetter
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.ir.IrStatement
|
||||
import org.jetbrains.kotlin.ir.UNDEFINED_OFFSET
|
||||
import org.jetbrains.kotlin.ir.builders.*
|
||||
@@ -39,7 +39,7 @@ import org.jetbrains.kotlin.ir.types.impl.IrSimpleTypeImpl
|
||||
import org.jetbrains.kotlin.ir.types.impl.makeTypeProjection
|
||||
import org.jetbrains.kotlin.ir.util.*
|
||||
import org.jetbrains.kotlin.ir.visitors.transformChildrenVoid
|
||||
import org.jetbrains.kotlin.load.java.JavaVisibilities
|
||||
import org.jetbrains.kotlin.load.java.JavaDescriptorVisibilities
|
||||
import org.jetbrains.kotlin.load.java.JvmAbi
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.name.SpecialNames
|
||||
@@ -121,7 +121,7 @@ internal class PropertyReferenceLowering(val context: JvmBackendContext) : Class
|
||||
val needsDummySignature =
|
||||
getter.owner.correspondingPropertySymbol?.owner?.needsAccessor(getter.owner) == false ||
|
||||
// Internal underlying vals of inline classes have no getter method
|
||||
getter.owner.isInlineClassFieldGetter && getter.owner.visibility == Visibilities.INTERNAL
|
||||
getter.owner.isInlineClassFieldGetter && getter.owner.visibility == DescriptorVisibilities.INTERNAL
|
||||
|
||||
putValueArgument(
|
||||
0,
|
||||
@@ -199,7 +199,7 @@ internal class PropertyReferenceLowering(val context: JvmBackendContext) : Class
|
||||
origin = JvmLoweredDeclarationOrigin.GENERATED_PROPERTY_REFERENCE
|
||||
isFinal = true
|
||||
isStatic = true
|
||||
visibility = JavaVisibilities.PACKAGE_VISIBILITY
|
||||
visibility = JavaDescriptorVisibilities.PACKAGE_VISIBILITY
|
||||
}
|
||||
var localPropertiesInClass = 0
|
||||
|
||||
@@ -283,7 +283,7 @@ internal class PropertyReferenceLowering(val context: JvmBackendContext) : Class
|
||||
setSourceRange(expression)
|
||||
name = SpecialNames.NO_NAME_PROVIDED
|
||||
origin = JvmLoweredDeclarationOrigin.GENERATED_PROPERTY_REFERENCE
|
||||
visibility = Visibilities.LOCAL
|
||||
visibility = DescriptorVisibilities.LOCAL
|
||||
}.apply {
|
||||
parent = irClass
|
||||
superTypes = listOf(superClass.defaultType)
|
||||
|
||||
+2
-2
@@ -17,7 +17,7 @@ import org.jetbrains.kotlin.ir.declarations.IrField
|
||||
import org.jetbrains.kotlin.ir.expressions.IrSetField
|
||||
import org.jetbrains.kotlin.ir.expressions.impl.IrBlockBodyImpl
|
||||
import org.jetbrains.kotlin.ir.util.patchDeclarationParents
|
||||
import org.jetbrains.kotlin.load.java.JavaVisibilities
|
||||
import org.jetbrains.kotlin.load.java.JavaDescriptorVisibilities
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
|
||||
class StaticInitializersLowering(override val context: JvmBackendContext) : InitializersLoweringBase(context), ClassLoweringPass {
|
||||
@@ -43,7 +43,7 @@ class StaticInitializersLowering(override val context: JvmBackendContext) : Init
|
||||
// TODO: mark as synthesized
|
||||
origin = JvmLoweredDeclarationOrigin.CLASS_STATIC_INITIALIZER
|
||||
returnType = context.irBuiltIns.unitType
|
||||
visibility = JavaVisibilities.PACKAGE_VISIBILITY
|
||||
visibility = JavaDescriptorVisibilities.PACKAGE_VISIBILITY
|
||||
}.apply {
|
||||
body = IrBlockBodyImpl(irClass.startOffset, irClass.endOffset, staticInitializerStatements).patchDeclarationParents(this)
|
||||
}
|
||||
|
||||
+2
-2
@@ -10,7 +10,7 @@ import org.jetbrains.kotlin.backend.common.lower.createIrBuilder
|
||||
import org.jetbrains.kotlin.backend.common.phaser.makeIrFilePhase
|
||||
import org.jetbrains.kotlin.backend.jvm.JvmBackendContext
|
||||
import org.jetbrains.kotlin.backend.jvm.JvmLoweredDeclarationOrigin
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.IrElement
|
||||
import org.jetbrains.kotlin.ir.IrStatement
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.buildField
|
||||
@@ -66,7 +66,7 @@ class StaticLambdaLowering(val backendContext: JvmBackendContext) : FileLowering
|
||||
origin = JvmLoweredDeclarationOrigin.FIELD_FOR_STATIC_LAMBDA_INSTANCE
|
||||
isFinal = true
|
||||
isStatic = true
|
||||
visibility = Visibilities.PUBLIC
|
||||
visibility = DescriptorVisibilities.PUBLIC
|
||||
}.apply {
|
||||
parent = lambdaClass
|
||||
}
|
||||
|
||||
+17
-17
@@ -17,8 +17,8 @@ import org.jetbrains.kotlin.backend.jvm.ir.IrInlineReferenceLocator
|
||||
import org.jetbrains.kotlin.backend.jvm.lower.inlineclasses.hasMangledParameters
|
||||
import org.jetbrains.kotlin.codegen.syntheticAccessorToSuperSuffix
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.IrStatement
|
||||
import org.jetbrains.kotlin.ir.UNDEFINED_OFFSET
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.addValueParameter
|
||||
@@ -31,7 +31,7 @@ import org.jetbrains.kotlin.ir.symbols.*
|
||||
import org.jetbrains.kotlin.ir.types.*
|
||||
import org.jetbrains.kotlin.ir.util.*
|
||||
import org.jetbrains.kotlin.ir.visitors.transformChildrenVoid
|
||||
import org.jetbrains.kotlin.load.java.JavaVisibilities
|
||||
import org.jetbrains.kotlin.load.java.JavaDescriptorVisibilities
|
||||
import org.jetbrains.kotlin.load.java.JvmAbi
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
@@ -187,7 +187,7 @@ internal class SyntheticAccessorLowering(val context: JvmBackendContext) : IrEle
|
||||
override fun visitConstructor(declaration: IrConstructor): IrStatement {
|
||||
if (declaration.isOrShouldBeHidden) {
|
||||
pendingAccessorsToAdd.add(handleHiddenConstructor(declaration))
|
||||
declaration.visibility = Visibilities.PRIVATE
|
||||
declaration.visibility = DescriptorVisibilities.PRIVATE
|
||||
}
|
||||
|
||||
return super.visitConstructor(declaration)
|
||||
@@ -212,7 +212,7 @@ internal class SyntheticAccessorLowering(val context: JvmBackendContext) : IrEle
|
||||
|
||||
private val IrConstructor.isOrShouldBeHidden: Boolean
|
||||
get() = this in context.hiddenConstructors || (
|
||||
!Visibilities.isPrivate(visibility) && !constructedClass.isInline && hasMangledParameters &&
|
||||
!DescriptorVisibilities.isPrivate(visibility) && !constructedClass.isInline && hasMangledParameters &&
|
||||
origin != IrDeclarationOrigin.FUNCTION_FOR_DEFAULT_PARAMETER &&
|
||||
origin != JvmLoweredDeclarationOrigin.SYNTHETIC_ACCESSOR &&
|
||||
origin != JvmLoweredDeclarationOrigin.SYNTHETIC_ACCESSOR_FOR_HIDDEN_CONSTRUCTOR)
|
||||
@@ -240,7 +240,7 @@ internal class SyntheticAccessorLowering(val context: JvmBackendContext) : IrEle
|
||||
// In case of Java `protected static`, access could be done from a public inline function in the same package,
|
||||
// or a subclass of the Java class. Both cases require an accessor, which we cannot add to the Java class.
|
||||
private fun IrDeclarationWithVisibility.accessorParent(parent: IrDeclarationParent = this.parent) =
|
||||
if (visibility == JavaVisibilities.PROTECTED_STATIC_VISIBILITY) {
|
||||
if (visibility == JavaDescriptorVisibilities.PROTECTED_STATIC_VISIBILITY) {
|
||||
val classes = allScopes.map { it.irElement }.filterIsInstance<IrClass>()
|
||||
val companions = classes.mapNotNull { it.companionObject() }.filterIsInstance<IrClass>()
|
||||
val objectsInScope =
|
||||
@@ -258,7 +258,7 @@ internal class SyntheticAccessorLowering(val context: JvmBackendContext) : IrEle
|
||||
return factory.buildConstructor {
|
||||
origin = originForConstructorAccessor
|
||||
name = source.name
|
||||
visibility = Visibilities.PUBLIC
|
||||
visibility = DescriptorVisibilities.PUBLIC
|
||||
}.also { accessor ->
|
||||
accessor.parent = source.parent
|
||||
|
||||
@@ -294,7 +294,7 @@ internal class SyntheticAccessorLowering(val context: JvmBackendContext) : IrEle
|
||||
return factory.buildFun {
|
||||
origin = JvmLoweredDeclarationOrigin.SYNTHETIC_ACCESSOR
|
||||
name = source.accessorName(expression.superQualifierSymbol)
|
||||
visibility = Visibilities.PUBLIC
|
||||
visibility = DescriptorVisibilities.PUBLIC
|
||||
modality = if (parent is IrClass && parent.isJvmInterface) Modality.OPEN else Modality.FINAL
|
||||
isSuspend = source.isSuspend // synthetic accessors of suspend functions are handled in codegen
|
||||
}.also { accessor ->
|
||||
@@ -326,7 +326,7 @@ internal class SyntheticAccessorLowering(val context: JvmBackendContext) : IrEle
|
||||
context.irFactory.buildFun {
|
||||
origin = JvmLoweredDeclarationOrigin.SYNTHETIC_ACCESSOR
|
||||
name = fieldSymbol.owner.accessorNameForGetter()
|
||||
visibility = Visibilities.PUBLIC
|
||||
visibility = DescriptorVisibilities.PUBLIC
|
||||
modality = Modality.FINAL
|
||||
returnType = fieldSymbol.owner.type
|
||||
}.also { accessor ->
|
||||
@@ -362,7 +362,7 @@ internal class SyntheticAccessorLowering(val context: JvmBackendContext) : IrEle
|
||||
context.irFactory.buildFun {
|
||||
origin = JvmLoweredDeclarationOrigin.SYNTHETIC_ACCESSOR
|
||||
name = fieldSymbol.owner.accessorNameForSetter()
|
||||
visibility = Visibilities.PUBLIC
|
||||
visibility = DescriptorVisibilities.PUBLIC
|
||||
modality = Modality.FINAL
|
||||
returnType = context.irBuiltIns.unitType
|
||||
}.also { accessor ->
|
||||
@@ -520,7 +520,7 @@ internal class SyntheticAccessorLowering(val context: JvmBackendContext) : IrEle
|
||||
|
||||
// The only function accessors placed on interfaces are for private functions and JvmDefault implementations.
|
||||
// The two cannot clash.
|
||||
parentAsClass.isJvmInterface -> if (!Visibilities.isPrivate(visibility)) "\$jd" else ""
|
||||
parentAsClass.isJvmInterface -> if (!DescriptorVisibilities.isPrivate(visibility)) "\$jd" else ""
|
||||
|
||||
// Accessor for _s_uper-qualified call
|
||||
superQualifier != null -> "\$s" + superQualifier.owner.syntheticAccessorToSuperSuffix()
|
||||
@@ -555,13 +555,13 @@ internal class SyntheticAccessorLowering(val context: JvmBackendContext) : IrEle
|
||||
return "p" + if (isStatic) "\$s" + parentAsClass.syntheticAccessorToSuperSuffix() else ""
|
||||
}
|
||||
|
||||
private val Visibility.isPrivate
|
||||
get() = Visibilities.isPrivate(this)
|
||||
private val DescriptorVisibility.isPrivate
|
||||
get() = DescriptorVisibilities.isPrivate(this)
|
||||
|
||||
private val Visibility.isProtected
|
||||
get() = this == Visibilities.PROTECTED ||
|
||||
this == JavaVisibilities.PROTECTED_AND_PACKAGE ||
|
||||
this == JavaVisibilities.PROTECTED_STATIC_VISIBILITY
|
||||
private val DescriptorVisibility.isProtected
|
||||
get() = this == DescriptorVisibilities.PROTECTED ||
|
||||
this == JavaDescriptorVisibilities.PROTECTED_AND_PACKAGE ||
|
||||
this == JavaDescriptorVisibilities.PROTECTED_STATIC_VISIBILITY
|
||||
|
||||
private fun IrSymbol.isAccessible(withSuper: Boolean, thisObjReference: IrClassSymbol?): Boolean {
|
||||
/// We assume that IR code that reaches us has been checked for correctness at the frontend.
|
||||
|
||||
+2
-2
@@ -12,7 +12,7 @@ import org.jetbrains.kotlin.backend.jvm.JvmBackendContext
|
||||
import org.jetbrains.kotlin.backend.jvm.JvmLoweredDeclarationOrigin
|
||||
import org.jetbrains.kotlin.backend.jvm.codegen.isJvmInterface
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.addDispatchReceiver
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.addFunction
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.addTypeParameter
|
||||
@@ -101,7 +101,7 @@ private class ToArrayLowering(private val context: JvmBackendContext) : ClassLow
|
||||
// This is an explicit override of a method defined in `kotlin.collections.AbstractCollection`
|
||||
// or `java.util.Collection`. From here on, the frontend will check the existence of implementations;
|
||||
// we just need to match visibility in the former case to the latter.
|
||||
existing.visibility = Visibilities.PUBLIC
|
||||
existing.visibility = DescriptorVisibilities.PUBLIC
|
||||
return
|
||||
}
|
||||
if (indirectSubclass) {
|
||||
|
||||
+2
-2
@@ -14,7 +14,7 @@ import org.jetbrains.kotlin.backend.jvm.ir.isStaticInlineClassReplacement
|
||||
import org.jetbrains.kotlin.backend.jvm.lower.inlineclasses.InlineClassAbi.mangledNameFor
|
||||
import org.jetbrains.kotlin.codegen.state.KotlinTypeMapper
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.addValueParameter
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.buildFun
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.buildProperty
|
||||
@@ -44,7 +44,7 @@ class MemoizedInlineClassReplacements(private val mangleReturnTypes: Boolean, pr
|
||||
when {
|
||||
// Don't mangle anonymous or synthetic functions
|
||||
it.origin == IrDeclarationOrigin.LOCAL_FUNCTION_FOR_LAMBDA ||
|
||||
(it.origin == IrDeclarationOrigin.DELEGATED_PROPERTY_ACCESSOR && it.visibility == Visibilities.LOCAL) ||
|
||||
(it.origin == IrDeclarationOrigin.DELEGATED_PROPERTY_ACCESSOR && it.visibility == DescriptorVisibilities.LOCAL) ||
|
||||
it.isStaticInlineClassReplacement ||
|
||||
it.origin.isSynthetic -> null
|
||||
|
||||
|
||||
+2
-2
@@ -10,7 +10,7 @@ import org.jetbrains.kotlin.backend.wasm.WasmCompilerResult
|
||||
import org.jetbrains.kotlin.backend.wasm.ast.WasmExport
|
||||
import org.jetbrains.kotlin.backend.wasm.ast.WasmModule
|
||||
import org.jetbrains.kotlin.backend.wasm.ast.wasmModuleToWat
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.backend.js.transformers.irToJs.jsAssignment
|
||||
import org.jetbrains.kotlin.ir.backend.js.utils.sanitizeName
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
@@ -58,7 +58,7 @@ class IrModuleToWasm(private val backendContext: WasmBackendContext) {
|
||||
if (declaration !is IrDeclarationWithVisibility ||
|
||||
declaration !is IrDeclarationWithName ||
|
||||
declaration !is IrSimpleFunction ||
|
||||
declaration.visibility != Visibilities.PUBLIC
|
||||
declaration.visibility != DescriptorVisibilities.PUBLIC
|
||||
) {
|
||||
return null
|
||||
}
|
||||
|
||||
+1
-1
@@ -388,7 +388,7 @@ private fun StatementGenerator.createFunctionForSuspendConversion(
|
||||
IrDeclarationOrigin.ADAPTER_FOR_SUSPEND_CONVERSION,
|
||||
irAdapterSymbol,
|
||||
Name.identifier(scope.inventNameForTemporary("suspendConversion")),
|
||||
Visibilities.LOCAL, Modality.FINAL,
|
||||
DescriptorVisibilities.LOCAL, Modality.FINAL,
|
||||
irSuspendFunReturnType,
|
||||
isInline = false, isExternal = false, isTailrec = false,
|
||||
isSuspend = true,
|
||||
|
||||
@@ -79,7 +79,7 @@ class ClassGenerator(
|
||||
}
|
||||
}
|
||||
|
||||
fun generateClass(ktClassOrObject: KtPureClassOrObject, visibility_: Visibility? = null): IrClass {
|
||||
fun generateClass(ktClassOrObject: KtPureClassOrObject, visibility_: DescriptorVisibility? = null): IrClass {
|
||||
val classDescriptor = ktClassOrObject.findClassDescriptor(this.context.bindingContext)
|
||||
val startOffset = ktClassOrObject.getStartOffsetOfClassDeclarationOrNull() ?: ktClassOrObject.pureStartOffset
|
||||
val endOffset = ktClassOrObject.pureEndOffset
|
||||
@@ -169,7 +169,7 @@ class ClassGenerator(
|
||||
getContributedDescriptors()
|
||||
.filterIsInstance<FunctionDescriptor>()
|
||||
.filter {
|
||||
Visibilities.isVisibleIgnoringReceiver(it, classDescriptor)
|
||||
DescriptorVisibilities.isVisibleIgnoringReceiver(it, classDescriptor)
|
||||
}
|
||||
.sortedByRenderer()
|
||||
.forEach { parentStaticMember ->
|
||||
@@ -505,7 +505,7 @@ class ClassGenerator(
|
||||
}
|
||||
|
||||
if (ktEnumEntry.hasMemberDeclarations()) {
|
||||
irEnumEntry.correspondingClass = generateClass(ktEnumEntry, Visibilities.PRIVATE)
|
||||
irEnumEntry.correspondingClass = generateClass(ktEnumEntry, DescriptorVisibilities.PRIVATE)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -57,7 +57,7 @@ class FunctionGenerator(declarationGenerator: DeclarationGenerator) : Declaratio
|
||||
}
|
||||
|
||||
fun generateFakeOverrideFunction(functionDescriptor: FunctionDescriptor, ktElement: KtPureElement): IrSimpleFunction? =
|
||||
functionDescriptor.takeIf { it.visibility != Visibilities.INVISIBLE_FAKE }
|
||||
functionDescriptor.takeIf { it.visibility != DescriptorVisibilities.INVISIBLE_FAKE }
|
||||
?.let {
|
||||
declareSimpleFunctionInner(it, ktElement, IrDeclarationOrigin.FAKE_OVERRIDE).buildWithScope { irFunction ->
|
||||
generateFunctionParameterDeclarationsAndReturnType(irFunction, ktElement, null)
|
||||
|
||||
+2
-2
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.psi2ir.generators
|
||||
import org.jetbrains.kotlin.descriptors.ClassDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.PropertyDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.ValueParameterDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.util.StubGeneratorExtensions
|
||||
import org.jetbrains.kotlin.resolve.scopes.MemberScope
|
||||
import org.jetbrains.kotlin.types.KotlinType
|
||||
@@ -26,7 +26,7 @@ open class GeneratorExtensions : StubGeneratorExtensions() {
|
||||
companion object Instance : SamConversion()
|
||||
}
|
||||
|
||||
open fun computeFieldVisibility(descriptor: PropertyDescriptor): Visibility? = null
|
||||
open fun computeFieldVisibility(descriptor: PropertyDescriptor): DescriptorVisibility? = null
|
||||
|
||||
open fun getParentClassStaticScope(descriptor: ClassDescriptor): MemberScope? = null
|
||||
}
|
||||
|
||||
+7
-7
@@ -17,8 +17,8 @@
|
||||
package org.jetbrains.kotlin.psi2ir.generators
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.PropertyDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.expressions.IrExpressionBody
|
||||
import org.jetbrains.kotlin.ir.expressions.IrStatementOrigin
|
||||
@@ -138,7 +138,7 @@ class PropertyGenerator(declarationGenerator: DeclarationGenerator) : Declaratio
|
||||
}
|
||||
|
||||
fun generateFakeOverrideProperty(propertyDescriptor: PropertyDescriptor, ktElement: KtPureElement): IrProperty? {
|
||||
if (propertyDescriptor.visibility == Visibilities.INVISIBLE_FAKE) return null
|
||||
if (propertyDescriptor.visibility == DescriptorVisibilities.INVISIBLE_FAKE) return null
|
||||
|
||||
val startOffset = ktElement.pureStartOffsetOrUndefined
|
||||
val endOffset = ktElement.pureEndOffsetOrUndefined
|
||||
@@ -170,15 +170,15 @@ class PropertyGenerator(declarationGenerator: DeclarationGenerator) : Declaratio
|
||||
return variableDescriptor as? PropertyDescriptor ?: TODO("not a property: $variableDescriptor")
|
||||
}
|
||||
|
||||
private val Visibility.admitsFakeOverride: Boolean
|
||||
get() = !Visibilities.isPrivate(this) && this != Visibilities.INVISIBLE_FAKE
|
||||
private val DescriptorVisibility.admitsFakeOverride: Boolean
|
||||
get() = !DescriptorVisibilities.isPrivate(this) && this != DescriptorVisibilities.INVISIBLE_FAKE
|
||||
|
||||
private val PropertyDescriptor.fieldVisibility: Visibility
|
||||
private val PropertyDescriptor.fieldVisibility: DescriptorVisibility
|
||||
get() = declarationGenerator.context.extensions.computeFieldVisibility(this)
|
||||
?: when {
|
||||
isLateInit -> setter?.visibility ?: visibility
|
||||
isConst -> visibility
|
||||
else -> Visibilities.PRIVATE
|
||||
else -> DescriptorVisibilities.PRIVATE
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -335,7 +335,7 @@ class ReflectionReferencesGenerator(statementGenerator: StatementGenerator) : St
|
||||
IrDeclarationOrigin.ADAPTER_FOR_CALLABLE_REFERENCE,
|
||||
irAdapterSymbol,
|
||||
adapteeDescriptor.name,
|
||||
Visibilities.LOCAL,
|
||||
DescriptorVisibilities.LOCAL,
|
||||
Modality.FINAL,
|
||||
ktExpectedReturnType.toIrType(),
|
||||
isInline = adapteeDescriptor.isInline, // TODO ?
|
||||
@@ -519,4 +519,4 @@ class ReflectionReferencesGenerator(statementGenerator: StatementGenerator) : St
|
||||
arguments.last().type,
|
||||
suspendFunction
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
+3
-3
@@ -56,7 +56,7 @@ class SyntheticDeclarationsGenerator(context: GeneratorContext) : DeclarationDes
|
||||
|
||||
override fun visitFunctionDescriptor(descriptor: FunctionDescriptor, data: IrDeclarationContainer?) {
|
||||
require(data != null)
|
||||
if (descriptor.visibility != Visibilities.INVISIBLE_FAKE) {
|
||||
if (descriptor.visibility != DescriptorVisibilities.INVISIBLE_FAKE) {
|
||||
symbolTable.declareSimpleFunctionIfNotExists(descriptor) {
|
||||
createFunctionStub(descriptor, it).insertDeclaration(data)
|
||||
}
|
||||
@@ -140,7 +140,7 @@ class SyntheticDeclarationsGenerator(context: GeneratorContext) : DeclarationDes
|
||||
|
||||
override fun visitPropertyDescriptor(descriptor: PropertyDescriptor, data: IrDeclarationContainer?) {
|
||||
require(data != null)
|
||||
if (descriptor.visibility != Visibilities.INVISIBLE_FAKE) {
|
||||
if (descriptor.visibility != DescriptorVisibilities.INVISIBLE_FAKE) {
|
||||
symbolTable.declarePropertyIfNotExists(descriptor) {
|
||||
createPropertyStub(descriptor, it).insertDeclaration(data).also { p ->
|
||||
descriptor.getter?.let { g -> p.getter = declareAccessor(g, p) }
|
||||
@@ -165,4 +165,4 @@ class SyntheticDeclarationsGenerator(context: GeneratorContext) : DeclarationDes
|
||||
override fun visitReceiverParameterDescriptor(descriptor: ReceiverParameterDescriptor, data: IrDeclarationContainer?) {
|
||||
error("Unreachable execution $descriptor")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+16
-16
@@ -25,22 +25,22 @@ import org.jetbrains.kotlin.ir.types.IrType
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
|
||||
class IrClassImpl(
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
override val symbol: IrClassSymbol,
|
||||
override val name: Name,
|
||||
override val kind: ClassKind,
|
||||
override var visibility: Visibility,
|
||||
override var modality: Modality,
|
||||
override val isCompanion: Boolean = false,
|
||||
override val isInner: Boolean = false,
|
||||
override val isData: Boolean = false,
|
||||
override val isExternal: Boolean = false,
|
||||
override val isInline: Boolean = false,
|
||||
override val isExpect: Boolean = false,
|
||||
override val isFun: Boolean = false,
|
||||
override val source: SourceElement = SourceElement.NO_SOURCE
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
override val symbol: IrClassSymbol,
|
||||
override val name: Name,
|
||||
override val kind: ClassKind,
|
||||
override var visibility: DescriptorVisibility,
|
||||
override var modality: Modality,
|
||||
override val isCompanion: Boolean = false,
|
||||
override val isInner: Boolean = false,
|
||||
override val isData: Boolean = false,
|
||||
override val isExternal: Boolean = false,
|
||||
override val isInline: Boolean = false,
|
||||
override val isExpect: Boolean = false,
|
||||
override val isFun: Boolean = false,
|
||||
override val source: SourceElement = SourceElement.NO_SOURCE
|
||||
) : IrClass() {
|
||||
init {
|
||||
symbol.bind(this)
|
||||
|
||||
+13
-13
@@ -17,7 +17,7 @@
|
||||
package org.jetbrains.kotlin.ir.declarations.impl
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.ClassConstructorDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.expressions.IrBody
|
||||
@@ -29,18 +29,18 @@ import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedContainerSource
|
||||
|
||||
class IrConstructorImpl(
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
override val symbol: IrConstructorSymbol,
|
||||
override val name: Name,
|
||||
override var visibility: Visibility,
|
||||
returnType: IrType,
|
||||
override val isInline: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isPrimary: Boolean,
|
||||
override val isExpect: Boolean,
|
||||
override val containerSource: DeserializedContainerSource? = null,
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
override val symbol: IrConstructorSymbol,
|
||||
override val name: Name,
|
||||
override var visibility: DescriptorVisibility,
|
||||
returnType: IrType,
|
||||
override val isInline: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isPrimary: Boolean,
|
||||
override val isExpect: Boolean,
|
||||
override val containerSource: DeserializedContainerSource? = null,
|
||||
) : IrConstructor() {
|
||||
init {
|
||||
symbol.bind(this)
|
||||
|
||||
+104
-104
@@ -30,22 +30,22 @@ object IrFactoryImpl : IrFactory {
|
||||
IrAnonymousInitializerImpl(startOffset, endOffset, origin, symbol, isStatic)
|
||||
|
||||
override fun createClass(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrClassSymbol,
|
||||
name: Name,
|
||||
kind: ClassKind,
|
||||
visibility: Visibility,
|
||||
modality: Modality,
|
||||
isCompanion: Boolean,
|
||||
isInner: Boolean,
|
||||
isData: Boolean,
|
||||
isExternal: Boolean,
|
||||
isInline: Boolean,
|
||||
isExpect: Boolean,
|
||||
isFun: Boolean,
|
||||
source: SourceElement,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrClassSymbol,
|
||||
name: Name,
|
||||
kind: ClassKind,
|
||||
visibility: DescriptorVisibility,
|
||||
modality: Modality,
|
||||
isCompanion: Boolean,
|
||||
isInner: Boolean,
|
||||
isData: Boolean,
|
||||
isExternal: Boolean,
|
||||
isInline: Boolean,
|
||||
isExpect: Boolean,
|
||||
isFun: Boolean,
|
||||
source: SourceElement,
|
||||
): IrClass =
|
||||
IrClassImpl(
|
||||
startOffset, endOffset, origin, symbol, name, kind, visibility, modality,
|
||||
@@ -53,18 +53,18 @@ object IrFactoryImpl : IrFactory {
|
||||
)
|
||||
|
||||
override fun createConstructor(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrConstructorSymbol,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isPrimary: Boolean,
|
||||
isExpect: Boolean,
|
||||
containerSource: DeserializedContainerSource?,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrConstructorSymbol,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isPrimary: Boolean,
|
||||
isExpect: Boolean,
|
||||
containerSource: DeserializedContainerSource?,
|
||||
): IrConstructor =
|
||||
IrConstructorImpl(
|
||||
startOffset, endOffset, origin, symbol, name, visibility, returnType, isInline, isExternal, isPrimary, isExpect,
|
||||
@@ -88,37 +88,37 @@ object IrFactoryImpl : IrFactory {
|
||||
IrErrorDeclarationImpl(startOffset, endOffset, descriptor)
|
||||
|
||||
override fun createField(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrFieldSymbol,
|
||||
name: Name,
|
||||
type: IrType,
|
||||
visibility: Visibility,
|
||||
isFinal: Boolean,
|
||||
isExternal: Boolean,
|
||||
isStatic: Boolean,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrFieldSymbol,
|
||||
name: Name,
|
||||
type: IrType,
|
||||
visibility: DescriptorVisibility,
|
||||
isFinal: Boolean,
|
||||
isExternal: Boolean,
|
||||
isStatic: Boolean,
|
||||
): IrField =
|
||||
IrFieldImpl(startOffset, endOffset, origin, symbol, name, type, visibility, isFinal, isExternal, isStatic)
|
||||
|
||||
override fun createFunction(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrSimpleFunctionSymbol,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
modality: Modality,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isTailrec: Boolean,
|
||||
isSuspend: Boolean,
|
||||
isOperator: Boolean,
|
||||
isInfix: Boolean,
|
||||
isExpect: Boolean,
|
||||
isFakeOverride: Boolean,
|
||||
containerSource: DeserializedContainerSource?,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrSimpleFunctionSymbol,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
modality: Modality,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isTailrec: Boolean,
|
||||
isSuspend: Boolean,
|
||||
isOperator: Boolean,
|
||||
isInfix: Boolean,
|
||||
isExpect: Boolean,
|
||||
isFakeOverride: Boolean,
|
||||
containerSource: DeserializedContainerSource?,
|
||||
): IrSimpleFunction =
|
||||
IrFunctionImpl(
|
||||
startOffset, endOffset, origin, symbol, name, visibility, modality, returnType,
|
||||
@@ -127,20 +127,20 @@ object IrFactoryImpl : IrFactory {
|
||||
)
|
||||
|
||||
override fun createFakeOverrideFunction(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
modality: Modality,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isTailrec: Boolean,
|
||||
isSuspend: Boolean,
|
||||
isOperator: Boolean,
|
||||
isInfix: Boolean,
|
||||
isExpect: Boolean,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
modality: Modality,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isTailrec: Boolean,
|
||||
isSuspend: Boolean,
|
||||
isOperator: Boolean,
|
||||
isInfix: Boolean,
|
||||
isExpect: Boolean,
|
||||
): IrSimpleFunction =
|
||||
IrFakeOverrideFunctionImpl(
|
||||
startOffset, endOffset, origin, name, visibility, modality, returnType,
|
||||
@@ -159,21 +159,21 @@ object IrFactoryImpl : IrFactory {
|
||||
IrLocalDelegatedPropertyImpl(startOffset, endOffset, origin, symbol, name, type, isVar)
|
||||
|
||||
override fun createProperty(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrPropertySymbol,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
modality: Modality,
|
||||
isVar: Boolean,
|
||||
isConst: Boolean,
|
||||
isLateinit: Boolean,
|
||||
isDelegated: Boolean,
|
||||
isExternal: Boolean,
|
||||
isExpect: Boolean,
|
||||
isFakeOverride: Boolean,
|
||||
containerSource: DeserializedContainerSource?,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrPropertySymbol,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
modality: Modality,
|
||||
isVar: Boolean,
|
||||
isConst: Boolean,
|
||||
isLateinit: Boolean,
|
||||
isDelegated: Boolean,
|
||||
isExternal: Boolean,
|
||||
isExpect: Boolean,
|
||||
isFakeOverride: Boolean,
|
||||
containerSource: DeserializedContainerSource?,
|
||||
): IrProperty =
|
||||
IrPropertyImpl(
|
||||
startOffset, endOffset, origin, symbol, name, visibility, modality,
|
||||
@@ -182,18 +182,18 @@ object IrFactoryImpl : IrFactory {
|
||||
)
|
||||
|
||||
override fun createFakeOverrideProperty(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
modality: Modality,
|
||||
isVar: Boolean,
|
||||
isConst: Boolean,
|
||||
isLateinit: Boolean,
|
||||
isDelegated: Boolean,
|
||||
isExternal: Boolean,
|
||||
isExpect: Boolean,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
modality: Modality,
|
||||
isVar: Boolean,
|
||||
isConst: Boolean,
|
||||
isLateinit: Boolean,
|
||||
isDelegated: Boolean,
|
||||
isExternal: Boolean,
|
||||
isExpect: Boolean,
|
||||
): IrProperty =
|
||||
IrFakeOverridePropertyImpl(
|
||||
startOffset, endOffset, origin, name, visibility, modality,
|
||||
@@ -201,14 +201,14 @@ object IrFactoryImpl : IrFactory {
|
||||
)
|
||||
|
||||
override fun createTypeAlias(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
symbol: IrTypeAliasSymbol,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
expandedType: IrType,
|
||||
isActual: Boolean,
|
||||
origin: IrDeclarationOrigin,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
symbol: IrTypeAliasSymbol,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
expandedType: IrType,
|
||||
isActual: Boolean,
|
||||
origin: IrDeclarationOrigin,
|
||||
): IrTypeAlias =
|
||||
IrTypeAliasImpl(startOffset, endOffset, symbol, name, visibility, expandedType, isActual, origin)
|
||||
|
||||
|
||||
+11
-11
@@ -17,7 +17,7 @@
|
||||
package org.jetbrains.kotlin.ir.declarations.impl
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.PropertyDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.expressions.IrConstructorCall
|
||||
@@ -28,16 +28,16 @@ import org.jetbrains.kotlin.ir.types.IrType
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
|
||||
class IrFieldImpl(
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
override val symbol: IrFieldSymbol,
|
||||
override val name: Name,
|
||||
override val type: IrType,
|
||||
override var visibility: Visibility,
|
||||
override val isFinal: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isStatic: Boolean,
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
override val symbol: IrFieldSymbol,
|
||||
override val name: Name,
|
||||
override val type: IrType,
|
||||
override var visibility: DescriptorVisibility,
|
||||
override val isFinal: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isStatic: Boolean,
|
||||
) : IrField() {
|
||||
init {
|
||||
symbol.bind(this)
|
||||
|
||||
+46
-46
@@ -7,7 +7,7 @@ package org.jetbrains.kotlin.ir.declarations.impl
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.FunctionDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.descriptors.WrappedSimpleFunctionDescriptor
|
||||
@@ -21,20 +21,20 @@ import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedContainerSource
|
||||
|
||||
abstract class IrFunctionCommonImpl(
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
override val name: Name,
|
||||
override var visibility: Visibility,
|
||||
returnType: IrType,
|
||||
override val isInline: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isTailrec: Boolean,
|
||||
override val isSuspend: Boolean,
|
||||
override val isOperator: Boolean,
|
||||
override val isInfix: Boolean,
|
||||
override val isExpect: Boolean,
|
||||
override val containerSource: DeserializedContainerSource?,
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
override val name: Name,
|
||||
override var visibility: DescriptorVisibility,
|
||||
returnType: IrType,
|
||||
override val isInline: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isTailrec: Boolean,
|
||||
override val isSuspend: Boolean,
|
||||
override val isOperator: Boolean,
|
||||
override val isInfix: Boolean,
|
||||
override val isExpect: Boolean,
|
||||
override val containerSource: DeserializedContainerSource?,
|
||||
) : IrSimpleFunction() {
|
||||
override val factory: IrFactory
|
||||
get() = IrFactoryImpl
|
||||
@@ -68,23 +68,23 @@ abstract class IrFunctionCommonImpl(
|
||||
}
|
||||
|
||||
class IrFunctionImpl(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
override val symbol: IrSimpleFunctionSymbol,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
override val modality: Modality,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isTailrec: Boolean,
|
||||
isSuspend: Boolean,
|
||||
isOperator: Boolean,
|
||||
isInfix: Boolean,
|
||||
isExpect: Boolean,
|
||||
override val isFakeOverride: Boolean = origin == IrDeclarationOrigin.FAKE_OVERRIDE,
|
||||
containerSource: DeserializedContainerSource? = null,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
override val symbol: IrSimpleFunctionSymbol,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
override val modality: Modality,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isTailrec: Boolean,
|
||||
isSuspend: Boolean,
|
||||
isOperator: Boolean,
|
||||
isInfix: Boolean,
|
||||
isExpect: Boolean,
|
||||
override val isFakeOverride: Boolean = origin == IrDeclarationOrigin.FAKE_OVERRIDE,
|
||||
containerSource: DeserializedContainerSource? = null,
|
||||
) : IrFunctionCommonImpl(
|
||||
startOffset, endOffset, origin, name, visibility, returnType, isInline,
|
||||
isExternal, isTailrec, isSuspend, isOperator, isInfix, isExpect,
|
||||
@@ -100,20 +100,20 @@ class IrFunctionImpl(
|
||||
}
|
||||
|
||||
class IrFakeOverrideFunctionImpl(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
name: Name,
|
||||
override var visibility: Visibility,
|
||||
override var modality: Modality,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isTailrec: Boolean,
|
||||
isSuspend: Boolean,
|
||||
isOperator: Boolean,
|
||||
isInfix: Boolean,
|
||||
isExpect: Boolean,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
name: Name,
|
||||
override var visibility: DescriptorVisibility,
|
||||
override var modality: Modality,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isTailrec: Boolean,
|
||||
isSuspend: Boolean,
|
||||
isOperator: Boolean,
|
||||
isInfix: Boolean,
|
||||
isExpect: Boolean,
|
||||
) : IrFunctionCommonImpl(
|
||||
startOffset, endOffset, origin, name, visibility, returnType, isInline,
|
||||
isExternal, isTailrec, isSuspend, isOperator, isInfix, isExpect,
|
||||
|
||||
+40
-40
@@ -18,7 +18,7 @@ package org.jetbrains.kotlin.ir.declarations.impl
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.PropertyDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.descriptors.WrappedPropertyDescriptor
|
||||
@@ -28,18 +28,18 @@ import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedContainerSource
|
||||
|
||||
abstract class IrPropertyCommonImpl(
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
override val name: Name,
|
||||
override var visibility: Visibility,
|
||||
override val isVar: Boolean,
|
||||
override val isConst: Boolean,
|
||||
override val isLateinit: Boolean,
|
||||
override val isDelegated: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isExpect: Boolean,
|
||||
override val containerSource: DeserializedContainerSource?,
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
override val name: Name,
|
||||
override var visibility: DescriptorVisibility,
|
||||
override val isVar: Boolean,
|
||||
override val isConst: Boolean,
|
||||
override val isLateinit: Boolean,
|
||||
override val isDelegated: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isExpect: Boolean,
|
||||
override val containerSource: DeserializedContainerSource?,
|
||||
) : IrProperty() {
|
||||
override val factory: IrFactory
|
||||
get() = IrFactoryImpl
|
||||
@@ -59,21 +59,21 @@ abstract class IrPropertyCommonImpl(
|
||||
}
|
||||
|
||||
class IrPropertyImpl(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
override val symbol: IrPropertySymbol,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
override val modality: Modality,
|
||||
isVar: Boolean,
|
||||
isConst: Boolean,
|
||||
isLateinit: Boolean,
|
||||
isDelegated: Boolean,
|
||||
isExternal: Boolean,
|
||||
isExpect: Boolean = false,
|
||||
override val isFakeOverride: Boolean = origin == IrDeclarationOrigin.FAKE_OVERRIDE,
|
||||
containerSource: DeserializedContainerSource? = null,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
override val symbol: IrPropertySymbol,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
override val modality: Modality,
|
||||
isVar: Boolean,
|
||||
isConst: Boolean,
|
||||
isLateinit: Boolean,
|
||||
isDelegated: Boolean,
|
||||
isExternal: Boolean,
|
||||
isExpect: Boolean = false,
|
||||
override val isFakeOverride: Boolean = origin == IrDeclarationOrigin.FAKE_OVERRIDE,
|
||||
containerSource: DeserializedContainerSource? = null,
|
||||
) : IrPropertyCommonImpl(
|
||||
startOffset, endOffset, origin, name, visibility, isVar, isConst, isLateinit, isDelegated, isExternal, isExpect,
|
||||
containerSource
|
||||
@@ -88,18 +88,18 @@ class IrPropertyImpl(
|
||||
}
|
||||
|
||||
class IrFakeOverridePropertyImpl(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
override var modality: Modality,
|
||||
isVar: Boolean,
|
||||
isConst: Boolean,
|
||||
isLateinit: Boolean,
|
||||
isDelegated: Boolean,
|
||||
isExternal: Boolean,
|
||||
isExpect: Boolean,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
override var modality: Modality,
|
||||
isVar: Boolean,
|
||||
isConst: Boolean,
|
||||
isLateinit: Boolean,
|
||||
isDelegated: Boolean,
|
||||
isExternal: Boolean,
|
||||
isExpect: Boolean,
|
||||
) : IrPropertyCommonImpl(
|
||||
startOffset, endOffset, origin, name, visibility, isVar, isConst, isLateinit, isDelegated, isExternal, isExpect,
|
||||
containerSource = null,
|
||||
|
||||
+9
-9
@@ -6,7 +6,7 @@
|
||||
package org.jetbrains.kotlin.ir.declarations.impl
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.TypeAliasDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.expressions.IrConstructorCall
|
||||
@@ -15,14 +15,14 @@ import org.jetbrains.kotlin.ir.types.IrType
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
|
||||
class IrTypeAliasImpl(
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override val symbol: IrTypeAliasSymbol,
|
||||
override val name: Name,
|
||||
override var visibility: Visibility,
|
||||
override val expandedType: IrType,
|
||||
override val isActual: Boolean,
|
||||
override var origin: IrDeclarationOrigin
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override val symbol: IrTypeAliasSymbol,
|
||||
override val name: Name,
|
||||
override var visibility: DescriptorVisibility,
|
||||
override val expandedType: IrType,
|
||||
override val isActual: Boolean,
|
||||
override var origin: IrDeclarationOrigin
|
||||
) : IrTypeAlias() {
|
||||
init {
|
||||
symbol.bind(this)
|
||||
|
||||
+18
-18
@@ -28,22 +28,22 @@ import org.jetbrains.kotlin.name.Name
|
||||
import java.util.*
|
||||
|
||||
internal class PersistentIrClass(
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
override val symbol: IrClassSymbol,
|
||||
override val name: Name,
|
||||
override val kind: ClassKind,
|
||||
visibility: Visibility,
|
||||
modality: Modality,
|
||||
override val isCompanion: Boolean = false,
|
||||
override val isInner: Boolean = false,
|
||||
override val isData: Boolean = false,
|
||||
override val isExternal: Boolean = false,
|
||||
override val isInline: Boolean = false,
|
||||
override val isExpect: Boolean = false,
|
||||
override val isFun: Boolean = false,
|
||||
override val source: SourceElement = SourceElement.NO_SOURCE
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
override val symbol: IrClassSymbol,
|
||||
override val name: Name,
|
||||
override val kind: ClassKind,
|
||||
visibility: DescriptorVisibility,
|
||||
modality: Modality,
|
||||
override val isCompanion: Boolean = false,
|
||||
override val isInner: Boolean = false,
|
||||
override val isData: Boolean = false,
|
||||
override val isExternal: Boolean = false,
|
||||
override val isInline: Boolean = false,
|
||||
override val isExpect: Boolean = false,
|
||||
override val isFun: Boolean = false,
|
||||
override val source: SourceElement = SourceElement.NO_SOURCE
|
||||
) : IrClass(),
|
||||
PersistentIrDeclarationBase<ClassCarrier>,
|
||||
ClassCarrier {
|
||||
@@ -66,9 +66,9 @@ internal class PersistentIrClass(
|
||||
override val descriptor: ClassDescriptor
|
||||
get() = symbol.descriptor
|
||||
|
||||
override var visibilityField: Visibility = visibility
|
||||
override var visibilityField: DescriptorVisibility = visibility
|
||||
|
||||
override var visibility: Visibility
|
||||
override var visibility: DescriptorVisibility
|
||||
get() = getCarrier().visibilityField
|
||||
set(v) {
|
||||
if (visibility !== v) {
|
||||
|
||||
+15
-15
@@ -17,7 +17,7 @@
|
||||
package org.jetbrains.kotlin.ir.declarations.persistent
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.ClassConstructorDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.declarations.persistent.carriers.Carrier
|
||||
@@ -31,18 +31,18 @@ import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedContainerSource
|
||||
|
||||
internal class PersistentIrConstructor(
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
override val symbol: IrConstructorSymbol,
|
||||
override val name: Name,
|
||||
visibility: Visibility,
|
||||
returnType: IrType,
|
||||
override val isInline: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isPrimary: Boolean,
|
||||
override val isExpect: Boolean,
|
||||
override val containerSource: DeserializedContainerSource?
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
override val symbol: IrConstructorSymbol,
|
||||
override val name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
returnType: IrType,
|
||||
override val isInline: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isPrimary: Boolean,
|
||||
override val isExpect: Boolean,
|
||||
override val containerSource: DeserializedContainerSource?
|
||||
) : IrConstructor(),
|
||||
PersistentIrDeclarationBase<ConstructorCarrier>,
|
||||
ConstructorCarrier {
|
||||
@@ -142,9 +142,9 @@ internal class PersistentIrConstructor(
|
||||
}
|
||||
}
|
||||
|
||||
override var visibilityField: Visibility = visibility
|
||||
override var visibilityField: DescriptorVisibility = visibility
|
||||
|
||||
override var visibility: Visibility
|
||||
override var visibility: DescriptorVisibility
|
||||
get() = getCarrier().visibilityField
|
||||
set(v) {
|
||||
if (visibility !== v) {
|
||||
|
||||
+104
-104
@@ -30,22 +30,22 @@ object PersistentIrFactory : IrFactory {
|
||||
PersistentIrAnonymousInitializer(startOffset, endOffset, origin, symbol, isStatic)
|
||||
|
||||
override fun createClass(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrClassSymbol,
|
||||
name: Name,
|
||||
kind: ClassKind,
|
||||
visibility: Visibility,
|
||||
modality: Modality,
|
||||
isCompanion: Boolean,
|
||||
isInner: Boolean,
|
||||
isData: Boolean,
|
||||
isExternal: Boolean,
|
||||
isInline: Boolean,
|
||||
isExpect: Boolean,
|
||||
isFun: Boolean,
|
||||
source: SourceElement,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrClassSymbol,
|
||||
name: Name,
|
||||
kind: ClassKind,
|
||||
visibility: DescriptorVisibility,
|
||||
modality: Modality,
|
||||
isCompanion: Boolean,
|
||||
isInner: Boolean,
|
||||
isData: Boolean,
|
||||
isExternal: Boolean,
|
||||
isInline: Boolean,
|
||||
isExpect: Boolean,
|
||||
isFun: Boolean,
|
||||
source: SourceElement,
|
||||
): IrClass =
|
||||
PersistentIrClass(
|
||||
startOffset, endOffset, origin, symbol, name, kind, visibility, modality,
|
||||
@@ -53,18 +53,18 @@ object PersistentIrFactory : IrFactory {
|
||||
)
|
||||
|
||||
override fun createConstructor(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrConstructorSymbol,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isPrimary: Boolean,
|
||||
isExpect: Boolean,
|
||||
containerSource: DeserializedContainerSource?,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrConstructorSymbol,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isPrimary: Boolean,
|
||||
isExpect: Boolean,
|
||||
containerSource: DeserializedContainerSource?,
|
||||
): IrConstructor =
|
||||
PersistentIrConstructor(
|
||||
startOffset, endOffset, origin, symbol, name, visibility, returnType, isInline, isExternal, isPrimary, isExpect,
|
||||
@@ -88,37 +88,37 @@ object PersistentIrFactory : IrFactory {
|
||||
PersistentIrErrorDeclaration(startOffset, endOffset, descriptor)
|
||||
|
||||
override fun createField(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrFieldSymbol,
|
||||
name: Name,
|
||||
type: IrType,
|
||||
visibility: Visibility,
|
||||
isFinal: Boolean,
|
||||
isExternal: Boolean,
|
||||
isStatic: Boolean,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrFieldSymbol,
|
||||
name: Name,
|
||||
type: IrType,
|
||||
visibility: DescriptorVisibility,
|
||||
isFinal: Boolean,
|
||||
isExternal: Boolean,
|
||||
isStatic: Boolean,
|
||||
): IrField =
|
||||
PersistentIrField(startOffset, endOffset, origin, symbol, name, type, visibility, isFinal, isExternal, isStatic)
|
||||
|
||||
override fun createFunction(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrSimpleFunctionSymbol,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
modality: Modality,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isTailrec: Boolean,
|
||||
isSuspend: Boolean,
|
||||
isOperator: Boolean,
|
||||
isInfix: Boolean,
|
||||
isExpect: Boolean,
|
||||
isFakeOverride: Boolean,
|
||||
containerSource: DeserializedContainerSource?,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrSimpleFunctionSymbol,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
modality: Modality,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isTailrec: Boolean,
|
||||
isSuspend: Boolean,
|
||||
isOperator: Boolean,
|
||||
isInfix: Boolean,
|
||||
isExpect: Boolean,
|
||||
isFakeOverride: Boolean,
|
||||
containerSource: DeserializedContainerSource?,
|
||||
): IrSimpleFunction =
|
||||
PersistentIrFunction(
|
||||
startOffset, endOffset, origin, symbol, name, visibility, modality, returnType,
|
||||
@@ -127,20 +127,20 @@ object PersistentIrFactory : IrFactory {
|
||||
)
|
||||
|
||||
override fun createFakeOverrideFunction(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
modality: Modality,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isTailrec: Boolean,
|
||||
isSuspend: Boolean,
|
||||
isOperator: Boolean,
|
||||
isInfix: Boolean,
|
||||
isExpect: Boolean,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
modality: Modality,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isTailrec: Boolean,
|
||||
isSuspend: Boolean,
|
||||
isOperator: Boolean,
|
||||
isInfix: Boolean,
|
||||
isExpect: Boolean,
|
||||
): IrSimpleFunction =
|
||||
PersistentIrFakeOverrideFunction(
|
||||
startOffset, endOffset, origin, name, visibility, modality, returnType,
|
||||
@@ -161,21 +161,21 @@ object PersistentIrFactory : IrFactory {
|
||||
)
|
||||
|
||||
override fun createProperty(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrPropertySymbol,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
modality: Modality,
|
||||
isVar: Boolean,
|
||||
isConst: Boolean,
|
||||
isLateinit: Boolean,
|
||||
isDelegated: Boolean,
|
||||
isExternal: Boolean,
|
||||
isExpect: Boolean,
|
||||
isFakeOverride: Boolean,
|
||||
containerSource: DeserializedContainerSource?,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrPropertySymbol,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
modality: Modality,
|
||||
isVar: Boolean,
|
||||
isConst: Boolean,
|
||||
isLateinit: Boolean,
|
||||
isDelegated: Boolean,
|
||||
isExternal: Boolean,
|
||||
isExpect: Boolean,
|
||||
isFakeOverride: Boolean,
|
||||
containerSource: DeserializedContainerSource?,
|
||||
): IrProperty =
|
||||
PersistentIrProperty(
|
||||
startOffset, endOffset, origin, symbol, name, visibility, modality,
|
||||
@@ -184,18 +184,18 @@ object PersistentIrFactory : IrFactory {
|
||||
)
|
||||
|
||||
override fun createFakeOverrideProperty(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
modality: Modality,
|
||||
isVar: Boolean,
|
||||
isConst: Boolean,
|
||||
isLateinit: Boolean,
|
||||
isDelegated: Boolean,
|
||||
isExternal: Boolean,
|
||||
isExpect: Boolean,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
modality: Modality,
|
||||
isVar: Boolean,
|
||||
isConst: Boolean,
|
||||
isLateinit: Boolean,
|
||||
isDelegated: Boolean,
|
||||
isExternal: Boolean,
|
||||
isExpect: Boolean,
|
||||
): IrProperty =
|
||||
PersistentIrFakeOverrideProperty(
|
||||
startOffset, endOffset, origin, name, visibility, modality,
|
||||
@@ -203,14 +203,14 @@ object PersistentIrFactory : IrFactory {
|
||||
)
|
||||
|
||||
override fun createTypeAlias(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
symbol: IrTypeAliasSymbol,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
expandedType: IrType,
|
||||
isActual: Boolean,
|
||||
origin: IrDeclarationOrigin,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
symbol: IrTypeAliasSymbol,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
expandedType: IrType,
|
||||
isActual: Boolean,
|
||||
origin: IrDeclarationOrigin,
|
||||
): IrTypeAlias =
|
||||
PersistentIrTypeAlias(startOffset, endOffset, symbol, name, visibility, expandedType, isActual, origin)
|
||||
|
||||
|
||||
+11
-11
@@ -17,7 +17,7 @@
|
||||
package org.jetbrains.kotlin.ir.declarations.persistent
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.PropertyDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.declarations.persistent.carriers.Carrier
|
||||
@@ -30,16 +30,16 @@ import org.jetbrains.kotlin.ir.types.IrType
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
|
||||
internal class PersistentIrField(
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
override val symbol: IrFieldSymbol,
|
||||
override val name: Name,
|
||||
override val type: IrType,
|
||||
override var visibility: Visibility,
|
||||
override val isFinal: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isStatic: Boolean
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
override val symbol: IrFieldSymbol,
|
||||
override val name: Name,
|
||||
override val type: IrType,
|
||||
override var visibility: DescriptorVisibility,
|
||||
override val isFinal: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isStatic: Boolean
|
||||
) : IrField(),
|
||||
PersistentIrDeclarationBase<FieldCarrier>,
|
||||
FieldCarrier {
|
||||
|
||||
+48
-48
@@ -7,7 +7,7 @@ package org.jetbrains.kotlin.ir.declarations.persistent
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.FunctionDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.declarations.persistent.carriers.Carrier
|
||||
@@ -23,20 +23,20 @@ import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedContainerSource
|
||||
|
||||
internal abstract class PersistentIrFunctionCommon(
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
override val name: Name,
|
||||
visibility: Visibility,
|
||||
returnType: IrType,
|
||||
override val isInline: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isTailrec: Boolean,
|
||||
override val isSuspend: Boolean,
|
||||
override val isOperator: Boolean,
|
||||
override val isInfix: Boolean,
|
||||
override val isExpect: Boolean,
|
||||
override val containerSource: DeserializedContainerSource? = null
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
override val name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
returnType: IrType,
|
||||
override val isInline: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isTailrec: Boolean,
|
||||
override val isSuspend: Boolean,
|
||||
override val isOperator: Boolean,
|
||||
override val isInfix: Boolean,
|
||||
override val isExpect: Boolean,
|
||||
override val containerSource: DeserializedContainerSource? = null
|
||||
) : IrSimpleFunction(),
|
||||
PersistentIrDeclarationBase<FunctionCarrier>,
|
||||
FunctionCarrier {
|
||||
@@ -132,9 +132,9 @@ internal abstract class PersistentIrFunctionCommon(
|
||||
}
|
||||
}
|
||||
|
||||
override var visibilityField: Visibility = visibility
|
||||
override var visibilityField: DescriptorVisibility = visibility
|
||||
|
||||
override var visibility: Visibility
|
||||
override var visibility: DescriptorVisibility
|
||||
get() = getCarrier().visibilityField
|
||||
set(v) {
|
||||
if (visibility !== v) {
|
||||
@@ -175,23 +175,23 @@ internal abstract class PersistentIrFunctionCommon(
|
||||
}
|
||||
|
||||
internal class PersistentIrFunction(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
override val symbol: IrSimpleFunctionSymbol,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
override val modality: Modality,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isTailrec: Boolean,
|
||||
isSuspend: Boolean,
|
||||
isOperator: Boolean,
|
||||
isInfix: Boolean,
|
||||
isExpect: Boolean,
|
||||
override val isFakeOverride: Boolean = origin == IrDeclarationOrigin.FAKE_OVERRIDE,
|
||||
containerSource: DeserializedContainerSource?
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
override val symbol: IrSimpleFunctionSymbol,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
override val modality: Modality,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isTailrec: Boolean,
|
||||
isSuspend: Boolean,
|
||||
isOperator: Boolean,
|
||||
isInfix: Boolean,
|
||||
isExpect: Boolean,
|
||||
override val isFakeOverride: Boolean = origin == IrDeclarationOrigin.FAKE_OVERRIDE,
|
||||
containerSource: DeserializedContainerSource?
|
||||
) : PersistentIrFunctionCommon(
|
||||
startOffset, endOffset, origin, name, visibility, returnType, isInline,
|
||||
isExternal, isTailrec, isSuspend, isOperator, isInfix, isExpect,
|
||||
@@ -207,20 +207,20 @@ internal class PersistentIrFunction(
|
||||
}
|
||||
|
||||
internal class PersistentIrFakeOverrideFunction(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
name: Name,
|
||||
override var visibility: Visibility,
|
||||
override var modality: Modality,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isTailrec: Boolean,
|
||||
isSuspend: Boolean,
|
||||
isOperator: Boolean,
|
||||
isInfix: Boolean,
|
||||
isExpect: Boolean,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
name: Name,
|
||||
override var visibility: DescriptorVisibility,
|
||||
override var modality: Modality,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isTailrec: Boolean,
|
||||
isSuspend: Boolean,
|
||||
isOperator: Boolean,
|
||||
isInfix: Boolean,
|
||||
isExpect: Boolean,
|
||||
) : PersistentIrFunctionCommon(
|
||||
startOffset, endOffset, origin, name, visibility, returnType, isInline,
|
||||
isExternal, isTailrec, isSuspend, isOperator, isInfix, isExpect,
|
||||
|
||||
+40
-40
@@ -18,7 +18,7 @@ package org.jetbrains.kotlin.ir.declarations.persistent
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.PropertyDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.declarations.persistent.carriers.Carrier
|
||||
@@ -30,18 +30,18 @@ import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedContainerSource
|
||||
|
||||
internal abstract class PersistentIrPropertyCommon(
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
override val name: Name,
|
||||
override var visibility: Visibility,
|
||||
override val isVar: Boolean,
|
||||
override val isConst: Boolean,
|
||||
override val isLateinit: Boolean,
|
||||
override val isDelegated: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isExpect: Boolean,
|
||||
override val containerSource: DeserializedContainerSource?,
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
override val name: Name,
|
||||
override var visibility: DescriptorVisibility,
|
||||
override val isVar: Boolean,
|
||||
override val isConst: Boolean,
|
||||
override val isLateinit: Boolean,
|
||||
override val isDelegated: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isExpect: Boolean,
|
||||
override val containerSource: DeserializedContainerSource?,
|
||||
) : IrProperty(),
|
||||
PersistentIrDeclarationBase<PropertyCarrier>,
|
||||
PropertyCarrier {
|
||||
@@ -109,21 +109,21 @@ internal abstract class PersistentIrPropertyCommon(
|
||||
}
|
||||
|
||||
internal class PersistentIrProperty(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
override val symbol: IrPropertySymbol,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
override val modality: Modality,
|
||||
isVar: Boolean,
|
||||
isConst: Boolean,
|
||||
isLateinit: Boolean,
|
||||
isDelegated: Boolean,
|
||||
isExternal: Boolean,
|
||||
isExpect: Boolean = false,
|
||||
override val isFakeOverride: Boolean = origin == IrDeclarationOrigin.FAKE_OVERRIDE,
|
||||
containerSource: DeserializedContainerSource?,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
override val symbol: IrPropertySymbol,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
override val modality: Modality,
|
||||
isVar: Boolean,
|
||||
isConst: Boolean,
|
||||
isLateinit: Boolean,
|
||||
isDelegated: Boolean,
|
||||
isExternal: Boolean,
|
||||
isExpect: Boolean = false,
|
||||
override val isFakeOverride: Boolean = origin == IrDeclarationOrigin.FAKE_OVERRIDE,
|
||||
containerSource: DeserializedContainerSource?,
|
||||
) : PersistentIrPropertyCommon(
|
||||
startOffset, endOffset, origin, name, visibility, isVar, isConst, isLateinit, isDelegated, isExternal, isExpect,
|
||||
containerSource,
|
||||
@@ -138,18 +138,18 @@ internal class PersistentIrProperty(
|
||||
}
|
||||
|
||||
internal class PersistentIrFakeOverrideProperty(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
override var modality: Modality,
|
||||
isVar: Boolean,
|
||||
isConst: Boolean,
|
||||
isLateinit: Boolean,
|
||||
isDelegated: Boolean,
|
||||
isExternal: Boolean,
|
||||
isExpect: Boolean,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
override var modality: Modality,
|
||||
isVar: Boolean,
|
||||
isConst: Boolean,
|
||||
isLateinit: Boolean,
|
||||
isDelegated: Boolean,
|
||||
isExternal: Boolean,
|
||||
isExpect: Boolean,
|
||||
) : PersistentIrPropertyCommon(
|
||||
startOffset, endOffset, origin, name, visibility, isVar, isConst, isLateinit,
|
||||
isDelegated, isExternal, isExpect,
|
||||
|
||||
+9
-9
@@ -6,7 +6,7 @@
|
||||
package org.jetbrains.kotlin.ir.declarations.persistent
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.TypeAliasDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.declarations.persistent.carriers.Carrier
|
||||
@@ -17,14 +17,14 @@ import org.jetbrains.kotlin.ir.types.IrType
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
|
||||
internal class PersistentIrTypeAlias(
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override val symbol: IrTypeAliasSymbol,
|
||||
override val name: Name,
|
||||
override var visibility: Visibility,
|
||||
override val expandedType: IrType,
|
||||
override val isActual: Boolean,
|
||||
origin: IrDeclarationOrigin
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override val symbol: IrTypeAliasSymbol,
|
||||
override val name: Name,
|
||||
override var visibility: DescriptorVisibility,
|
||||
override val expandedType: IrType,
|
||||
override val isActual: Boolean,
|
||||
origin: IrDeclarationOrigin
|
||||
) : IrTypeAlias(),
|
||||
PersistentIrDeclarationBase<TypeAliasCarrier>,
|
||||
TypeAliasCarrier {
|
||||
|
||||
+13
-13
@@ -6,7 +6,7 @@
|
||||
package org.jetbrains.kotlin.ir.declarations.persistent.carriers
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.expressions.IrConstructorCall
|
||||
import org.jetbrains.kotlin.ir.types.IrType
|
||||
@@ -14,7 +14,7 @@ import org.jetbrains.kotlin.ir.types.IrType
|
||||
internal interface ClassCarrier : DeclarationCarrier {
|
||||
var thisReceiverField: IrValueParameter?
|
||||
var metadataField: MetadataSource?
|
||||
var visibilityField: Visibility
|
||||
var visibilityField: DescriptorVisibility
|
||||
var modalityField: Modality
|
||||
var attributeOwnerIdField: IrAttributeContainer
|
||||
var typeParametersField: List<IrTypeParameter>
|
||||
@@ -38,15 +38,15 @@ internal interface ClassCarrier : DeclarationCarrier {
|
||||
}
|
||||
|
||||
internal class ClassCarrierImpl(
|
||||
override val lastModified: Int,
|
||||
override var parentField: IrDeclarationParent?,
|
||||
override var originField: IrDeclarationOrigin,
|
||||
override var annotationsField: List<IrConstructorCall>,
|
||||
override var thisReceiverField: IrValueParameter?,
|
||||
override var metadataField: MetadataSource?,
|
||||
override var visibilityField: Visibility,
|
||||
override var modalityField: Modality,
|
||||
override var attributeOwnerIdField: IrAttributeContainer,
|
||||
override var typeParametersField: List<IrTypeParameter>,
|
||||
override var superTypesField: List<IrType>
|
||||
override val lastModified: Int,
|
||||
override var parentField: IrDeclarationParent?,
|
||||
override var originField: IrDeclarationOrigin,
|
||||
override var annotationsField: List<IrConstructorCall>,
|
||||
override var thisReceiverField: IrValueParameter?,
|
||||
override var metadataField: MetadataSource?,
|
||||
override var visibilityField: DescriptorVisibility,
|
||||
override var modalityField: Modality,
|
||||
override var attributeOwnerIdField: IrAttributeContainer,
|
||||
override var typeParametersField: List<IrTypeParameter>,
|
||||
override var superTypesField: List<IrType>
|
||||
) : ClassCarrier
|
||||
|
||||
+13
-13
@@ -5,7 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.ir.declarations.persistent.carriers
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.expressions.IrBody
|
||||
import org.jetbrains.kotlin.ir.expressions.IrConstructorCall
|
||||
@@ -31,16 +31,16 @@ internal interface ConstructorCarrier : FunctionBaseCarrier {
|
||||
}
|
||||
|
||||
internal class ConstructorCarrierImpl(
|
||||
override val lastModified: Int,
|
||||
override var parentField: IrDeclarationParent?,
|
||||
override var originField: IrDeclarationOrigin,
|
||||
override var annotationsField: List<IrConstructorCall>,
|
||||
override var returnTypeFieldField: IrType,
|
||||
override var dispatchReceiverParameterField: IrValueParameter?,
|
||||
override var extensionReceiverParameterField: IrValueParameter?,
|
||||
override var bodyField: IrBody?,
|
||||
override var metadataField: MetadataSource?,
|
||||
override var visibilityField: Visibility,
|
||||
override var typeParametersField: List<IrTypeParameter>,
|
||||
override var valueParametersField: List<IrValueParameter>
|
||||
override val lastModified: Int,
|
||||
override var parentField: IrDeclarationParent?,
|
||||
override var originField: IrDeclarationOrigin,
|
||||
override var annotationsField: List<IrConstructorCall>,
|
||||
override var returnTypeFieldField: IrType,
|
||||
override var dispatchReceiverParameterField: IrValueParameter?,
|
||||
override var extensionReceiverParameterField: IrValueParameter?,
|
||||
override var bodyField: IrBody?,
|
||||
override var metadataField: MetadataSource?,
|
||||
override var visibilityField: DescriptorVisibility,
|
||||
override var typeParametersField: List<IrTypeParameter>,
|
||||
override var valueParametersField: List<IrValueParameter>
|
||||
) : ConstructorCarrier
|
||||
|
||||
+2
-2
@@ -5,7 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.ir.declarations.persistent.carriers
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.declarations.IrTypeParameter
|
||||
import org.jetbrains.kotlin.ir.declarations.IrValueParameter
|
||||
import org.jetbrains.kotlin.ir.declarations.MetadataSource
|
||||
@@ -18,7 +18,7 @@ internal interface FunctionBaseCarrier : DeclarationCarrier {
|
||||
var extensionReceiverParameterField: IrValueParameter?
|
||||
var bodyField: IrBody?
|
||||
var metadataField: MetadataSource?
|
||||
var visibilityField: Visibility
|
||||
var visibilityField: DescriptorVisibility
|
||||
var typeParametersField: List<IrTypeParameter>
|
||||
var valueParametersField: List<IrValueParameter>
|
||||
}
|
||||
|
||||
+16
-16
@@ -5,7 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.ir.declarations.persistent.carriers
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.expressions.IrBody
|
||||
import org.jetbrains.kotlin.ir.expressions.IrConstructorCall
|
||||
@@ -40,19 +40,19 @@ internal interface FunctionCarrier : FunctionBaseCarrier {
|
||||
}
|
||||
|
||||
internal class FunctionCarrierImpl(
|
||||
override val lastModified: Int,
|
||||
override var parentField: IrDeclarationParent?,
|
||||
override var originField: IrDeclarationOrigin,
|
||||
override var annotationsField: List<IrConstructorCall>,
|
||||
override var returnTypeFieldField: IrType,
|
||||
override var dispatchReceiverParameterField: IrValueParameter?,
|
||||
override var extensionReceiverParameterField: IrValueParameter?,
|
||||
override var bodyField: IrBody?,
|
||||
override var metadataField: MetadataSource?,
|
||||
override var visibilityField: Visibility,
|
||||
override var typeParametersField: List<IrTypeParameter>,
|
||||
override var valueParametersField: List<IrValueParameter>,
|
||||
override var correspondingPropertySymbolField: IrPropertySymbol?,
|
||||
override var overriddenSymbolsField: List<IrSimpleFunctionSymbol>,
|
||||
override var attributeOwnerIdField: IrAttributeContainer
|
||||
override val lastModified: Int,
|
||||
override var parentField: IrDeclarationParent?,
|
||||
override var originField: IrDeclarationOrigin,
|
||||
override var annotationsField: List<IrConstructorCall>,
|
||||
override var returnTypeFieldField: IrType,
|
||||
override var dispatchReceiverParameterField: IrValueParameter?,
|
||||
override var extensionReceiverParameterField: IrValueParameter?,
|
||||
override var bodyField: IrBody?,
|
||||
override var metadataField: MetadataSource?,
|
||||
override var visibilityField: DescriptorVisibility,
|
||||
override var typeParametersField: List<IrTypeParameter>,
|
||||
override var valueParametersField: List<IrValueParameter>,
|
||||
override var correspondingPropertySymbolField: IrPropertySymbol?,
|
||||
override var overriddenSymbolsField: List<IrSimpleFunctionSymbol>,
|
||||
override var attributeOwnerIdField: IrAttributeContainer
|
||||
) : FunctionCarrier
|
||||
|
||||
+4
-4
@@ -5,8 +5,8 @@
|
||||
|
||||
package org.jetbrains.kotlin.ir.builders.declarations
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.descriptors.annotations.Annotations
|
||||
import org.jetbrains.kotlin.ir.builders.IrElementBuilder
|
||||
import org.jetbrains.kotlin.ir.declarations.IrDeclaration
|
||||
@@ -16,7 +16,7 @@ import org.jetbrains.kotlin.name.Name
|
||||
|
||||
abstract class IrDeclarationBuilder : IrElementBuilder() {
|
||||
var origin: IrDeclarationOrigin = IrDeclarationOrigin.DEFINED
|
||||
var visibility: Visibility = Visibilities.PUBLIC
|
||||
var visibility: DescriptorVisibility = DescriptorVisibilities.PUBLIC
|
||||
|
||||
lateinit var name: Name
|
||||
|
||||
@@ -24,6 +24,6 @@ abstract class IrDeclarationBuilder : IrElementBuilder() {
|
||||
super.updateFrom(from)
|
||||
|
||||
origin = from.origin
|
||||
visibility = if (from is IrDeclarationWithVisibility) from.visibility else Visibilities.PUBLIC
|
||||
visibility = if (from is IrDeclarationWithVisibility) from.visibility else DescriptorVisibilities.PUBLIC
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@ package org.jetbrains.kotlin.ir.declarations
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.IrElement
|
||||
import org.jetbrains.kotlin.ir.IrElementBase
|
||||
import org.jetbrains.kotlin.ir.IrStatement
|
||||
@@ -56,7 +56,7 @@ interface IrOverridableDeclaration<S : IrSymbol> : IrDeclaration {
|
||||
}
|
||||
|
||||
interface IrDeclarationWithVisibility : IrDeclaration {
|
||||
var visibility: Visibility
|
||||
var visibility: DescriptorVisibility
|
||||
}
|
||||
|
||||
interface IrDeclarationWithName : IrDeclaration {
|
||||
|
||||
@@ -26,37 +26,37 @@ interface IrFactory {
|
||||
): IrAnonymousInitializer
|
||||
|
||||
fun createClass(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrClassSymbol,
|
||||
name: Name,
|
||||
kind: ClassKind,
|
||||
visibility: Visibility,
|
||||
modality: Modality,
|
||||
isCompanion: Boolean = false,
|
||||
isInner: Boolean = false,
|
||||
isData: Boolean = false,
|
||||
isExternal: Boolean = false,
|
||||
isInline: Boolean = false,
|
||||
isExpect: Boolean = false,
|
||||
isFun: Boolean = false,
|
||||
source: SourceElement = SourceElement.NO_SOURCE,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrClassSymbol,
|
||||
name: Name,
|
||||
kind: ClassKind,
|
||||
visibility: DescriptorVisibility,
|
||||
modality: Modality,
|
||||
isCompanion: Boolean = false,
|
||||
isInner: Boolean = false,
|
||||
isData: Boolean = false,
|
||||
isExternal: Boolean = false,
|
||||
isInline: Boolean = false,
|
||||
isExpect: Boolean = false,
|
||||
isFun: Boolean = false,
|
||||
source: SourceElement = SourceElement.NO_SOURCE,
|
||||
): IrClass
|
||||
|
||||
fun createConstructor(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrConstructorSymbol,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isPrimary: Boolean,
|
||||
isExpect: Boolean,
|
||||
containerSource: DeserializedContainerSource? = null
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrConstructorSymbol,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isPrimary: Boolean,
|
||||
isExpect: Boolean,
|
||||
containerSource: DeserializedContainerSource? = null
|
||||
): IrConstructor
|
||||
|
||||
fun createEnumEntry(
|
||||
@@ -74,53 +74,53 @@ interface IrFactory {
|
||||
): IrErrorDeclaration
|
||||
|
||||
fun createField(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrFieldSymbol,
|
||||
name: Name,
|
||||
type: IrType,
|
||||
visibility: Visibility,
|
||||
isFinal: Boolean,
|
||||
isExternal: Boolean,
|
||||
isStatic: Boolean,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrFieldSymbol,
|
||||
name: Name,
|
||||
type: IrType,
|
||||
visibility: DescriptorVisibility,
|
||||
isFinal: Boolean,
|
||||
isExternal: Boolean,
|
||||
isStatic: Boolean,
|
||||
): IrField
|
||||
|
||||
fun createFunction(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrSimpleFunctionSymbol,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
modality: Modality,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isTailrec: Boolean,
|
||||
isSuspend: Boolean,
|
||||
isOperator: Boolean,
|
||||
isInfix: Boolean,
|
||||
isExpect: Boolean,
|
||||
isFakeOverride: Boolean = origin == IrDeclarationOrigin.FAKE_OVERRIDE,
|
||||
containerSource: DeserializedContainerSource? = null,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrSimpleFunctionSymbol,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
modality: Modality,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isTailrec: Boolean,
|
||||
isSuspend: Boolean,
|
||||
isOperator: Boolean,
|
||||
isInfix: Boolean,
|
||||
isExpect: Boolean,
|
||||
isFakeOverride: Boolean = origin == IrDeclarationOrigin.FAKE_OVERRIDE,
|
||||
containerSource: DeserializedContainerSource? = null,
|
||||
): IrSimpleFunction
|
||||
|
||||
fun createFakeOverrideFunction(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
modality: Modality,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isTailrec: Boolean,
|
||||
isSuspend: Boolean,
|
||||
isOperator: Boolean,
|
||||
isInfix: Boolean,
|
||||
isExpect: Boolean,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
modality: Modality,
|
||||
returnType: IrType,
|
||||
isInline: Boolean,
|
||||
isExternal: Boolean,
|
||||
isTailrec: Boolean,
|
||||
isSuspend: Boolean,
|
||||
isOperator: Boolean,
|
||||
isInfix: Boolean,
|
||||
isExpect: Boolean,
|
||||
): IrSimpleFunction
|
||||
|
||||
fun createLocalDelegatedProperty(
|
||||
@@ -134,47 +134,47 @@ interface IrFactory {
|
||||
): IrLocalDelegatedProperty
|
||||
|
||||
fun createProperty(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrPropertySymbol,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
modality: Modality,
|
||||
isVar: Boolean,
|
||||
isConst: Boolean,
|
||||
isLateinit: Boolean,
|
||||
isDelegated: Boolean,
|
||||
isExternal: Boolean,
|
||||
isExpect: Boolean = false,
|
||||
isFakeOverride: Boolean = origin == IrDeclarationOrigin.FAKE_OVERRIDE,
|
||||
containerSource: DeserializedContainerSource? = null
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrPropertySymbol,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
modality: Modality,
|
||||
isVar: Boolean,
|
||||
isConst: Boolean,
|
||||
isLateinit: Boolean,
|
||||
isDelegated: Boolean,
|
||||
isExternal: Boolean,
|
||||
isExpect: Boolean = false,
|
||||
isFakeOverride: Boolean = origin == IrDeclarationOrigin.FAKE_OVERRIDE,
|
||||
containerSource: DeserializedContainerSource? = null
|
||||
): IrProperty
|
||||
|
||||
fun createFakeOverrideProperty(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
modality: Modality,
|
||||
isVar: Boolean,
|
||||
isConst: Boolean,
|
||||
isLateinit: Boolean,
|
||||
isDelegated: Boolean,
|
||||
isExternal: Boolean,
|
||||
isExpect: Boolean,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
modality: Modality,
|
||||
isVar: Boolean,
|
||||
isConst: Boolean,
|
||||
isLateinit: Boolean,
|
||||
isDelegated: Boolean,
|
||||
isExternal: Boolean,
|
||||
isExpect: Boolean,
|
||||
): IrProperty
|
||||
|
||||
fun createTypeAlias(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
symbol: IrTypeAliasSymbol,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
expandedType: IrType,
|
||||
isActual: Boolean,
|
||||
origin: IrDeclarationOrigin,
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
symbol: IrTypeAliasSymbol,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
expandedType: IrType,
|
||||
isActual: Boolean,
|
||||
origin: IrDeclarationOrigin,
|
||||
): IrTypeAlias
|
||||
|
||||
fun createTypeParameter(
|
||||
|
||||
@@ -19,25 +19,25 @@ import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedClassDescriptor
|
||||
|
||||
class IrLazyClass(
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
override val symbol: IrClassSymbol,
|
||||
@OptIn(ObsoleteDescriptorBasedAPI::class)
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
override val symbol: IrClassSymbol,
|
||||
@OptIn(ObsoleteDescriptorBasedAPI::class)
|
||||
override val descriptor: ClassDescriptor,
|
||||
override val name: Name,
|
||||
override val kind: ClassKind,
|
||||
override var visibility: Visibility,
|
||||
override var modality: Modality,
|
||||
override val isCompanion: Boolean,
|
||||
override val isInner: Boolean,
|
||||
override val isData: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isInline: Boolean,
|
||||
override val isExpect: Boolean,
|
||||
override val isFun: Boolean,
|
||||
override val stubGenerator: DeclarationStubGenerator,
|
||||
override val typeTranslator: TypeTranslator
|
||||
override val name: Name,
|
||||
override val kind: ClassKind,
|
||||
override var visibility: DescriptorVisibility,
|
||||
override var modality: Modality,
|
||||
override val isCompanion: Boolean,
|
||||
override val isInner: Boolean,
|
||||
override val isData: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isInline: Boolean,
|
||||
override val isExpect: Boolean,
|
||||
override val isFun: Boolean,
|
||||
override val stubGenerator: DeclarationStubGenerator,
|
||||
override val typeTranslator: TypeTranslator
|
||||
) : IrClass(), IrLazyDeclarationBase {
|
||||
init {
|
||||
symbol.bind(this)
|
||||
|
||||
+14
-14
@@ -6,7 +6,7 @@
|
||||
package org.jetbrains.kotlin.ir.declarations.lazy
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.ClassConstructorDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.expressions.IrBody
|
||||
@@ -22,19 +22,19 @@ import org.jetbrains.kotlin.serialization.deserialization.descriptors.Deserializ
|
||||
|
||||
@OptIn(ObsoleteDescriptorBasedAPI::class)
|
||||
class IrLazyConstructor(
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
override val symbol: IrConstructorSymbol,
|
||||
override val descriptor: ClassConstructorDescriptor,
|
||||
override val name: Name,
|
||||
override var visibility: Visibility,
|
||||
override val isInline: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isPrimary: Boolean,
|
||||
override val isExpect: Boolean,
|
||||
override val stubGenerator: DeclarationStubGenerator,
|
||||
override val typeTranslator: TypeTranslator,
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
override val symbol: IrConstructorSymbol,
|
||||
override val descriptor: ClassConstructorDescriptor,
|
||||
override val name: Name,
|
||||
override var visibility: DescriptorVisibility,
|
||||
override val isInline: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isPrimary: Boolean,
|
||||
override val isExpect: Boolean,
|
||||
override val stubGenerator: DeclarationStubGenerator,
|
||||
override val typeTranslator: TypeTranslator,
|
||||
) : IrConstructor(), IrLazyFunctionBase {
|
||||
override var parent: IrDeclarationParent by createLazyParent()
|
||||
|
||||
|
||||
+1
-1
@@ -41,7 +41,7 @@ interface IrLazyDeclarationBase : IrDeclaration {
|
||||
|
||||
fun generateChildStubs(descriptors: Collection<DeclarationDescriptor>, declarations: MutableList<IrDeclaration>) {
|
||||
descriptors.mapNotNullTo(declarations) { descriptor ->
|
||||
if (descriptor is DeclarationDescriptorWithVisibility && Visibilities.isPrivate(descriptor.visibility)) null
|
||||
if (descriptor is DeclarationDescriptorWithVisibility && DescriptorVisibilities.isPrivate(descriptor.visibility)) null
|
||||
else stubGenerator.generateMemberStub(descriptor)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
package org.jetbrains.kotlin.ir.declarations.lazy
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.PropertyDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.UNDEFINED_OFFSET
|
||||
import org.jetbrains.kotlin.ir.declarations.IrDeclarationOrigin
|
||||
@@ -23,19 +23,19 @@ import org.jetbrains.kotlin.ir.util.TypeTranslator
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
|
||||
class IrLazyField(
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
override val symbol: IrFieldSymbol,
|
||||
@OptIn(ObsoleteDescriptorBasedAPI::class)
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
override val symbol: IrFieldSymbol,
|
||||
@OptIn(ObsoleteDescriptorBasedAPI::class)
|
||||
override val descriptor: PropertyDescriptor,
|
||||
override val name: Name,
|
||||
override var visibility: Visibility,
|
||||
override val isFinal: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isStatic: Boolean,
|
||||
override val stubGenerator: DeclarationStubGenerator,
|
||||
override val typeTranslator: TypeTranslator,
|
||||
override val name: Name,
|
||||
override var visibility: DescriptorVisibility,
|
||||
override val isFinal: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isStatic: Boolean,
|
||||
override val stubGenerator: DeclarationStubGenerator,
|
||||
override val typeTranslator: TypeTranslator,
|
||||
) : IrField(), IrLazyDeclarationBase {
|
||||
init {
|
||||
symbol.bind(this)
|
||||
|
||||
+19
-19
@@ -7,7 +7,7 @@ package org.jetbrains.kotlin.ir.declarations.lazy
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.FunctionDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.expressions.IrBody
|
||||
@@ -25,24 +25,24 @@ import org.jetbrains.kotlin.serialization.deserialization.descriptors.Deserializ
|
||||
|
||||
@OptIn(ObsoleteDescriptorBasedAPI::class)
|
||||
class IrLazyFunction(
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
override val symbol: IrSimpleFunctionSymbol,
|
||||
override val descriptor: FunctionDescriptor,
|
||||
override val name: Name,
|
||||
override var visibility: Visibility,
|
||||
override val modality: Modality,
|
||||
override val isInline: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isTailrec: Boolean,
|
||||
override val isSuspend: Boolean,
|
||||
override val isExpect: Boolean,
|
||||
override val isFakeOverride: Boolean,
|
||||
override val isOperator: Boolean,
|
||||
override val isInfix: Boolean,
|
||||
override val stubGenerator: DeclarationStubGenerator,
|
||||
override val typeTranslator: TypeTranslator,
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
override val symbol: IrSimpleFunctionSymbol,
|
||||
override val descriptor: FunctionDescriptor,
|
||||
override val name: Name,
|
||||
override var visibility: DescriptorVisibility,
|
||||
override val modality: Modality,
|
||||
override val isInline: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isTailrec: Boolean,
|
||||
override val isSuspend: Boolean,
|
||||
override val isExpect: Boolean,
|
||||
override val isFakeOverride: Boolean,
|
||||
override val isOperator: Boolean,
|
||||
override val isInfix: Boolean,
|
||||
override val stubGenerator: DeclarationStubGenerator,
|
||||
override val typeTranslator: TypeTranslator,
|
||||
) : IrSimpleFunction(), IrLazyFunctionBase {
|
||||
override var parent: IrDeclarationParent by createLazyParent()
|
||||
|
||||
|
||||
+19
-19
@@ -7,7 +7,7 @@ package org.jetbrains.kotlin.ir.declarations.lazy
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.PropertyDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.expressions.IrConstructorCall
|
||||
@@ -21,25 +21,25 @@ import org.jetbrains.kotlin.serialization.deserialization.descriptors.Deserializ
|
||||
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedPropertyDescriptor
|
||||
|
||||
class IrLazyProperty(
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
override val symbol: IrPropertySymbol,
|
||||
@OptIn(ObsoleteDescriptorBasedAPI::class)
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
override val symbol: IrPropertySymbol,
|
||||
@OptIn(ObsoleteDescriptorBasedAPI::class)
|
||||
override val descriptor: PropertyDescriptor,
|
||||
override val name: Name,
|
||||
override var visibility: Visibility,
|
||||
override val modality: Modality,
|
||||
override val isVar: Boolean,
|
||||
override val isConst: Boolean,
|
||||
override val isLateinit: Boolean,
|
||||
override val isDelegated: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isExpect: Boolean,
|
||||
override val isFakeOverride: Boolean,
|
||||
override val stubGenerator: DeclarationStubGenerator,
|
||||
override val typeTranslator: TypeTranslator,
|
||||
bindingContext: BindingContext? = null
|
||||
override val name: Name,
|
||||
override var visibility: DescriptorVisibility,
|
||||
override val modality: Modality,
|
||||
override val isVar: Boolean,
|
||||
override val isConst: Boolean,
|
||||
override val isLateinit: Boolean,
|
||||
override val isDelegated: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isExpect: Boolean,
|
||||
override val isFakeOverride: Boolean,
|
||||
override val stubGenerator: DeclarationStubGenerator,
|
||||
override val typeTranslator: TypeTranslator,
|
||||
bindingContext: BindingContext? = null
|
||||
) : IrProperty(), IrLazyDeclarationBase {
|
||||
init {
|
||||
symbol.bind(this)
|
||||
|
||||
+11
-11
@@ -6,7 +6,7 @@
|
||||
package org.jetbrains.kotlin.ir.declarations.lazy
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.TypeAliasDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.expressions.IrConstructorCall
|
||||
@@ -17,17 +17,17 @@ import org.jetbrains.kotlin.ir.util.TypeTranslator
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
|
||||
class IrLazyTypeAlias(
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
override val symbol: IrTypeAliasSymbol,
|
||||
@OptIn(ObsoleteDescriptorBasedAPI::class)
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
override val symbol: IrTypeAliasSymbol,
|
||||
@OptIn(ObsoleteDescriptorBasedAPI::class)
|
||||
override val descriptor: TypeAliasDescriptor,
|
||||
override val name: Name,
|
||||
override var visibility: Visibility,
|
||||
override val isActual: Boolean,
|
||||
override val stubGenerator: DeclarationStubGenerator,
|
||||
override val typeTranslator: TypeTranslator,
|
||||
override val name: Name,
|
||||
override var visibility: DescriptorVisibility,
|
||||
override val isActual: Boolean,
|
||||
override val stubGenerator: DeclarationStubGenerator,
|
||||
override val typeTranslator: TypeTranslator,
|
||||
) : IrTypeAlias(), IrLazyDeclarationBase {
|
||||
init {
|
||||
symbol.bind(this)
|
||||
|
||||
@@ -151,7 +151,7 @@ abstract class IrBasedCallableDescriptor<T : IrDeclaration>(owner: T) : Callable
|
||||
|
||||
override fun hasSynthesizedParameterNames() = false
|
||||
|
||||
override fun getVisibility(): Visibility {
|
||||
override fun getVisibility(): DescriptorVisibility {
|
||||
TODO("not implemented")
|
||||
}
|
||||
|
||||
@@ -414,11 +414,11 @@ open class IrBasedSimpleFunctionDescriptor(owner: IrSimpleFunction) : SimpleFunc
|
||||
else CallableMemberDescriptor.Kind.SYNTHESIZED
|
||||
|
||||
override fun copy(
|
||||
newOwner: DeclarationDescriptor?,
|
||||
modality: Modality?,
|
||||
visibility: Visibility?,
|
||||
kind: CallableMemberDescriptor.Kind?,
|
||||
copyOverrides: Boolean
|
||||
newOwner: DeclarationDescriptor?,
|
||||
modality: Modality?,
|
||||
visibility: DescriptorVisibility?,
|
||||
kind: CallableMemberDescriptor.Kind?,
|
||||
copyOverrides: Boolean
|
||||
): Nothing {
|
||||
TODO("not implemented")
|
||||
}
|
||||
@@ -482,11 +482,11 @@ open class IrBasedClassConstructorDescriptor(owner: IrConstructor) : ClassConstr
|
||||
}
|
||||
|
||||
override fun copy(
|
||||
newOwner: DeclarationDescriptor,
|
||||
modality: Modality,
|
||||
visibility: Visibility,
|
||||
kind: CallableMemberDescriptor.Kind,
|
||||
copyOverrides: Boolean
|
||||
newOwner: DeclarationDescriptor,
|
||||
modality: Modality,
|
||||
visibility: DescriptorVisibility,
|
||||
kind: CallableMemberDescriptor.Kind,
|
||||
copyOverrides: Boolean
|
||||
): ClassConstructorDescriptor {
|
||||
throw UnsupportedOperationException()
|
||||
}
|
||||
@@ -696,7 +696,7 @@ open class IrBasedEnumEntryDescriptor(owner: IrEnumEntry) : ClassDescriptor, IrB
|
||||
|
||||
override fun getCompanionObjectDescriptor() = null
|
||||
|
||||
override fun getVisibility() = Visibilities.DEFAULT_VISIBILITY
|
||||
override fun getVisibility() = DescriptorVisibilities.DEFAULT_VISIBILITY
|
||||
|
||||
override fun isCompanionObject() = false
|
||||
|
||||
@@ -776,11 +776,11 @@ open class IrBasedPropertyDescriptor(owner: IrProperty) : PropertyDescriptor, Ir
|
||||
override fun getOverriddenDescriptors(): MutableCollection<out PropertyDescriptor> = mutableListOf()
|
||||
|
||||
override fun copy(
|
||||
newOwner: DeclarationDescriptor?,
|
||||
modality: Modality?,
|
||||
visibility: Visibility?,
|
||||
kind: CallableMemberDescriptor.Kind?,
|
||||
copyOverrides: Boolean
|
||||
newOwner: DeclarationDescriptor?,
|
||||
modality: Modality?,
|
||||
visibility: DescriptorVisibility?,
|
||||
kind: CallableMemberDescriptor.Kind?,
|
||||
copyOverrides: Boolean
|
||||
): CallableMemberDescriptor {
|
||||
TODO("not implemented")
|
||||
}
|
||||
@@ -937,7 +937,7 @@ open class IrBasedTypeAliasDescriptor(owner: IrTypeAlias) : IrBasedDeclarationDe
|
||||
|
||||
override fun getSource(): SourceElement = SourceElement.NO_SOURCE
|
||||
|
||||
override fun getVisibility(): Visibility = owner.visibility
|
||||
override fun getVisibility(): DescriptorVisibility = owner.visibility
|
||||
|
||||
override fun isExpect(): Boolean = false
|
||||
|
||||
@@ -971,11 +971,11 @@ open class IrBasedFieldDescriptor(owner: IrField) : PropertyDescriptor, IrBasedD
|
||||
override fun getOverriddenDescriptors(): MutableCollection<out PropertyDescriptor> = mutableListOf()
|
||||
|
||||
override fun copy(
|
||||
newOwner: DeclarationDescriptor?,
|
||||
modality: Modality?,
|
||||
visibility: Visibility?,
|
||||
kind: CallableMemberDescriptor.Kind?,
|
||||
copyOverrides: Boolean
|
||||
newOwner: DeclarationDescriptor?,
|
||||
modality: Modality?,
|
||||
visibility: DescriptorVisibility?,
|
||||
kind: CallableMemberDescriptor.Kind?,
|
||||
copyOverrides: Boolean
|
||||
): CallableMemberDescriptor {
|
||||
TODO("not implemented")
|
||||
}
|
||||
|
||||
@@ -68,7 +68,7 @@ class IrBuiltIns(
|
||||
|
||||
val symbol = symbolTable.declareSimpleFunctionIfNotExists(operatorDescriptor) {
|
||||
val operator = irFactory.createFunction(
|
||||
UNDEFINED_OFFSET, UNDEFINED_OFFSET, BUILTIN_OPERATOR, it, Name.identifier(name), Visibilities.PUBLIC, Modality.FINAL,
|
||||
UNDEFINED_OFFSET, UNDEFINED_OFFSET, BUILTIN_OPERATOR, it, Name.identifier(name), DescriptorVisibilities.PUBLIC, Modality.FINAL,
|
||||
returnType, isInline = false, isExternal = false, isTailrec = false, isSuspend = false,
|
||||
isOperator = false, isInfix = false, isExpect = false, isFakeOverride = false
|
||||
)
|
||||
@@ -128,7 +128,7 @@ class IrBuiltIns(
|
||||
|
||||
initialize(
|
||||
null, null, listOf(typeParameterDescriptor), listOf(valueParameterDescriptor), returnKotlinType,
|
||||
Modality.FINAL, Visibilities.PUBLIC
|
||||
Modality.FINAL, DescriptorVisibilities.PUBLIC
|
||||
)
|
||||
}
|
||||
|
||||
@@ -155,7 +155,7 @@ class IrBuiltIns(
|
||||
|
||||
return symbolTable.declareSimpleFunctionIfNotExists(operatorDescriptor) {
|
||||
val operator = irFactory.createFunction(
|
||||
UNDEFINED_OFFSET, UNDEFINED_OFFSET, BUILTIN_OPERATOR, it, name, Visibilities.PUBLIC, Modality.FINAL, returnIrType,
|
||||
UNDEFINED_OFFSET, UNDEFINED_OFFSET, BUILTIN_OPERATOR, it, name, DescriptorVisibilities.PUBLIC, Modality.FINAL, returnIrType,
|
||||
isInline = false, isExternal = false, isTailrec = false, isSuspend = false, isOperator = false, isInfix = false,
|
||||
isExpect = false, isFakeOverride = false
|
||||
)
|
||||
|
||||
+4
-4
@@ -42,7 +42,7 @@ abstract class IrBuiltinOperatorDescriptorBase(containingDeclaration: Declaratio
|
||||
throw UnsupportedOperationException()
|
||||
|
||||
override fun getTypeParameters(): List<TypeParameterDescriptor> = emptyList()
|
||||
override fun getVisibility(): Visibility = Visibilities.PUBLIC
|
||||
override fun getVisibility(): DescriptorVisibility = DescriptorVisibilities.PUBLIC
|
||||
override fun getModality(): Modality = Modality.FINAL
|
||||
override fun getKind(): CallableMemberDescriptor.Kind = CallableMemberDescriptor.Kind.SYNTHESIZED
|
||||
override fun getInitialSignatureDescriptor(): FunctionDescriptor? = null
|
||||
@@ -61,8 +61,8 @@ abstract class IrBuiltinOperatorDescriptorBase(containingDeclaration: Declaratio
|
||||
override fun hasSynthesizedParameterNames(): Boolean = false
|
||||
|
||||
override fun copy(
|
||||
newOwner: DeclarationDescriptor?, modality: Modality?, visibility: Visibility?,
|
||||
kind: CallableMemberDescriptor.Kind?, copyOverrides: Boolean
|
||||
newOwner: DeclarationDescriptor?, modality: Modality?, visibility: DescriptorVisibility?,
|
||||
kind: CallableMemberDescriptor.Kind?, copyOverrides: Boolean
|
||||
) =
|
||||
throw UnsupportedOperationException()
|
||||
|
||||
@@ -119,7 +119,7 @@ class IrBuiltinValueParameterDescriptorImpl(
|
||||
override val varargElementType: KotlinType? get() = null
|
||||
override fun getCompileTimeInitializer(): ConstantValue<*>? = null
|
||||
override fun isVar(): Boolean = false
|
||||
override fun getVisibility(): Visibility = Visibilities.LOCAL
|
||||
override fun getVisibility(): DescriptorVisibility = DescriptorVisibilities.LOCAL
|
||||
|
||||
override fun copy(newOwner: CallableDescriptor, newName: Name, newIndex: Int): ValueParameterDescriptor =
|
||||
throw UnsupportedOperationException()
|
||||
|
||||
@@ -54,7 +54,7 @@ abstract class IrDelegateDescriptorBase(
|
||||
/* original = */ null,
|
||||
annotations,
|
||||
Modality.FINAL,
|
||||
Visibilities.PRIVATE,
|
||||
DescriptorVisibilities.PRIVATE,
|
||||
/* isVar = */ false,
|
||||
name,
|
||||
CallableMemberDescriptor.Kind.SYNTHESIZED,
|
||||
@@ -76,7 +76,7 @@ abstract class IrDelegateDescriptorBase(
|
||||
|
||||
override fun getCompileTimeInitializer(): ConstantValue<*>? = null
|
||||
|
||||
override fun getVisibility(): Visibility = Visibilities.PRIVATE
|
||||
override fun getVisibility(): DescriptorVisibility = DescriptorVisibilities.PRIVATE
|
||||
|
||||
override fun substitute(substitutor: TypeSubstitutor): PropertyDescriptor {
|
||||
throw UnsupportedOperationException("Property delegate descriptor shouldn't be substituted: $this")
|
||||
@@ -134,7 +134,7 @@ class IrLocalDelegatedPropertyDelegateDescriptorImpl(
|
||||
override fun isVar(): Boolean = false
|
||||
override fun isLateInit(): Boolean = false
|
||||
override fun substitute(substitutor: TypeSubstitutor): VariableDescriptor? = throw UnsupportedOperationException()
|
||||
override fun getVisibility(): Visibility = Visibilities.LOCAL
|
||||
override fun getVisibility(): DescriptorVisibility = DescriptorVisibilities.LOCAL
|
||||
|
||||
override fun <R : Any?, D : Any?> accept(visitor: DeclarationDescriptorVisitor<R, D>, data: D): R =
|
||||
visitor.visitVariableDescriptor(this, data)
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user