Visit declaration reference when visiting member access
This commit is contained in:
@@ -102,7 +102,9 @@ interface IrElementTransformer<in D> : IrElementVisitor<IrElement, D> {
|
||||
override fun visitFieldAccess(expression: IrFieldAccessExpression, data: D) = visitDeclarationReference(expression, data)
|
||||
override fun visitGetField(expression: IrGetField, data: D) = visitFieldAccess(expression, data)
|
||||
override fun visitSetField(expression: IrSetField, data: D) = visitFieldAccess(expression, data)
|
||||
override fun visitMemberAccess(expression: IrMemberAccessExpression<*>, data: D): IrElement = visitExpression(expression, data)
|
||||
override fun visitMemberAccess(expression: IrMemberAccessExpression<*>, data: D): IrElement =
|
||||
visitDeclarationReference(expression, data)
|
||||
|
||||
override fun visitFunctionAccess(expression: IrFunctionAccessExpression, data: D): IrElement = visitMemberAccess(expression, data)
|
||||
override fun visitCall(expression: IrCall, data: D) = visitFunctionAccess(expression, data)
|
||||
override fun visitConstructorCall(expression: IrConstructorCall, data: D): IrElement = visitFunctionAccess(expression, data)
|
||||
|
||||
+1
-1
@@ -189,7 +189,7 @@ abstract class IrElementTransformerVoid : IrElementTransformer<Nothing?> {
|
||||
open fun visitSetField(expression: IrSetField) = visitFieldAccess(expression)
|
||||
final override fun visitSetField(expression: IrSetField, data: Nothing?) = visitSetField(expression)
|
||||
|
||||
open fun visitMemberAccess(expression: IrMemberAccessExpression<*>) = visitExpression(expression)
|
||||
open fun visitMemberAccess(expression: IrMemberAccessExpression<*>) = visitDeclarationReference(expression)
|
||||
final override fun visitMemberAccess(expression: IrMemberAccessExpression<*>, data: Nothing?) = visitMemberAccess(expression)
|
||||
|
||||
open fun visitFunctionAccess(expression: IrFunctionAccessExpression) = visitMemberAccess(expression)
|
||||
|
||||
@@ -72,7 +72,7 @@ interface IrElementVisitor<out R, in D> {
|
||||
fun visitGetField(expression: IrGetField, data: D) = visitFieldAccess(expression, data)
|
||||
fun visitSetField(expression: IrSetField, data: D) = visitFieldAccess(expression, data)
|
||||
|
||||
fun visitMemberAccess(expression: IrMemberAccessExpression<*>, data: D) = visitExpression(expression, data)
|
||||
fun visitMemberAccess(expression: IrMemberAccessExpression<*>, data: D) = visitDeclarationReference(expression, data)
|
||||
fun visitFunctionAccess(expression: IrFunctionAccessExpression, data: D) = visitMemberAccess(expression, data)
|
||||
fun visitCall(expression: IrCall, data: D) = visitFunctionAccess(expression, data)
|
||||
fun visitConstructorCall(expression: IrConstructorCall, data: D) = visitFunctionAccess(expression, data)
|
||||
|
||||
@@ -155,7 +155,7 @@ interface IrElementVisitorVoid : IrElementVisitor<Unit, Nothing?> {
|
||||
fun visitSetField(expression: IrSetField) = visitFieldAccess(expression)
|
||||
override fun visitSetField(expression: IrSetField, data: Nothing?) = visitSetField(expression)
|
||||
|
||||
fun visitMemberAccess(expression: IrMemberAccessExpression<*>) = visitExpression(expression)
|
||||
fun visitMemberAccess(expression: IrMemberAccessExpression<*>) = visitDeclarationReference(expression)
|
||||
override fun visitMemberAccess(expression: IrMemberAccessExpression<*>, data: Nothing?) = visitMemberAccess(expression)
|
||||
|
||||
fun visitFunctionAccess(expression: IrFunctionAccessExpression) = visitMemberAccess(expression)
|
||||
|
||||
Reference in New Issue
Block a user