@@ -36,7 +36,7 @@ inline fun <reified T : IrElement> T.deepCopyWithSymbols(): T {
36
36
}
37
37
38
38
39
- class DeepCopyIrTreeWithSymbols (private val symbolsRemapper : DeepCopySymbolsRemapper ) : IrElementTransformerVoid() {
39
+ class DeepCopyIrTreeWithSymbols (private val symbolRemapper : SymbolRemapper ) : IrElementTransformerVoid() {
40
40
private fun mapDeclarationOrigin (origin : IrDeclarationOrigin ) = origin
41
41
private fun mapStatementOrigin (origin : IrStatementOrigin ? ) = origin
42
42
@@ -64,15 +64,15 @@ class DeepCopyIrTreeWithSymbols(private val symbolsRemapper: DeepCopySymbolsRema
64
64
65
65
override fun visitExternalPackageFragment (declaration : IrExternalPackageFragment , data : Nothing? ): IrExternalPackageFragment =
66
66
IrExternalPackageFragmentImpl (
67
- symbolsRemapper .getDeclaredExternalPackageFragment(declaration.symbol)
67
+ symbolRemapper .getDeclaredExternalPackageFragment(declaration.symbol)
68
68
).apply {
69
69
declaration.transformDeclarationsTo(this )
70
70
}
71
71
72
72
override fun visitFile (declaration : IrFile ): IrFile =
73
73
IrFileImpl (
74
74
declaration.fileEntry,
75
- symbolsRemapper .getDeclaredFile(declaration.symbol)
75
+ symbolRemapper .getDeclaredFile(declaration.symbol)
76
76
).apply {
77
77
fileAnnotations.addAll(declaration.fileAnnotations)
78
78
declaration.transformDeclarationsTo(this )
@@ -85,7 +85,7 @@ class DeepCopyIrTreeWithSymbols(private val symbolsRemapper: DeepCopySymbolsRema
85
85
IrClassImpl (
86
86
declaration.startOffset, declaration.endOffset,
87
87
mapDeclarationOrigin(declaration.origin),
88
- symbolsRemapper .getDeclaredClass(declaration.symbol)
88
+ symbolRemapper .getDeclaredClass(declaration.symbol)
89
89
).apply {
90
90
thisReceiver = declaration.thisReceiver?.transform()
91
91
declaration.typeParameters.transformTo(typeParameters)
@@ -103,7 +103,7 @@ class DeepCopyIrTreeWithSymbols(private val symbolsRemapper: DeepCopySymbolsRema
103
103
IrFunctionImpl (
104
104
declaration.startOffset, declaration.endOffset,
105
105
mapDeclarationOrigin(declaration.origin),
106
- symbolsRemapper .getDeclaredFunction(declaration.symbol)
106
+ symbolRemapper .getDeclaredFunction(declaration.symbol)
107
107
).apply {
108
108
transformFunctionChildren(declaration)
109
109
}
@@ -112,7 +112,7 @@ class DeepCopyIrTreeWithSymbols(private val symbolsRemapper: DeepCopySymbolsRema
112
112
IrConstructorImpl (
113
113
declaration.startOffset, declaration.endOffset,
114
114
mapDeclarationOrigin(declaration.origin),
115
- symbolsRemapper .getDeclaredConstructor(declaration.symbol)
115
+ symbolRemapper .getDeclaredConstructor(declaration.symbol)
116
116
).apply {
117
117
transformFunctionChildren(declaration)
118
118
}
@@ -141,7 +141,7 @@ class DeepCopyIrTreeWithSymbols(private val symbolsRemapper: DeepCopySymbolsRema
141
141
IrFieldImpl (
142
142
declaration.startOffset, declaration.endOffset,
143
143
mapDeclarationOrigin(declaration.origin),
144
- symbolsRemapper .getDeclaredField(declaration.symbol)
144
+ symbolRemapper .getDeclaredField(declaration.symbol)
145
145
).apply {
146
146
initializer = declaration.initializer?.transform()
147
147
}
@@ -160,7 +160,7 @@ class DeepCopyIrTreeWithSymbols(private val symbolsRemapper: DeepCopySymbolsRema
160
160
IrEnumEntryImpl (
161
161
declaration.startOffset, declaration.endOffset,
162
162
mapDeclarationOrigin(declaration.origin),
163
- symbolsRemapper .getDeclaredEnumEntry(declaration.symbol)
163
+ symbolRemapper .getDeclaredEnumEntry(declaration.symbol)
164
164
).apply {
165
165
correspondingClass = declaration.correspondingClass?.transform()
166
166
initializerExpression = declaration.initializerExpression?.transform()
@@ -179,7 +179,7 @@ class DeepCopyIrTreeWithSymbols(private val symbolsRemapper: DeepCopySymbolsRema
179
179
IrVariableImpl (
180
180
declaration.startOffset, declaration.endOffset,
181
181
mapDeclarationOrigin(declaration.origin),
182
- symbolsRemapper .getDeclaredVariable(declaration.symbol)
182
+ symbolRemapper .getDeclaredVariable(declaration.symbol)
183
183
).apply {
184
184
initializer = declaration.initializer?.transform()
185
185
}
@@ -188,14 +188,14 @@ class DeepCopyIrTreeWithSymbols(private val symbolsRemapper: DeepCopySymbolsRema
188
188
IrTypeParameterImpl (
189
189
declaration.startOffset, declaration.endOffset,
190
190
mapDeclarationOrigin(declaration.origin),
191
- symbolsRemapper .getDeclaredTypeParameter(declaration.symbol)
191
+ symbolRemapper .getDeclaredTypeParameter(declaration.symbol)
192
192
)
193
193
194
194
override fun visitValueParameter (declaration : IrValueParameter ): IrValueParameter =
195
195
IrValueParameterImpl (
196
196
declaration.startOffset, declaration.endOffset,
197
197
mapDeclarationOrigin(declaration.origin),
198
- symbolsRemapper .getDeclaredValueParameter(declaration.symbol)
198
+ symbolRemapper .getDeclaredValueParameter(declaration.symbol)
199
199
).apply {
200
200
defaultValue = declaration.defaultValue?.transform()
201
201
}
@@ -261,48 +261,48 @@ class DeepCopyIrTreeWithSymbols(private val symbolsRemapper: DeepCopySymbolsRema
261
261
IrGetObjectValueImpl (
262
262
expression.startOffset, expression.endOffset,
263
263
expression.type,
264
- symbolsRemapper .getReferencedClass(expression.symbol)
264
+ symbolRemapper .getReferencedClass(expression.symbol)
265
265
)
266
266
267
267
override fun visitGetEnumValue (expression : IrGetEnumValue ): IrGetEnumValue =
268
268
IrGetEnumValueImpl (
269
269
expression.startOffset, expression.endOffset,
270
270
expression.type,
271
- symbolsRemapper .getReferencedEnumEntry(expression.symbol)
271
+ symbolRemapper .getReferencedEnumEntry(expression.symbol)
272
272
)
273
273
274
274
override fun visitGetValue (expression : IrGetValue ): IrGetValue =
275
275
IrGetValueImpl (
276
276
expression.startOffset, expression.endOffset,
277
- symbolsRemapper .getReferencedValue(expression.symbol),
277
+ symbolRemapper .getReferencedValue(expression.symbol),
278
278
mapStatementOrigin(expression.origin)
279
279
)
280
280
281
281
override fun visitSetVariable (expression : IrSetVariable ): IrSetVariable =
282
282
IrSetVariableImpl (
283
283
expression.startOffset, expression.endOffset,
284
- symbolsRemapper .getReferencedVariable(expression.symbol),
284
+ symbolRemapper .getReferencedVariable(expression.symbol),
285
285
expression.value.transform(),
286
286
mapStatementOrigin(expression.origin)
287
287
)
288
288
289
289
override fun visitGetField (expression : IrGetField ): IrGetField =
290
290
IrGetFieldImpl (
291
291
expression.startOffset, expression.endOffset,
292
- symbolsRemapper .getReferencedField(expression.symbol),
292
+ symbolRemapper .getReferencedField(expression.symbol),
293
293
expression.receiver?.transform(),
294
294
mapStatementOrigin(expression.origin),
295
- symbolsRemapper .getReferencedClassOrNull(expression.superQualifierSymbol)
295
+ symbolRemapper .getReferencedClassOrNull(expression.superQualifierSymbol)
296
296
)
297
297
298
298
override fun visitSetField (expression : IrSetField ): IrSetField =
299
299
IrSetFieldImpl (
300
300
expression.startOffset, expression.endOffset,
301
- symbolsRemapper .getReferencedField(expression.symbol),
301
+ symbolRemapper .getReferencedField(expression.symbol),
302
302
expression.receiver?.transform(),
303
303
expression.value.transform(),
304
304
mapStatementOrigin(expression.origin),
305
- symbolsRemapper .getReferencedClassOrNull(expression.superQualifierSymbol)
305
+ symbolRemapper .getReferencedClassOrNull(expression.superQualifierSymbol)
306
306
)
307
307
308
308
override fun visitCall (expression : IrCall ): IrCall =
@@ -313,18 +313,18 @@ class DeepCopyIrTreeWithSymbols(private val symbolsRemapper: DeepCopySymbolsRema
313
313
is IrCallWithShallowCopy ->
314
314
expression.shallowCopy(
315
315
mapStatementOrigin(expression.origin),
316
- symbolsRemapper .getReferencedFunction(expression.symbol),
317
- symbolsRemapper .getReferencedClassOrNull(expression.superQualifierSymbol)
316
+ symbolRemapper .getReferencedFunction(expression.symbol),
317
+ symbolRemapper .getReferencedClassOrNull(expression.superQualifierSymbol)
318
318
)
319
319
else ->
320
320
IrCallImpl (
321
321
expression.startOffset, expression.endOffset,
322
322
expression.type,
323
- symbolsRemapper .getReferencedFunction(expression.symbol),
323
+ symbolRemapper .getReferencedFunction(expression.symbol),
324
324
expression.descriptor, // TODO substitute referenced descriptor
325
325
expression.getTypeArgumentsMap(),
326
326
mapStatementOrigin(expression.origin),
327
- symbolsRemapper .getReferencedClassOrNull(expression.superQualifierSymbol)
327
+ symbolRemapper .getReferencedClassOrNull(expression.superQualifierSymbol)
328
328
)
329
329
}
330
330
@@ -355,15 +355,15 @@ class DeepCopyIrTreeWithSymbols(private val symbolsRemapper: DeepCopySymbolsRema
355
355
override fun visitDelegatingConstructorCall (expression : IrDelegatingConstructorCall ): IrDelegatingConstructorCall =
356
356
IrDelegatingConstructorCallImpl (
357
357
expression.startOffset, expression.endOffset,
358
- symbolsRemapper .getReferencedConstructor(expression.symbol),
358
+ symbolRemapper .getReferencedConstructor(expression.symbol),
359
359
expression.descriptor,
360
360
expression.getTypeArgumentsMap()
361
361
).transformValueArguments(expression)
362
362
363
363
override fun visitEnumConstructorCall (expression : IrEnumConstructorCall ): IrEnumConstructorCall =
364
364
IrEnumConstructorCallImpl (
365
365
expression.startOffset, expression.endOffset,
366
- symbolsRemapper .getReferencedConstructor(expression.symbol)
366
+ symbolRemapper .getReferencedConstructor(expression.symbol)
367
367
).transformValueArguments(expression)
368
368
369
369
override fun visitGetClass (expression : IrGetClass ): IrGetClass =
@@ -377,7 +377,7 @@ class DeepCopyIrTreeWithSymbols(private val symbolsRemapper: DeepCopySymbolsRema
377
377
IrFunctionReferenceImpl (
378
378
expression.startOffset, expression.endOffset,
379
379
expression.type,
380
- symbolsRemapper .getReferencedFunction(expression.symbol),
380
+ symbolRemapper .getReferencedFunction(expression.symbol),
381
381
expression.descriptor, // TODO substitute referenced descriptor
382
382
expression.getTypeArgumentsMap(),
383
383
mapStatementOrigin(expression.origin)
@@ -388,9 +388,9 @@ class DeepCopyIrTreeWithSymbols(private val symbolsRemapper: DeepCopySymbolsRema
388
388
expression.startOffset, expression.endOffset,
389
389
expression.type,
390
390
expression.descriptor,
391
- expression.field?.let { symbolsRemapper .getReferencedField(it) },
392
- expression.getter?.let { symbolsRemapper .getReferencedFunction(it) },
393
- expression.setter?.let { symbolsRemapper .getReferencedFunction(it) },
391
+ expression.field?.let { symbolRemapper .getReferencedField(it) },
392
+ expression.getter?.let { symbolRemapper .getReferencedFunction(it) },
393
+ expression.setter?.let { symbolRemapper .getReferencedFunction(it) },
394
394
expression.getTypeArgumentsMap(),
395
395
mapStatementOrigin(expression.origin)
396
396
).transformReceiverArguments(expression)
@@ -400,23 +400,23 @@ class DeepCopyIrTreeWithSymbols(private val symbolsRemapper: DeepCopySymbolsRema
400
400
expression.startOffset, expression.endOffset,
401
401
expression.type,
402
402
expression.descriptor,
403
- symbolsRemapper .getReferencedVariable(expression.delegate),
404
- symbolsRemapper .getReferencedFunction(expression.getter),
405
- expression.setter?.let { symbolsRemapper .getReferencedFunction(it) },
403
+ symbolRemapper .getReferencedVariable(expression.delegate),
404
+ symbolRemapper .getReferencedFunction(expression.getter),
405
+ expression.setter?.let { symbolRemapper .getReferencedFunction(it) },
406
406
mapStatementOrigin(expression.origin)
407
407
)
408
408
409
409
override fun visitClassReference (expression : IrClassReference ): IrClassReference =
410
410
IrClassReferenceImpl (
411
411
expression.startOffset, expression.endOffset,
412
412
expression.type,
413
- symbolsRemapper .getReferencedClassifier(expression.symbol)
413
+ symbolRemapper .getReferencedClassifier(expression.symbol)
414
414
)
415
415
416
416
override fun visitInstanceInitializerCall (expression : IrInstanceInitializerCall ): IrInstanceInitializerCall =
417
417
IrInstanceInitializerCallImpl (
418
418
expression.startOffset, expression.endOffset,
419
- symbolsRemapper .getReferencedClass(expression.classSymbol)
419
+ symbolRemapper .getReferencedClass(expression.classSymbol)
420
420
)
421
421
422
422
override fun visitTypeOperator (expression : IrTypeOperatorCall ): IrTypeOperatorCall =
@@ -508,7 +508,7 @@ class DeepCopyIrTreeWithSymbols(private val symbolsRemapper: DeepCopySymbolsRema
508
508
IrReturnImpl (
509
509
expression.startOffset, expression.endOffset,
510
510
expression.type,
511
- symbolsRemapper .getReferencedFunction(expression.returnTargetSymbol),
511
+ symbolRemapper .getReferencedFunction(expression.returnTargetSymbol),
512
512
expression.value.transform()
513
513
)
514
514
0 commit comments