Skip to content

Commit 9668d75

Browse files
francescoo22Space Cloud
authored and
Space Cloud
committed
[IR] Make startOffset and endOffset mutable
^KT-75196
1 parent 4e2914a commit 9668d75

File tree

87 files changed

+204
-208
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

87 files changed

+204
-208
lines changed

compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/lazy/AbstractFir2IrLazyFunction.kt

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -22,26 +22,18 @@ import org.jetbrains.kotlin.ir.expressions.IrConstructorCall
2222
import org.jetbrains.kotlin.ir.symbols.IrPropertySymbol
2323
import org.jetbrains.kotlin.ir.symbols.IrSimpleFunctionSymbol
2424
import org.jetbrains.kotlin.ir.util.isFacadeClass
25-
import org.jetbrains.kotlin.ir.util.isObject
26-
import org.jetbrains.kotlin.utils.addToStdlib.shouldNotBeCalled
2725
import kotlin.properties.ReadWriteProperty
2826

2927
abstract class AbstractFir2IrLazyFunction<F : FirCallableDeclaration>(
3028
protected val c: Fir2IrComponents,
31-
startOffset: Int,
32-
endOffset: Int,
29+
override var startOffset: Int,
30+
override var endOffset: Int,
3331
override var origin: IrDeclarationOrigin,
3432
override val symbol: IrSimpleFunctionSymbol,
3533
parent: IrDeclarationParent,
3634
override var isFakeOverride: Boolean,
3735
) : AbstractIrLazyFunction(), AbstractFir2IrLazyDeclaration<F>, Fir2IrTypeParametersContainer, IrLazyFunctionBase,
3836
Fir2IrComponents by c {
39-
40-
final override var startOffset: Int = startOffset
41-
set(_) = shouldNotBeCalled()
42-
final override var endOffset: Int = endOffset
43-
set(_) = shouldNotBeCalled()
44-
4537
init {
4638
this.parent = parent
4739
}

compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/lazy/Fir2IrLazyClass.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,8 @@ import org.jetbrains.kotlin.name.Name
4141

4242
class Fir2IrLazyClass(
4343
private val c: Fir2IrComponents,
44-
override val startOffset: Int,
45-
override val endOffset: Int,
44+
override var startOffset: Int,
45+
override var endOffset: Int,
4646
override var origin: IrDeclarationOrigin,
4747
override val fir: FirRegularClass,
4848
override val symbol: IrClassSymbol,

compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/lazy/Fir2IrLazyConstructor.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,8 @@ import org.jetbrains.kotlin.serialization.deserialization.descriptors.Deserializ
2828

2929
class Fir2IrLazyConstructor(
3030
private val c: Fir2IrComponents,
31-
override val startOffset: Int,
32-
override val endOffset: Int,
31+
override var startOffset: Int,
32+
override var endOffset: Int,
3333
override var origin: IrDeclarationOrigin,
3434
override val fir: FirConstructor,
3535
override val symbol: IrConstructorSymbol,

compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/lazy/Fir2IrLazyField.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,8 @@ import org.jetbrains.kotlin.name.Name
3838

3939
class Fir2IrLazyField(
4040
private val c: Fir2IrComponents,
41-
override val startOffset: Int,
42-
override val endOffset: Int,
41+
override var startOffset: Int,
42+
override var endOffset: Int,
4343
override var origin: IrDeclarationOrigin,
4444
override val fir: FirField,
4545
val containingClass: FirRegularClass?,

compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/lazy/Fir2IrLazyProperty.kt

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -39,12 +39,11 @@ import org.jetbrains.kotlin.ir.util.isFacadeClass
3939
import org.jetbrains.kotlin.name.Name
4040
import org.jetbrains.kotlin.name.NameUtils
4141
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedContainerSource
42-
import org.jetbrains.kotlin.utils.addToStdlib.shouldNotBeCalled
4342

4443
class Fir2IrLazyProperty(
4544
private val c: Fir2IrComponents,
46-
startOffset: Int,
47-
endOffset: Int,
45+
override var startOffset: Int,
46+
override var endOffset: Int,
4847
override var origin: IrDeclarationOrigin,
4948
override val fir: FirProperty,
5049
val containingClass: FirRegularClass?,
@@ -54,11 +53,6 @@ class Fir2IrLazyProperty(
5453
) : IrProperty(), AbstractFir2IrLazyDeclaration<FirProperty>, Fir2IrComponents by c {
5554
override val symbol: IrPropertySymbol = symbols.propertySymbol
5655

57-
override var startOffset: Int = startOffset
58-
set(_) = shouldNotBeCalled()
59-
override var endOffset: Int = endOffset
60-
set(_) = shouldNotBeCalled()
61-
6256
init {
6357
this.parent = parent
6458
symbol.bind(this)

compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/lazy/Fir2IrLazyTypeAlias.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ import org.jetbrains.kotlin.name.Name
2727

2828
class Fir2IrLazyTypeAlias(
2929
c: Fir2IrComponents,
30-
override val startOffset: Int,
31-
override val endOffset: Int,
30+
override var startOffset: Int,
31+
override var endOffset: Int,
3232
override var origin: IrDeclarationOrigin,
3333
override val fir: FirTypeAlias,
3434
override val symbol: IrTypeAliasSymbol,

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/IrElement.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ interface IrElement {
2525
*
2626
* @see IrFileEntry.getSourceRangeInfo
2727
*/
28-
val startOffset: Int
28+
var startOffset: Int
2929

3030
/**
3131
* The end offset of the syntax node from which this IR node was generated,
@@ -35,7 +35,7 @@ interface IrElement {
3535
*
3636
* @see IrFileEntry.getSourceRangeInfo
3737
*/
38-
val endOffset: Int
38+
var endOffset: Int
3939

4040
/**
4141
* Original element before copying. Always satisfies the following

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/declarations/IrOverridableDeclaration.kt

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,6 @@ import org.jetbrains.kotlin.ir.symbols.IrSymbol
1414
* Generated from: [org.jetbrains.kotlin.ir.generator.IrTree.overridableDeclaration]
1515
*/
1616
sealed interface IrOverridableDeclaration<S : IrSymbol> : IrOverridableMember {
17-
override var startOffset: Int
18-
19-
override var endOffset: Int
20-
2117
override val symbol: S
2218

2319
var isFakeOverride: Boolean

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/declarations/impl/IrAnonymousInitializerImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@ import org.jetbrains.kotlin.ir.expressions.IrConstructorCall
2222
import org.jetbrains.kotlin.ir.symbols.IrAnonymousInitializerSymbol
2323

2424
class IrAnonymousInitializerImpl @IrImplementationDetail constructor(
25-
override val startOffset: Int,
26-
override val endOffset: Int,
25+
override var startOffset: Int,
26+
override var endOffset: Int,
2727
override var origin: IrDeclarationOrigin,
2828
override val factory: IrFactory,
2929
override val symbol: IrAnonymousInitializerSymbol,

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/declarations/impl/IrClassImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,8 @@ import org.jetbrains.kotlin.ir.types.IrType
2323
import org.jetbrains.kotlin.name.Name
2424

2525
class IrClassImpl @IrImplementationDetail constructor(
26-
override val startOffset: Int,
27-
override val endOffset: Int,
26+
override var startOffset: Int,
27+
override var endOffset: Int,
2828
override var origin: IrDeclarationOrigin,
2929
override val factory: IrFactory,
3030
override var name: Name,

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/declarations/impl/IrConstructorImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ import org.jetbrains.kotlin.name.Name
2424
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedContainerSource
2525

2626
class IrConstructorImpl @IrImplementationDetail constructor(
27-
override val startOffset: Int,
28-
override val endOffset: Int,
27+
override var startOffset: Int,
28+
override var endOffset: Int,
2929
override var origin: IrDeclarationOrigin,
3030
override val factory: IrFactory,
3131
override var name: Name,

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/declarations/impl/IrEnumEntryImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ import org.jetbrains.kotlin.ir.symbols.IrEnumEntrySymbol
2424
import org.jetbrains.kotlin.name.Name
2525

2626
class IrEnumEntryImpl @IrImplementationDetail constructor(
27-
override val startOffset: Int,
28-
override val endOffset: Int,
27+
override var startOffset: Int,
28+
override var endOffset: Int,
2929
override var origin: IrDeclarationOrigin,
3030
override val factory: IrFactory,
3131
override var name: Name,

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/declarations/impl/IrExternalPackageFragmentImpl.kt

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,17 @@ class IrExternalPackageFragmentImpl(
2323
override val symbol: IrExternalPackageFragmentSymbol,
2424
override var packageFqName: FqName,
2525
) : IrExternalPackageFragment() {
26-
override val startOffset: Int
26+
override var startOffset: Int
2727
get() = UNDEFINED_OFFSET
28+
set(value) {
29+
error("Mutation of startOffset is not supported for this class.")
30+
}
2831

29-
override val endOffset: Int
32+
override var endOffset: Int
3033
get() = UNDEFINED_OFFSET
34+
set(value) {
35+
error("Mutation of endOffset is not supported for this class.")
36+
}
3137

3238
override var attributeOwnerId: IrElement = this
3339

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/declarations/impl/IrFieldImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ import org.jetbrains.kotlin.ir.types.IrType
2727
import org.jetbrains.kotlin.name.Name
2828

2929
class IrFieldImpl @IrImplementationDetail constructor(
30-
override val startOffset: Int,
31-
override val endOffset: Int,
30+
override var startOffset: Int,
31+
override var endOffset: Int,
3232
override var origin: IrDeclarationOrigin,
3333
override val factory: IrFactory,
3434
override var name: Name,

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/declarations/impl/IrFileImpl.kt

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,11 +26,17 @@ class IrFileImpl(
2626
override val symbol: IrFileSymbol,
2727
override var packageFqName: FqName,
2828
) : IrFile() {
29-
override val startOffset: Int
29+
override var startOffset: Int
3030
get() = 0
31+
set(value) {
32+
error("Mutation of startOffset is not supported for this class.")
33+
}
3134

32-
override val endOffset: Int
35+
override var endOffset: Int
3336
get() = fileEntry.maxOffset
37+
set(value) {
38+
error("Mutation of endOffset is not supported for this class.")
39+
}
3440

3541
override var attributeOwnerId: IrElement = this
3642

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/declarations/impl/IrLocalDelegatedPropertyImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ import org.jetbrains.kotlin.ir.types.IrType
2121
import org.jetbrains.kotlin.name.Name
2222

2323
class IrLocalDelegatedPropertyImpl @IrImplementationDetail constructor(
24-
override val startOffset: Int,
25-
override val endOffset: Int,
24+
override var startOffset: Int,
25+
override var endOffset: Int,
2626
override var origin: IrDeclarationOrigin,
2727
override val factory: IrFactory,
2828
override var name: Name,

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/declarations/impl/IrModuleFragmentImpl.kt

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,17 @@ import org.jetbrains.kotlin.name.Name
2020
class IrModuleFragmentImpl(
2121
override val descriptor: ModuleDescriptor,
2222
) : IrModuleFragment() {
23-
override val startOffset: Int
23+
override var startOffset: Int
2424
get() = UNDEFINED_OFFSET
25+
set(value) {
26+
error("Mutation of startOffset is not supported for this class.")
27+
}
2528

26-
override val endOffset: Int
29+
override var endOffset: Int
2730
get() = UNDEFINED_OFFSET
31+
set(value) {
32+
error("Mutation of endOffset is not supported for this class.")
33+
}
2834

2935
override var attributeOwnerId: IrElement = this
3036

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/declarations/impl/IrReplSnippetImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@ import org.jetbrains.kotlin.ir.types.IrType
2222
import org.jetbrains.kotlin.name.Name
2323

2424
class IrReplSnippetImpl(
25-
override val startOffset: Int,
26-
override val endOffset: Int,
25+
override var startOffset: Int,
26+
override var endOffset: Int,
2727
override val factory: IrFactory,
2828
override var name: Name,
2929
override val symbol: IrReplSnippetSymbol,

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/declarations/impl/IrScriptImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ class IrScriptImpl(
2626
override val symbol: IrScriptSymbol,
2727
override var name: Name,
2828
override val factory: IrFactory,
29-
override val startOffset: Int,
30-
override val endOffset: Int,
29+
override var startOffset: Int,
30+
override var endOffset: Int,
3131
) : IrScript() {
3232
override var attributeOwnerId: IrElement = this
3333

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/declarations/impl/IrTypeAliasImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@ import org.jetbrains.kotlin.ir.types.IrType
2222
import org.jetbrains.kotlin.name.Name
2323

2424
class IrTypeAliasImpl @IrImplementationDetail constructor(
25-
override val startOffset: Int,
26-
override val endOffset: Int,
25+
override var startOffset: Int,
26+
override var endOffset: Int,
2727
override var origin: IrDeclarationOrigin,
2828
override val factory: IrFactory,
2929
override var name: Name,

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/declarations/impl/IrTypeParameterImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ import org.jetbrains.kotlin.name.Name
2424
import org.jetbrains.kotlin.types.Variance
2525

2626
class IrTypeParameterImpl @IrImplementationDetail constructor(
27-
override val startOffset: Int,
28-
override val endOffset: Int,
27+
override var startOffset: Int,
28+
override var endOffset: Int,
2929
override var origin: IrDeclarationOrigin,
3030
override val factory: IrFactory,
3131
override var name: Name,

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/declarations/impl/IrValueParameterImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ import org.jetbrains.kotlin.ir.types.IrType
2424
import org.jetbrains.kotlin.name.Name
2525

2626
class IrValueParameterImpl @IrImplementationDetail constructor(
27-
override val startOffset: Int,
28-
override val endOffset: Int,
27+
override var startOffset: Int,
28+
override var endOffset: Int,
2929
override var origin: IrDeclarationOrigin,
3030
override val factory: IrFactory,
3131
override var name: Name,

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/declarations/impl/IrVariableImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@ import org.jetbrains.kotlin.name.Name
2525

2626
class IrVariableImpl internal constructor(
2727
@Suppress("UNUSED_PARAMETER") constructorIndicator: IrElementConstructorIndicator?,
28-
override val startOffset: Int,
29-
override val endOffset: Int,
28+
override var startOffset: Int,
29+
override var endOffset: Int,
3030
override var origin: IrDeclarationOrigin,
3131
override var name: Name,
3232
override var type: IrType,

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/expressions/impl/IrBlockBodyImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ import org.jetbrains.kotlin.ir.util.IrElementConstructorIndicator
1717

1818
class IrBlockBodyImpl internal constructor(
1919
@Suppress("UNUSED_PARAMETER") constructorIndicator: IrElementConstructorIndicator?,
20-
override val startOffset: Int,
21-
override val endOffset: Int,
20+
override var startOffset: Int,
21+
override var endOffset: Int,
2222
) : IrBlockBody() {
2323
override var attributeOwnerId: IrElement = this
2424

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/expressions/impl/IrBlockImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ import org.jetbrains.kotlin.ir.util.IrElementConstructorIndicator
1919

2020
class IrBlockImpl internal constructor(
2121
@Suppress("UNUSED_PARAMETER") constructorIndicator: IrElementConstructorIndicator?,
22-
override val startOffset: Int,
23-
override val endOffset: Int,
22+
override var startOffset: Int,
23+
override var endOffset: Int,
2424
override var type: IrType,
2525
override var origin: IrStatementOrigin?,
2626
) : IrBlock() {

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/expressions/impl/IrBranchImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ import org.jetbrains.kotlin.ir.util.IrElementConstructorIndicator
1717

1818
class IrBranchImpl internal constructor(
1919
@Suppress("UNUSED_PARAMETER") constructorIndicator: IrElementConstructorIndicator?,
20-
override val startOffset: Int,
21-
override val endOffset: Int,
20+
override var startOffset: Int,
21+
override var endOffset: Int,
2222
override var condition: IrExpression,
2323
override var result: IrExpression,
2424
) : IrBranch() {

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/expressions/impl/IrBreakImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ import org.jetbrains.kotlin.ir.util.IrElementConstructorIndicator
1818

1919
class IrBreakImpl internal constructor(
2020
@Suppress("UNUSED_PARAMETER") constructorIndicator: IrElementConstructorIndicator?,
21-
override val startOffset: Int,
22-
override val endOffset: Int,
21+
override var startOffset: Int,
22+
override var endOffset: Int,
2323
override var type: IrType,
2424
override var loop: IrLoop,
2525
) : IrBreak() {

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/expressions/impl/IrCallImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ import org.jetbrains.kotlin.ir.util.IrElementConstructorIndicator
2020

2121
class IrCallImpl internal constructor(
2222
@Suppress("UNUSED_PARAMETER") constructorIndicator: IrElementConstructorIndicator?,
23-
override val startOffset: Int,
24-
override val endOffset: Int,
23+
override var startOffset: Int,
24+
override var endOffset: Int,
2525
override var type: IrType,
2626
override var origin: IrStatementOrigin?,
2727
symbol: IrSimpleFunctionSymbol,

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/expressions/impl/IrCatchImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ import org.jetbrains.kotlin.ir.util.IrElementConstructorIndicator
1919

2020
class IrCatchImpl internal constructor(
2121
@Suppress("UNUSED_PARAMETER") constructorIndicator: IrElementConstructorIndicator?,
22-
override val startOffset: Int,
23-
override val endOffset: Int,
22+
override var startOffset: Int,
23+
override var endOffset: Int,
2424
override var catchParameter: IrVariable,
2525
override var origin: IrStatementOrigin?,
2626
) : IrCatch() {

compiler/ir/ir.tree/gen/org/jetbrains/kotlin/ir/expressions/impl/IrClassReferenceImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ import org.jetbrains.kotlin.ir.util.IrElementConstructorIndicator
1818

1919
class IrClassReferenceImpl internal constructor(
2020
@Suppress("UNUSED_PARAMETER") constructorIndicator: IrElementConstructorIndicator?,
21-
override val startOffset: Int,
22-
override val endOffset: Int,
21+
override var startOffset: Int,
22+
override var endOffset: Int,
2323
override var type: IrType,
2424
override var symbol: IrClassifierSymbol,
2525
override var classType: IrType,

0 commit comments

Comments
 (0)