[FIR/IR generator] Print visitor method expression bodies on new line

This helps to avoid long lines in visitor classes.
This commit is contained in:
Sergej Jaskiewicz
2023-10-26 13:23:24 +02:00
committed by Space Team
parent c5f519f7c7
commit 570422dbd4
4 changed files with 648 additions and 323 deletions
@@ -20,173 +20,258 @@ import org.jetbrains.kotlin.fir.types.*
abstract class FirDefaultVisitor<out R, in D> : FirVisitor<R, D>() {
override fun visitTypeRef(typeRef: FirTypeRef, data: D): R = visitAnnotationContainer(typeRef, data)
override fun visitTypeRef(typeRef: FirTypeRef, data: D): R =
visitAnnotationContainer(typeRef, data)
override fun visitResolvedDeclarationStatus(resolvedDeclarationStatus: FirResolvedDeclarationStatus, data: D): R = visitDeclarationStatus(resolvedDeclarationStatus, data)
override fun visitResolvedDeclarationStatus(resolvedDeclarationStatus: FirResolvedDeclarationStatus, data: D): R =
visitDeclarationStatus(resolvedDeclarationStatus, data)
override fun visitStatement(statement: FirStatement, data: D): R = visitAnnotationContainer(statement, data)
override fun visitStatement(statement: FirStatement, data: D): R =
visitAnnotationContainer(statement, data)
override fun visitExpression(expression: FirExpression, data: D): R = visitStatement(expression, data)
override fun visitExpression(expression: FirExpression, data: D): R =
visitStatement(expression, data)
override fun visitLazyExpression(lazyExpression: FirLazyExpression, data: D): R = visitExpression(lazyExpression, data)
override fun visitLazyExpression(lazyExpression: FirLazyExpression, data: D): R =
visitExpression(lazyExpression, data)
override fun visitTypeParametersOwner(typeParametersOwner: FirTypeParametersOwner, data: D): R = visitTypeParameterRefsOwner(typeParametersOwner, data)
override fun visitTypeParametersOwner(typeParametersOwner: FirTypeParametersOwner, data: D): R =
visitTypeParameterRefsOwner(typeParametersOwner, data)
override fun visitCallableDeclaration(callableDeclaration: FirCallableDeclaration, data: D): R = visitMemberDeclaration(callableDeclaration, data)
override fun visitCallableDeclaration(callableDeclaration: FirCallableDeclaration, data: D): R =
visitMemberDeclaration(callableDeclaration, data)
override fun visitConstructedClassTypeParameterRef(constructedClassTypeParameterRef: FirConstructedClassTypeParameterRef, data: D): R = visitTypeParameterRef(constructedClassTypeParameterRef, data)
override fun visitConstructedClassTypeParameterRef(constructedClassTypeParameterRef: FirConstructedClassTypeParameterRef, data: D): R =
visitTypeParameterRef(constructedClassTypeParameterRef, data)
override fun visitOuterClassTypeParameterRef(outerClassTypeParameterRef: FirOuterClassTypeParameterRef, data: D): R = visitTypeParameterRef(outerClassTypeParameterRef, data)
override fun visitOuterClassTypeParameterRef(outerClassTypeParameterRef: FirOuterClassTypeParameterRef, data: D): R =
visitTypeParameterRef(outerClassTypeParameterRef, data)
override fun visitReceiverParameter(receiverParameter: FirReceiverParameter, data: D): R = visitAnnotationContainer(receiverParameter, data)
override fun visitReceiverParameter(receiverParameter: FirReceiverParameter, data: D): R =
visitAnnotationContainer(receiverParameter, data)
override fun visitEnumEntry(enumEntry: FirEnumEntry, data: D): R = visitVariable(enumEntry, data)
override fun visitEnumEntry(enumEntry: FirEnumEntry, data: D): R =
visitVariable(enumEntry, data)
override fun visitRegularClass(regularClass: FirRegularClass, data: D): R = visitClass(regularClass, data)
override fun visitRegularClass(regularClass: FirRegularClass, data: D): R =
visitClass(regularClass, data)
override fun visitScript(script: FirScript, data: D): R = visitDeclaration(script, data)
override fun visitScript(script: FirScript, data: D): R =
visitDeclaration(script, data)
override fun visitCodeFragment(codeFragment: FirCodeFragment, data: D): R = visitDeclaration(codeFragment, data)
override fun visitCodeFragment(codeFragment: FirCodeFragment, data: D): R =
visitDeclaration(codeFragment, data)
override fun visitAnonymousFunctionExpression(anonymousFunctionExpression: FirAnonymousFunctionExpression, data: D): R = visitExpression(anonymousFunctionExpression, data)
override fun visitAnonymousFunctionExpression(anonymousFunctionExpression: FirAnonymousFunctionExpression, data: D): R =
visitExpression(anonymousFunctionExpression, data)
override fun visitAnonymousObject(anonymousObject: FirAnonymousObject, data: D): R = visitClass(anonymousObject, data)
override fun visitAnonymousObject(anonymousObject: FirAnonymousObject, data: D): R =
visitClass(anonymousObject, data)
override fun visitAnonymousObjectExpression(anonymousObjectExpression: FirAnonymousObjectExpression, data: D): R = visitExpression(anonymousObjectExpression, data)
override fun visitAnonymousObjectExpression(anonymousObjectExpression: FirAnonymousObjectExpression, data: D): R =
visitExpression(anonymousObjectExpression, data)
override fun visitResolvedImport(resolvedImport: FirResolvedImport, data: D): R = visitImport(resolvedImport, data)
override fun visitResolvedImport(resolvedImport: FirResolvedImport, data: D): R =
visitImport(resolvedImport, data)
override fun visitDoWhileLoop(doWhileLoop: FirDoWhileLoop, data: D): R = visitLoop(doWhileLoop, data)
override fun visitDoWhileLoop(doWhileLoop: FirDoWhileLoop, data: D): R =
visitLoop(doWhileLoop, data)
override fun visitWhileLoop(whileLoop: FirWhileLoop, data: D): R = visitLoop(whileLoop, data)
override fun visitWhileLoop(whileLoop: FirWhileLoop, data: D): R =
visitLoop(whileLoop, data)
override fun visitBlock(block: FirBlock, data: D): R = visitExpression(block, data)
override fun visitBlock(block: FirBlock, data: D): R =
visitExpression(block, data)
override fun visitLazyBlock(lazyBlock: FirLazyBlock, data: D): R = visitBlock(lazyBlock, data)
override fun visitLazyBlock(lazyBlock: FirLazyBlock, data: D): R =
visitBlock(lazyBlock, data)
override fun visitBinaryLogicExpression(binaryLogicExpression: FirBinaryLogicExpression, data: D): R = visitExpression(binaryLogicExpression, data)
override fun visitBinaryLogicExpression(binaryLogicExpression: FirBinaryLogicExpression, data: D): R =
visitExpression(binaryLogicExpression, data)
override fun <E : FirTargetElement> visitJump(jump: FirJump<E>, data: D): R = visitExpression(jump, data)
override fun <E : FirTargetElement> visitJump(jump: FirJump<E>, data: D): R =
visitExpression(jump, data)
override fun visitLoopJump(loopJump: FirLoopJump, data: D): R = visitJump(loopJump, data)
override fun visitLoopJump(loopJump: FirLoopJump, data: D): R =
visitJump(loopJump, data)
override fun visitBreakExpression(breakExpression: FirBreakExpression, data: D): R = visitLoopJump(breakExpression, data)
override fun visitBreakExpression(breakExpression: FirBreakExpression, data: D): R =
visitLoopJump(breakExpression, data)
override fun visitContinueExpression(continueExpression: FirContinueExpression, data: D): R = visitLoopJump(continueExpression, data)
override fun visitContinueExpression(continueExpression: FirContinueExpression, data: D): R =
visitLoopJump(continueExpression, data)
override fun <T> visitConstExpression(constExpression: FirConstExpression<T>, data: D): R = visitExpression(constExpression, data)
override fun <T> visitConstExpression(constExpression: FirConstExpression<T>, data: D): R =
visitExpression(constExpression, data)
override fun visitStarProjection(starProjection: FirStarProjection, data: D): R = visitTypeProjection(starProjection, data)
override fun visitStarProjection(starProjection: FirStarProjection, data: D): R =
visitTypeProjection(starProjection, data)
override fun visitPlaceholderProjection(placeholderProjection: FirPlaceholderProjection, data: D): R = visitTypeProjection(placeholderProjection, data)
override fun visitPlaceholderProjection(placeholderProjection: FirPlaceholderProjection, data: D): R =
visitTypeProjection(placeholderProjection, data)
override fun visitTypeProjectionWithVariance(typeProjectionWithVariance: FirTypeProjectionWithVariance, data: D): R = visitTypeProjection(typeProjectionWithVariance, data)
override fun visitTypeProjectionWithVariance(typeProjectionWithVariance: FirTypeProjectionWithVariance, data: D): R =
visitTypeProjection(typeProjectionWithVariance, data)
override fun visitCall(call: FirCall, data: D): R = visitStatement(call, data)
override fun visitCall(call: FirCall, data: D): R =
visitStatement(call, data)
override fun visitAnnotation(annotation: FirAnnotation, data: D): R = visitExpression(annotation, data)
override fun visitAnnotation(annotation: FirAnnotation, data: D): R =
visitExpression(annotation, data)
override fun visitComparisonExpression(comparisonExpression: FirComparisonExpression, data: D): R = visitExpression(comparisonExpression, data)
override fun visitComparisonExpression(comparisonExpression: FirComparisonExpression, data: D): R =
visitExpression(comparisonExpression, data)
override fun visitAssignmentOperatorStatement(assignmentOperatorStatement: FirAssignmentOperatorStatement, data: D): R = visitStatement(assignmentOperatorStatement, data)
override fun visitAssignmentOperatorStatement(assignmentOperatorStatement: FirAssignmentOperatorStatement, data: D): R =
visitStatement(assignmentOperatorStatement, data)
override fun visitIncrementDecrementExpression(incrementDecrementExpression: FirIncrementDecrementExpression, data: D): R = visitExpression(incrementDecrementExpression, data)
override fun visitIncrementDecrementExpression(incrementDecrementExpression: FirIncrementDecrementExpression, data: D): R =
visitExpression(incrementDecrementExpression, data)
override fun visitAugmentedArraySetCall(augmentedArraySetCall: FirAugmentedArraySetCall, data: D): R = visitStatement(augmentedArraySetCall, data)
override fun visitAugmentedArraySetCall(augmentedArraySetCall: FirAugmentedArraySetCall, data: D): R =
visitStatement(augmentedArraySetCall, data)
override fun visitClassReferenceExpression(classReferenceExpression: FirClassReferenceExpression, data: D): R = visitExpression(classReferenceExpression, data)
override fun visitClassReferenceExpression(classReferenceExpression: FirClassReferenceExpression, data: D): R =
visitExpression(classReferenceExpression, data)
override fun visitPropertyAccessExpression(propertyAccessExpression: FirPropertyAccessExpression, data: D): R = visitQualifiedAccessExpression(propertyAccessExpression, data)
override fun visitPropertyAccessExpression(propertyAccessExpression: FirPropertyAccessExpression, data: D): R =
visitQualifiedAccessExpression(propertyAccessExpression, data)
override fun visitIntegerLiteralOperatorCall(integerLiteralOperatorCall: FirIntegerLiteralOperatorCall, data: D): R = visitFunctionCall(integerLiteralOperatorCall, data)
override fun visitIntegerLiteralOperatorCall(integerLiteralOperatorCall: FirIntegerLiteralOperatorCall, data: D): R =
visitFunctionCall(integerLiteralOperatorCall, data)
override fun visitImplicitInvokeCall(implicitInvokeCall: FirImplicitInvokeCall, data: D): R = visitFunctionCall(implicitInvokeCall, data)
override fun visitImplicitInvokeCall(implicitInvokeCall: FirImplicitInvokeCall, data: D): R =
visitFunctionCall(implicitInvokeCall, data)
override fun visitMultiDelegatedConstructorCall(multiDelegatedConstructorCall: FirMultiDelegatedConstructorCall, data: D): R = visitDelegatedConstructorCall(multiDelegatedConstructorCall, data)
override fun visitMultiDelegatedConstructorCall(multiDelegatedConstructorCall: FirMultiDelegatedConstructorCall, data: D): R =
visitDelegatedConstructorCall(multiDelegatedConstructorCall, data)
override fun visitComponentCall(componentCall: FirComponentCall, data: D): R = visitFunctionCall(componentCall, data)
override fun visitComponentCall(componentCall: FirComponentCall, data: D): R =
visitFunctionCall(componentCall, data)
override fun visitCallableReferenceAccess(callableReferenceAccess: FirCallableReferenceAccess, data: D): R = visitQualifiedAccessExpression(callableReferenceAccess, data)
override fun visitCallableReferenceAccess(callableReferenceAccess: FirCallableReferenceAccess, data: D): R =
visitQualifiedAccessExpression(callableReferenceAccess, data)
override fun visitThisReceiverExpression(thisReceiverExpression: FirThisReceiverExpression, data: D): R = visitQualifiedAccessExpression(thisReceiverExpression, data)
override fun visitThisReceiverExpression(thisReceiverExpression: FirThisReceiverExpression, data: D): R =
visitQualifiedAccessExpression(thisReceiverExpression, data)
override fun visitSmartCastExpression(smartCastExpression: FirSmartCastExpression, data: D): R = visitExpression(smartCastExpression, data)
override fun visitSmartCastExpression(smartCastExpression: FirSmartCastExpression, data: D): R =
visitExpression(smartCastExpression, data)
override fun visitSafeCallExpression(safeCallExpression: FirSafeCallExpression, data: D): R = visitExpression(safeCallExpression, data)
override fun visitSafeCallExpression(safeCallExpression: FirSafeCallExpression, data: D): R =
visitExpression(safeCallExpression, data)
override fun visitCheckedSafeCallSubject(checkedSafeCallSubject: FirCheckedSafeCallSubject, data: D): R = visitExpression(checkedSafeCallSubject, data)
override fun visitCheckedSafeCallSubject(checkedSafeCallSubject: FirCheckedSafeCallSubject, data: D): R =
visitExpression(checkedSafeCallSubject, data)
override fun visitWrappedExpression(wrappedExpression: FirWrappedExpression, data: D): R = visitExpression(wrappedExpression, data)
override fun visitWrappedExpression(wrappedExpression: FirWrappedExpression, data: D): R =
visitExpression(wrappedExpression, data)
override fun visitWrappedArgumentExpression(wrappedArgumentExpression: FirWrappedArgumentExpression, data: D): R = visitWrappedExpression(wrappedArgumentExpression, data)
override fun visitWrappedArgumentExpression(wrappedArgumentExpression: FirWrappedArgumentExpression, data: D): R =
visitWrappedExpression(wrappedArgumentExpression, data)
override fun visitLambdaArgumentExpression(lambdaArgumentExpression: FirLambdaArgumentExpression, data: D): R = visitWrappedArgumentExpression(lambdaArgumentExpression, data)
override fun visitLambdaArgumentExpression(lambdaArgumentExpression: FirLambdaArgumentExpression, data: D): R =
visitWrappedArgumentExpression(lambdaArgumentExpression, data)
override fun visitSpreadArgumentExpression(spreadArgumentExpression: FirSpreadArgumentExpression, data: D): R = visitWrappedArgumentExpression(spreadArgumentExpression, data)
override fun visitSpreadArgumentExpression(spreadArgumentExpression: FirSpreadArgumentExpression, data: D): R =
visitWrappedArgumentExpression(spreadArgumentExpression, data)
override fun visitNamedArgumentExpression(namedArgumentExpression: FirNamedArgumentExpression, data: D): R = visitWrappedArgumentExpression(namedArgumentExpression, data)
override fun visitNamedArgumentExpression(namedArgumentExpression: FirNamedArgumentExpression, data: D): R =
visitWrappedArgumentExpression(namedArgumentExpression, data)
override fun visitVarargArgumentsExpression(varargArgumentsExpression: FirVarargArgumentsExpression, data: D): R = visitExpression(varargArgumentsExpression, data)
override fun visitVarargArgumentsExpression(varargArgumentsExpression: FirVarargArgumentsExpression, data: D): R =
visitExpression(varargArgumentsExpression, data)
override fun visitResolvedQualifier(resolvedQualifier: FirResolvedQualifier, data: D): R = visitExpression(resolvedQualifier, data)
override fun visitResolvedQualifier(resolvedQualifier: FirResolvedQualifier, data: D): R =
visitExpression(resolvedQualifier, data)
override fun visitResolvedReifiedParameterReference(resolvedReifiedParameterReference: FirResolvedReifiedParameterReference, data: D): R = visitExpression(resolvedReifiedParameterReference, data)
override fun visitResolvedReifiedParameterReference(resolvedReifiedParameterReference: FirResolvedReifiedParameterReference, data: D): R =
visitExpression(resolvedReifiedParameterReference, data)
override fun visitReturnExpression(returnExpression: FirReturnExpression, data: D): R = visitJump(returnExpression, data)
override fun visitReturnExpression(returnExpression: FirReturnExpression, data: D): R =
visitJump(returnExpression, data)
override fun visitThrowExpression(throwExpression: FirThrowExpression, data: D): R = visitExpression(throwExpression, data)
override fun visitThrowExpression(throwExpression: FirThrowExpression, data: D): R =
visitExpression(throwExpression, data)
override fun visitVariableAssignment(variableAssignment: FirVariableAssignment, data: D): R = visitStatement(variableAssignment, data)
override fun visitVariableAssignment(variableAssignment: FirVariableAssignment, data: D): R =
visitStatement(variableAssignment, data)
override fun visitWhenSubjectExpression(whenSubjectExpression: FirWhenSubjectExpression, data: D): R = visitExpression(whenSubjectExpression, data)
override fun visitWhenSubjectExpression(whenSubjectExpression: FirWhenSubjectExpression, data: D): R =
visitExpression(whenSubjectExpression, data)
override fun visitDesugaredAssignmentValueReferenceExpression(desugaredAssignmentValueReferenceExpression: FirDesugaredAssignmentValueReferenceExpression, data: D): R = visitExpression(desugaredAssignmentValueReferenceExpression, data)
override fun visitDesugaredAssignmentValueReferenceExpression(desugaredAssignmentValueReferenceExpression: FirDesugaredAssignmentValueReferenceExpression, data: D): R =
visitExpression(desugaredAssignmentValueReferenceExpression, data)
override fun visitWrappedDelegateExpression(wrappedDelegateExpression: FirWrappedDelegateExpression, data: D): R = visitWrappedExpression(wrappedDelegateExpression, data)
override fun visitWrappedDelegateExpression(wrappedDelegateExpression: FirWrappedDelegateExpression, data: D): R =
visitWrappedExpression(wrappedDelegateExpression, data)
override fun visitEnumEntryDeserializedAccessExpression(enumEntryDeserializedAccessExpression: FirEnumEntryDeserializedAccessExpression, data: D): R = visitExpression(enumEntryDeserializedAccessExpression, data)
override fun visitEnumEntryDeserializedAccessExpression(enumEntryDeserializedAccessExpression: FirEnumEntryDeserializedAccessExpression, data: D): R =
visitExpression(enumEntryDeserializedAccessExpression, data)
override fun visitNamedReference(namedReference: FirNamedReference, data: D): R = visitReference(namedReference, data)
override fun visitNamedReference(namedReference: FirNamedReference, data: D): R =
visitReference(namedReference, data)
override fun visitNamedReferenceWithCandidateBase(namedReferenceWithCandidateBase: FirNamedReferenceWithCandidateBase, data: D): R = visitNamedReference(namedReferenceWithCandidateBase, data)
override fun visitNamedReferenceWithCandidateBase(namedReferenceWithCandidateBase: FirNamedReferenceWithCandidateBase, data: D): R =
visitNamedReference(namedReferenceWithCandidateBase, data)
override fun visitFromMissingDependenciesNamedReference(fromMissingDependenciesNamedReference: FirFromMissingDependenciesNamedReference, data: D): R = visitNamedReference(fromMissingDependenciesNamedReference, data)
override fun visitFromMissingDependenciesNamedReference(fromMissingDependenciesNamedReference: FirFromMissingDependenciesNamedReference, data: D): R =
visitNamedReference(fromMissingDependenciesNamedReference, data)
override fun visitSuperReference(superReference: FirSuperReference, data: D): R = visitReference(superReference, data)
override fun visitSuperReference(superReference: FirSuperReference, data: D): R =
visitReference(superReference, data)
override fun visitThisReference(thisReference: FirThisReference, data: D): R = visitReference(thisReference, data)
override fun visitThisReference(thisReference: FirThisReference, data: D): R =
visitReference(thisReference, data)
override fun visitControlFlowGraphReference(controlFlowGraphReference: FirControlFlowGraphReference, data: D): R = visitReference(controlFlowGraphReference, data)
override fun visitControlFlowGraphReference(controlFlowGraphReference: FirControlFlowGraphReference, data: D): R =
visitReference(controlFlowGraphReference, data)
override fun visitResolvedNamedReference(resolvedNamedReference: FirResolvedNamedReference, data: D): R = visitNamedReference(resolvedNamedReference, data)
override fun visitResolvedNamedReference(resolvedNamedReference: FirResolvedNamedReference, data: D): R =
visitNamedReference(resolvedNamedReference, data)
override fun visitResolvedErrorReference(resolvedErrorReference: FirResolvedErrorReference, data: D): R = visitResolvedNamedReference(resolvedErrorReference, data)
override fun visitResolvedErrorReference(resolvedErrorReference: FirResolvedErrorReference, data: D): R =
visitResolvedNamedReference(resolvedErrorReference, data)
override fun visitDelegateFieldReference(delegateFieldReference: FirDelegateFieldReference, data: D): R = visitResolvedNamedReference(delegateFieldReference, data)
override fun visitDelegateFieldReference(delegateFieldReference: FirDelegateFieldReference, data: D): R =
visitResolvedNamedReference(delegateFieldReference, data)
override fun visitBackingFieldReference(backingFieldReference: FirBackingFieldReference, data: D): R = visitResolvedNamedReference(backingFieldReference, data)
override fun visitBackingFieldReference(backingFieldReference: FirBackingFieldReference, data: D): R =
visitResolvedNamedReference(backingFieldReference, data)
override fun visitResolvedCallableReference(resolvedCallableReference: FirResolvedCallableReference, data: D): R = visitResolvedNamedReference(resolvedCallableReference, data)
override fun visitResolvedCallableReference(resolvedCallableReference: FirResolvedCallableReference, data: D): R =
visitResolvedNamedReference(resolvedCallableReference, data)
override fun visitResolvedTypeRef(resolvedTypeRef: FirResolvedTypeRef, data: D): R = visitTypeRef(resolvedTypeRef, data)
override fun visitResolvedTypeRef(resolvedTypeRef: FirResolvedTypeRef, data: D): R =
visitTypeRef(resolvedTypeRef, data)
override fun visitTypeRefWithNullability(typeRefWithNullability: FirTypeRefWithNullability, data: D): R = visitTypeRef(typeRefWithNullability, data)
override fun visitTypeRefWithNullability(typeRefWithNullability: FirTypeRefWithNullability, data: D): R =
visitTypeRef(typeRefWithNullability, data)
override fun visitUserTypeRef(userTypeRef: FirUserTypeRef, data: D): R = visitTypeRefWithNullability(userTypeRef, data)
override fun visitUserTypeRef(userTypeRef: FirUserTypeRef, data: D): R =
visitTypeRefWithNullability(userTypeRef, data)
override fun visitDynamicTypeRef(dynamicTypeRef: FirDynamicTypeRef, data: D): R = visitTypeRefWithNullability(dynamicTypeRef, data)
override fun visitDynamicTypeRef(dynamicTypeRef: FirDynamicTypeRef, data: D): R =
visitTypeRefWithNullability(dynamicTypeRef, data)
override fun visitFunctionTypeRef(functionTypeRef: FirFunctionTypeRef, data: D): R = visitTypeRefWithNullability(functionTypeRef, data)
override fun visitFunctionTypeRef(functionTypeRef: FirFunctionTypeRef, data: D): R =
visitTypeRefWithNullability(functionTypeRef, data)
override fun visitIntersectionTypeRef(intersectionTypeRef: FirIntersectionTypeRef, data: D): R = visitTypeRefWithNullability(intersectionTypeRef, data)
override fun visitIntersectionTypeRef(intersectionTypeRef: FirIntersectionTypeRef, data: D): R =
visitTypeRefWithNullability(intersectionTypeRef, data)
override fun visitImplicitTypeRef(implicitTypeRef: FirImplicitTypeRef, data: D): R = visitTypeRef(implicitTypeRef, data)
override fun visitImplicitTypeRef(implicitTypeRef: FirImplicitTypeRef, data: D): R =
visitTypeRef(implicitTypeRef, data)
override fun visitEffectDeclaration(effectDeclaration: FirEffectDeclaration, data: D): R = visitContractElementDeclaration(effectDeclaration, data)
override fun visitEffectDeclaration(effectDeclaration: FirEffectDeclaration, data: D): R =
visitContractElementDeclaration(effectDeclaration, data)
override fun visitLegacyRawContractDescription(legacyRawContractDescription: FirLegacyRawContractDescription, data: D): R = visitContractDescription(legacyRawContractDescription, data)
override fun visitLegacyRawContractDescription(legacyRawContractDescription: FirLegacyRawContractDescription, data: D): R =
visitContractDescription(legacyRawContractDescription, data)
override fun visitRawContractDescription(rawContractDescription: FirRawContractDescription, data: D): R = visitContractDescription(rawContractDescription, data)
override fun visitRawContractDescription(rawContractDescription: FirRawContractDescription, data: D): R =
visitContractDescription(rawContractDescription, data)
override fun visitResolvedContractDescription(resolvedContractDescription: FirResolvedContractDescription, data: D): R = visitContractDescription(resolvedContractDescription, data)
override fun visitResolvedContractDescription(resolvedContractDescription: FirResolvedContractDescription, data: D): R =
visitContractDescription(resolvedContractDescription, data)
}
@@ -20,313 +20,468 @@ abstract class FirVisitor<out R, in D> {
abstract fun visitElement(element: FirElement, data: D): R
open fun visitAnnotationContainer(annotationContainer: FirAnnotationContainer, data: D): R = visitElement(annotationContainer, data)
open fun visitAnnotationContainer(annotationContainer: FirAnnotationContainer, data: D): R =
visitElement(annotationContainer, data)
open fun visitTypeRef(typeRef: FirTypeRef, data: D): R = visitElement(typeRef, data)
open fun visitTypeRef(typeRef: FirTypeRef, data: D): R =
visitElement(typeRef, data)
open fun visitReference(reference: FirReference, data: D): R = visitElement(reference, data)
open fun visitReference(reference: FirReference, data: D): R =
visitElement(reference, data)
open fun visitLabel(label: FirLabel, data: D): R = visitElement(label, data)
open fun visitLabel(label: FirLabel, data: D): R =
visitElement(label, data)
open fun visitResolvable(resolvable: FirResolvable, data: D): R = visitElement(resolvable, data)
open fun visitResolvable(resolvable: FirResolvable, data: D): R =
visitElement(resolvable, data)
open fun visitTargetElement(targetElement: FirTargetElement, data: D): R = visitElement(targetElement, data)
open fun visitTargetElement(targetElement: FirTargetElement, data: D): R =
visitElement(targetElement, data)
open fun visitDeclarationStatus(declarationStatus: FirDeclarationStatus, data: D): R = visitElement(declarationStatus, data)
open fun visitDeclarationStatus(declarationStatus: FirDeclarationStatus, data: D): R =
visitElement(declarationStatus, data)
open fun visitResolvedDeclarationStatus(resolvedDeclarationStatus: FirResolvedDeclarationStatus, data: D): R = visitElement(resolvedDeclarationStatus, data)
open fun visitResolvedDeclarationStatus(resolvedDeclarationStatus: FirResolvedDeclarationStatus, data: D): R =
visitElement(resolvedDeclarationStatus, data)
open fun visitControlFlowGraphOwner(controlFlowGraphOwner: FirControlFlowGraphOwner, data: D): R = visitElement(controlFlowGraphOwner, data)
open fun visitControlFlowGraphOwner(controlFlowGraphOwner: FirControlFlowGraphOwner, data: D): R =
visitElement(controlFlowGraphOwner, data)
open fun visitStatement(statement: FirStatement, data: D): R = visitElement(statement, data)
open fun visitStatement(statement: FirStatement, data: D): R =
visitElement(statement, data)
open fun visitExpression(expression: FirExpression, data: D): R = visitElement(expression, data)
open fun visitExpression(expression: FirExpression, data: D): R =
visitElement(expression, data)
open fun visitLazyExpression(lazyExpression: FirLazyExpression, data: D): R = visitElement(lazyExpression, data)
open fun visitLazyExpression(lazyExpression: FirLazyExpression, data: D): R =
visitElement(lazyExpression, data)
open fun visitContextReceiver(contextReceiver: FirContextReceiver, data: D): R = visitElement(contextReceiver, data)
open fun visitContextReceiver(contextReceiver: FirContextReceiver, data: D): R =
visitElement(contextReceiver, data)
open fun visitElementWithResolveState(elementWithResolveState: FirElementWithResolveState, data: D): R = visitElement(elementWithResolveState, data)
open fun visitElementWithResolveState(elementWithResolveState: FirElementWithResolveState, data: D): R =
visitElement(elementWithResolveState, data)
open fun visitFileAnnotationsContainer(fileAnnotationsContainer: FirFileAnnotationsContainer, data: D): R = visitElement(fileAnnotationsContainer, data)
open fun visitFileAnnotationsContainer(fileAnnotationsContainer: FirFileAnnotationsContainer, data: D): R =
visitElement(fileAnnotationsContainer, data)
open fun visitDeclaration(declaration: FirDeclaration, data: D): R = visitElement(declaration, data)
open fun visitDeclaration(declaration: FirDeclaration, data: D): R =
visitElement(declaration, data)
open fun visitTypeParameterRefsOwner(typeParameterRefsOwner: FirTypeParameterRefsOwner, data: D): R = visitElement(typeParameterRefsOwner, data)
open fun visitTypeParameterRefsOwner(typeParameterRefsOwner: FirTypeParameterRefsOwner, data: D): R =
visitElement(typeParameterRefsOwner, data)
open fun visitTypeParametersOwner(typeParametersOwner: FirTypeParametersOwner, data: D): R = visitElement(typeParametersOwner, data)
open fun visitTypeParametersOwner(typeParametersOwner: FirTypeParametersOwner, data: D): R =
visitElement(typeParametersOwner, data)
open fun visitMemberDeclaration(memberDeclaration: FirMemberDeclaration, data: D): R = visitElement(memberDeclaration, data)
open fun visitMemberDeclaration(memberDeclaration: FirMemberDeclaration, data: D): R =
visitElement(memberDeclaration, data)
open fun visitAnonymousInitializer(anonymousInitializer: FirAnonymousInitializer, data: D): R = visitElement(anonymousInitializer, data)
open fun visitAnonymousInitializer(anonymousInitializer: FirAnonymousInitializer, data: D): R =
visitElement(anonymousInitializer, data)
open fun visitCallableDeclaration(callableDeclaration: FirCallableDeclaration, data: D): R = visitElement(callableDeclaration, data)
open fun visitCallableDeclaration(callableDeclaration: FirCallableDeclaration, data: D): R =
visitElement(callableDeclaration, data)
open fun visitTypeParameterRef(typeParameterRef: FirTypeParameterRef, data: D): R = visitElement(typeParameterRef, data)
open fun visitTypeParameterRef(typeParameterRef: FirTypeParameterRef, data: D): R =
visitElement(typeParameterRef, data)
open fun visitTypeParameter(typeParameter: FirTypeParameter, data: D): R = visitElement(typeParameter, data)
open fun visitTypeParameter(typeParameter: FirTypeParameter, data: D): R =
visitElement(typeParameter, data)
open fun visitConstructedClassTypeParameterRef(constructedClassTypeParameterRef: FirConstructedClassTypeParameterRef, data: D): R = visitElement(constructedClassTypeParameterRef, data)
open fun visitConstructedClassTypeParameterRef(constructedClassTypeParameterRef: FirConstructedClassTypeParameterRef, data: D): R =
visitElement(constructedClassTypeParameterRef, data)
open fun visitOuterClassTypeParameterRef(outerClassTypeParameterRef: FirOuterClassTypeParameterRef, data: D): R = visitElement(outerClassTypeParameterRef, data)
open fun visitOuterClassTypeParameterRef(outerClassTypeParameterRef: FirOuterClassTypeParameterRef, data: D): R =
visitElement(outerClassTypeParameterRef, data)
open fun visitVariable(variable: FirVariable, data: D): R = visitElement(variable, data)
open fun visitVariable(variable: FirVariable, data: D): R =
visitElement(variable, data)
open fun visitValueParameter(valueParameter: FirValueParameter, data: D): R = visitElement(valueParameter, data)
open fun visitValueParameter(valueParameter: FirValueParameter, data: D): R =
visitElement(valueParameter, data)
open fun visitReceiverParameter(receiverParameter: FirReceiverParameter, data: D): R = visitElement(receiverParameter, data)
open fun visitReceiverParameter(receiverParameter: FirReceiverParameter, data: D): R =
visitElement(receiverParameter, data)
open fun visitProperty(property: FirProperty, data: D): R = visitElement(property, data)
open fun visitProperty(property: FirProperty, data: D): R =
visitElement(property, data)
open fun visitField(field: FirField, data: D): R = visitElement(field, data)
open fun visitField(field: FirField, data: D): R =
visitElement(field, data)
open fun visitEnumEntry(enumEntry: FirEnumEntry, data: D): R = visitElement(enumEntry, data)
open fun visitEnumEntry(enumEntry: FirEnumEntry, data: D): R =
visitElement(enumEntry, data)
open fun visitFunctionTypeParameter(functionTypeParameter: FirFunctionTypeParameter, data: D): R = visitElement(functionTypeParameter, data)
open fun visitFunctionTypeParameter(functionTypeParameter: FirFunctionTypeParameter, data: D): R =
visitElement(functionTypeParameter, data)
open fun visitClassLikeDeclaration(classLikeDeclaration: FirClassLikeDeclaration, data: D): R = visitElement(classLikeDeclaration, data)
open fun visitClassLikeDeclaration(classLikeDeclaration: FirClassLikeDeclaration, data: D): R =
visitElement(classLikeDeclaration, data)
open fun visitClass(klass: FirClass, data: D): R = visitElement(klass, data)
open fun visitClass(klass: FirClass, data: D): R =
visitElement(klass, data)
open fun visitRegularClass(regularClass: FirRegularClass, data: D): R = visitElement(regularClass, data)
open fun visitRegularClass(regularClass: FirRegularClass, data: D): R =
visitElement(regularClass, data)
open fun visitTypeAlias(typeAlias: FirTypeAlias, data: D): R = visitElement(typeAlias, data)
open fun visitTypeAlias(typeAlias: FirTypeAlias, data: D): R =
visitElement(typeAlias, data)
open fun visitFunction(function: FirFunction, data: D): R = visitElement(function, data)
open fun visitFunction(function: FirFunction, data: D): R =
visitElement(function, data)
open fun visitContractDescriptionOwner(contractDescriptionOwner: FirContractDescriptionOwner, data: D): R = visitElement(contractDescriptionOwner, data)
open fun visitContractDescriptionOwner(contractDescriptionOwner: FirContractDescriptionOwner, data: D): R =
visitElement(contractDescriptionOwner, data)
open fun visitSimpleFunction(simpleFunction: FirSimpleFunction, data: D): R = visitElement(simpleFunction, data)
open fun visitSimpleFunction(simpleFunction: FirSimpleFunction, data: D): R =
visitElement(simpleFunction, data)
open fun visitPropertyAccessor(propertyAccessor: FirPropertyAccessor, data: D): R = visitElement(propertyAccessor, data)
open fun visitPropertyAccessor(propertyAccessor: FirPropertyAccessor, data: D): R =
visitElement(propertyAccessor, data)
open fun visitBackingField(backingField: FirBackingField, data: D): R = visitElement(backingField, data)
open fun visitBackingField(backingField: FirBackingField, data: D): R =
visitElement(backingField, data)
open fun visitConstructor(constructor: FirConstructor, data: D): R = visitElement(constructor, data)
open fun visitConstructor(constructor: FirConstructor, data: D): R =
visitElement(constructor, data)
open fun visitFile(file: FirFile, data: D): R = visitElement(file, data)
open fun visitFile(file: FirFile, data: D): R =
visitElement(file, data)
open fun visitScript(script: FirScript, data: D): R = visitElement(script, data)
open fun visitScript(script: FirScript, data: D): R =
visitElement(script, data)
open fun visitCodeFragment(codeFragment: FirCodeFragment, data: D): R = visitElement(codeFragment, data)
open fun visitCodeFragment(codeFragment: FirCodeFragment, data: D): R =
visitElement(codeFragment, data)
open fun visitPackageDirective(packageDirective: FirPackageDirective, data: D): R = visitElement(packageDirective, data)
open fun visitPackageDirective(packageDirective: FirPackageDirective, data: D): R =
visitElement(packageDirective, data)
open fun visitAnonymousFunction(anonymousFunction: FirAnonymousFunction, data: D): R = visitElement(anonymousFunction, data)
open fun visitAnonymousFunction(anonymousFunction: FirAnonymousFunction, data: D): R =
visitElement(anonymousFunction, data)
open fun visitAnonymousFunctionExpression(anonymousFunctionExpression: FirAnonymousFunctionExpression, data: D): R = visitElement(anonymousFunctionExpression, data)
open fun visitAnonymousFunctionExpression(anonymousFunctionExpression: FirAnonymousFunctionExpression, data: D): R =
visitElement(anonymousFunctionExpression, data)
open fun visitAnonymousObject(anonymousObject: FirAnonymousObject, data: D): R = visitElement(anonymousObject, data)
open fun visitAnonymousObject(anonymousObject: FirAnonymousObject, data: D): R =
visitElement(anonymousObject, data)
open fun visitAnonymousObjectExpression(anonymousObjectExpression: FirAnonymousObjectExpression, data: D): R = visitElement(anonymousObjectExpression, data)
open fun visitAnonymousObjectExpression(anonymousObjectExpression: FirAnonymousObjectExpression, data: D): R =
visitElement(anonymousObjectExpression, data)
open fun visitDiagnosticHolder(diagnosticHolder: FirDiagnosticHolder, data: D): R = visitElement(diagnosticHolder, data)
open fun visitDiagnosticHolder(diagnosticHolder: FirDiagnosticHolder, data: D): R =
visitElement(diagnosticHolder, data)
open fun visitImport(import: FirImport, data: D): R = visitElement(import, data)
open fun visitImport(import: FirImport, data: D): R =
visitElement(import, data)
open fun visitResolvedImport(resolvedImport: FirResolvedImport, data: D): R = visitElement(resolvedImport, data)
open fun visitResolvedImport(resolvedImport: FirResolvedImport, data: D): R =
visitElement(resolvedImport, data)
open fun visitErrorImport(errorImport: FirErrorImport, data: D): R = visitElement(errorImport, data)
open fun visitErrorImport(errorImport: FirErrorImport, data: D): R =
visitElement(errorImport, data)
open fun visitLoop(loop: FirLoop, data: D): R = visitElement(loop, data)
open fun visitLoop(loop: FirLoop, data: D): R =
visitElement(loop, data)
open fun visitErrorLoop(errorLoop: FirErrorLoop, data: D): R = visitElement(errorLoop, data)
open fun visitErrorLoop(errorLoop: FirErrorLoop, data: D): R =
visitElement(errorLoop, data)
open fun visitDoWhileLoop(doWhileLoop: FirDoWhileLoop, data: D): R = visitElement(doWhileLoop, data)
open fun visitDoWhileLoop(doWhileLoop: FirDoWhileLoop, data: D): R =
visitElement(doWhileLoop, data)
open fun visitWhileLoop(whileLoop: FirWhileLoop, data: D): R = visitElement(whileLoop, data)
open fun visitWhileLoop(whileLoop: FirWhileLoop, data: D): R =
visitElement(whileLoop, data)
open fun visitBlock(block: FirBlock, data: D): R = visitElement(block, data)
open fun visitBlock(block: FirBlock, data: D): R =
visitElement(block, data)
open fun visitLazyBlock(lazyBlock: FirLazyBlock, data: D): R = visitElement(lazyBlock, data)
open fun visitLazyBlock(lazyBlock: FirLazyBlock, data: D): R =
visitElement(lazyBlock, data)
open fun visitBinaryLogicExpression(binaryLogicExpression: FirBinaryLogicExpression, data: D): R = visitElement(binaryLogicExpression, data)
open fun visitBinaryLogicExpression(binaryLogicExpression: FirBinaryLogicExpression, data: D): R =
visitElement(binaryLogicExpression, data)
open fun <E : FirTargetElement> visitJump(jump: FirJump<E>, data: D): R = visitElement(jump, data)
open fun <E : FirTargetElement> visitJump(jump: FirJump<E>, data: D): R =
visitElement(jump, data)
open fun visitLoopJump(loopJump: FirLoopJump, data: D): R = visitElement(loopJump, data)
open fun visitLoopJump(loopJump: FirLoopJump, data: D): R =
visitElement(loopJump, data)
open fun visitBreakExpression(breakExpression: FirBreakExpression, data: D): R = visitElement(breakExpression, data)
open fun visitBreakExpression(breakExpression: FirBreakExpression, data: D): R =
visitElement(breakExpression, data)
open fun visitContinueExpression(continueExpression: FirContinueExpression, data: D): R = visitElement(continueExpression, data)
open fun visitContinueExpression(continueExpression: FirContinueExpression, data: D): R =
visitElement(continueExpression, data)
open fun visitCatch(catch: FirCatch, data: D): R = visitElement(catch, data)
open fun visitCatch(catch: FirCatch, data: D): R =
visitElement(catch, data)
open fun visitTryExpression(tryExpression: FirTryExpression, data: D): R = visitElement(tryExpression, data)
open fun visitTryExpression(tryExpression: FirTryExpression, data: D): R =
visitElement(tryExpression, data)
open fun <T> visitConstExpression(constExpression: FirConstExpression<T>, data: D): R = visitElement(constExpression, data)
open fun <T> visitConstExpression(constExpression: FirConstExpression<T>, data: D): R =
visitElement(constExpression, data)
open fun visitTypeProjection(typeProjection: FirTypeProjection, data: D): R = visitElement(typeProjection, data)
open fun visitTypeProjection(typeProjection: FirTypeProjection, data: D): R =
visitElement(typeProjection, data)
open fun visitStarProjection(starProjection: FirStarProjection, data: D): R = visitElement(starProjection, data)
open fun visitStarProjection(starProjection: FirStarProjection, data: D): R =
visitElement(starProjection, data)
open fun visitPlaceholderProjection(placeholderProjection: FirPlaceholderProjection, data: D): R = visitElement(placeholderProjection, data)
open fun visitPlaceholderProjection(placeholderProjection: FirPlaceholderProjection, data: D): R =
visitElement(placeholderProjection, data)
open fun visitTypeProjectionWithVariance(typeProjectionWithVariance: FirTypeProjectionWithVariance, data: D): R = visitElement(typeProjectionWithVariance, data)
open fun visitTypeProjectionWithVariance(typeProjectionWithVariance: FirTypeProjectionWithVariance, data: D): R =
visitElement(typeProjectionWithVariance, data)
open fun visitArgumentList(argumentList: FirArgumentList, data: D): R = visitElement(argumentList, data)
open fun visitArgumentList(argumentList: FirArgumentList, data: D): R =
visitElement(argumentList, data)
open fun visitCall(call: FirCall, data: D): R = visitElement(call, data)
open fun visitCall(call: FirCall, data: D): R =
visitElement(call, data)
open fun visitAnnotation(annotation: FirAnnotation, data: D): R = visitElement(annotation, data)
open fun visitAnnotation(annotation: FirAnnotation, data: D): R =
visitElement(annotation, data)
open fun visitAnnotationCall(annotationCall: FirAnnotationCall, data: D): R = visitElement(annotationCall, data)
open fun visitAnnotationCall(annotationCall: FirAnnotationCall, data: D): R =
visitElement(annotationCall, data)
open fun visitAnnotationArgumentMapping(annotationArgumentMapping: FirAnnotationArgumentMapping, data: D): R = visitElement(annotationArgumentMapping, data)
open fun visitAnnotationArgumentMapping(annotationArgumentMapping: FirAnnotationArgumentMapping, data: D): R =
visitElement(annotationArgumentMapping, data)
open fun visitErrorAnnotationCall(errorAnnotationCall: FirErrorAnnotationCall, data: D): R = visitElement(errorAnnotationCall, data)
open fun visitErrorAnnotationCall(errorAnnotationCall: FirErrorAnnotationCall, data: D): R =
visitElement(errorAnnotationCall, data)
open fun visitComparisonExpression(comparisonExpression: FirComparisonExpression, data: D): R = visitElement(comparisonExpression, data)
open fun visitComparisonExpression(comparisonExpression: FirComparisonExpression, data: D): R =
visitElement(comparisonExpression, data)
open fun visitTypeOperatorCall(typeOperatorCall: FirTypeOperatorCall, data: D): R = visitElement(typeOperatorCall, data)
open fun visitTypeOperatorCall(typeOperatorCall: FirTypeOperatorCall, data: D): R =
visitElement(typeOperatorCall, data)
open fun visitAssignmentOperatorStatement(assignmentOperatorStatement: FirAssignmentOperatorStatement, data: D): R = visitElement(assignmentOperatorStatement, data)
open fun visitAssignmentOperatorStatement(assignmentOperatorStatement: FirAssignmentOperatorStatement, data: D): R =
visitElement(assignmentOperatorStatement, data)
open fun visitIncrementDecrementExpression(incrementDecrementExpression: FirIncrementDecrementExpression, data: D): R = visitElement(incrementDecrementExpression, data)
open fun visitIncrementDecrementExpression(incrementDecrementExpression: FirIncrementDecrementExpression, data: D): R =
visitElement(incrementDecrementExpression, data)
open fun visitEqualityOperatorCall(equalityOperatorCall: FirEqualityOperatorCall, data: D): R = visitElement(equalityOperatorCall, data)
open fun visitEqualityOperatorCall(equalityOperatorCall: FirEqualityOperatorCall, data: D): R =
visitElement(equalityOperatorCall, data)
open fun visitWhenExpression(whenExpression: FirWhenExpression, data: D): R = visitElement(whenExpression, data)
open fun visitWhenExpression(whenExpression: FirWhenExpression, data: D): R =
visitElement(whenExpression, data)
open fun visitWhenBranch(whenBranch: FirWhenBranch, data: D): R = visitElement(whenBranch, data)
open fun visitWhenBranch(whenBranch: FirWhenBranch, data: D): R =
visitElement(whenBranch, data)
open fun visitContextReceiverArgumentListOwner(contextReceiverArgumentListOwner: FirContextReceiverArgumentListOwner, data: D): R = visitElement(contextReceiverArgumentListOwner, data)
open fun visitContextReceiverArgumentListOwner(contextReceiverArgumentListOwner: FirContextReceiverArgumentListOwner, data: D): R =
visitElement(contextReceiverArgumentListOwner, data)
open fun visitCheckNotNullCall(checkNotNullCall: FirCheckNotNullCall, data: D): R = visitElement(checkNotNullCall, data)
open fun visitCheckNotNullCall(checkNotNullCall: FirCheckNotNullCall, data: D): R =
visitElement(checkNotNullCall, data)
open fun visitElvisExpression(elvisExpression: FirElvisExpression, data: D): R = visitElement(elvisExpression, data)
open fun visitElvisExpression(elvisExpression: FirElvisExpression, data: D): R =
visitElement(elvisExpression, data)
open fun visitArrayLiteral(arrayLiteral: FirArrayLiteral, data: D): R = visitElement(arrayLiteral, data)
open fun visitArrayLiteral(arrayLiteral: FirArrayLiteral, data: D): R =
visitElement(arrayLiteral, data)
open fun visitAugmentedArraySetCall(augmentedArraySetCall: FirAugmentedArraySetCall, data: D): R = visitElement(augmentedArraySetCall, data)
open fun visitAugmentedArraySetCall(augmentedArraySetCall: FirAugmentedArraySetCall, data: D): R =
visitElement(augmentedArraySetCall, data)
open fun visitClassReferenceExpression(classReferenceExpression: FirClassReferenceExpression, data: D): R = visitElement(classReferenceExpression, data)
open fun visitClassReferenceExpression(classReferenceExpression: FirClassReferenceExpression, data: D): R =
visitElement(classReferenceExpression, data)
open fun visitErrorExpression(errorExpression: FirErrorExpression, data: D): R = visitElement(errorExpression, data)
open fun visitErrorExpression(errorExpression: FirErrorExpression, data: D): R =
visitElement(errorExpression, data)
open fun visitErrorFunction(errorFunction: FirErrorFunction, data: D): R = visitElement(errorFunction, data)
open fun visitErrorFunction(errorFunction: FirErrorFunction, data: D): R =
visitElement(errorFunction, data)
open fun visitErrorProperty(errorProperty: FirErrorProperty, data: D): R = visitElement(errorProperty, data)
open fun visitErrorProperty(errorProperty: FirErrorProperty, data: D): R =
visitElement(errorProperty, data)
open fun visitErrorPrimaryConstructor(errorPrimaryConstructor: FirErrorPrimaryConstructor, data: D): R = visitElement(errorPrimaryConstructor, data)
open fun visitErrorPrimaryConstructor(errorPrimaryConstructor: FirErrorPrimaryConstructor, data: D): R =
visitElement(errorPrimaryConstructor, data)
open fun visitDanglingModifierList(danglingModifierList: FirDanglingModifierList, data: D): R = visitElement(danglingModifierList, data)
open fun visitDanglingModifierList(danglingModifierList: FirDanglingModifierList, data: D): R =
visitElement(danglingModifierList, data)
open fun visitQualifiedAccessExpression(qualifiedAccessExpression: FirQualifiedAccessExpression, data: D): R = visitElement(qualifiedAccessExpression, data)
open fun visitQualifiedAccessExpression(qualifiedAccessExpression: FirQualifiedAccessExpression, data: D): R =
visitElement(qualifiedAccessExpression, data)
open fun visitQualifiedErrorAccessExpression(qualifiedErrorAccessExpression: FirQualifiedErrorAccessExpression, data: D): R = visitElement(qualifiedErrorAccessExpression, data)
open fun visitQualifiedErrorAccessExpression(qualifiedErrorAccessExpression: FirQualifiedErrorAccessExpression, data: D): R =
visitElement(qualifiedErrorAccessExpression, data)
open fun visitPropertyAccessExpression(propertyAccessExpression: FirPropertyAccessExpression, data: D): R = visitElement(propertyAccessExpression, data)
open fun visitPropertyAccessExpression(propertyAccessExpression: FirPropertyAccessExpression, data: D): R =
visitElement(propertyAccessExpression, data)
open fun visitFunctionCall(functionCall: FirFunctionCall, data: D): R = visitElement(functionCall, data)
open fun visitFunctionCall(functionCall: FirFunctionCall, data: D): R =
visitElement(functionCall, data)
open fun visitIntegerLiteralOperatorCall(integerLiteralOperatorCall: FirIntegerLiteralOperatorCall, data: D): R = visitElement(integerLiteralOperatorCall, data)
open fun visitIntegerLiteralOperatorCall(integerLiteralOperatorCall: FirIntegerLiteralOperatorCall, data: D): R =
visitElement(integerLiteralOperatorCall, data)
open fun visitImplicitInvokeCall(implicitInvokeCall: FirImplicitInvokeCall, data: D): R = visitElement(implicitInvokeCall, data)
open fun visitImplicitInvokeCall(implicitInvokeCall: FirImplicitInvokeCall, data: D): R =
visitElement(implicitInvokeCall, data)
open fun visitDelegatedConstructorCall(delegatedConstructorCall: FirDelegatedConstructorCall, data: D): R = visitElement(delegatedConstructorCall, data)
open fun visitDelegatedConstructorCall(delegatedConstructorCall: FirDelegatedConstructorCall, data: D): R =
visitElement(delegatedConstructorCall, data)
open fun visitMultiDelegatedConstructorCall(multiDelegatedConstructorCall: FirMultiDelegatedConstructorCall, data: D): R = visitElement(multiDelegatedConstructorCall, data)
open fun visitMultiDelegatedConstructorCall(multiDelegatedConstructorCall: FirMultiDelegatedConstructorCall, data: D): R =
visitElement(multiDelegatedConstructorCall, data)
open fun visitComponentCall(componentCall: FirComponentCall, data: D): R = visitElement(componentCall, data)
open fun visitComponentCall(componentCall: FirComponentCall, data: D): R =
visitElement(componentCall, data)
open fun visitCallableReferenceAccess(callableReferenceAccess: FirCallableReferenceAccess, data: D): R = visitElement(callableReferenceAccess, data)
open fun visitCallableReferenceAccess(callableReferenceAccess: FirCallableReferenceAccess, data: D): R =
visitElement(callableReferenceAccess, data)
open fun visitThisReceiverExpression(thisReceiverExpression: FirThisReceiverExpression, data: D): R = visitElement(thisReceiverExpression, data)
open fun visitThisReceiverExpression(thisReceiverExpression: FirThisReceiverExpression, data: D): R =
visitElement(thisReceiverExpression, data)
open fun visitInaccessibleReceiverExpression(inaccessibleReceiverExpression: FirInaccessibleReceiverExpression, data: D): R = visitElement(inaccessibleReceiverExpression, data)
open fun visitInaccessibleReceiverExpression(inaccessibleReceiverExpression: FirInaccessibleReceiverExpression, data: D): R =
visitElement(inaccessibleReceiverExpression, data)
open fun visitSmartCastExpression(smartCastExpression: FirSmartCastExpression, data: D): R = visitElement(smartCastExpression, data)
open fun visitSmartCastExpression(smartCastExpression: FirSmartCastExpression, data: D): R =
visitElement(smartCastExpression, data)
open fun visitSafeCallExpression(safeCallExpression: FirSafeCallExpression, data: D): R = visitElement(safeCallExpression, data)
open fun visitSafeCallExpression(safeCallExpression: FirSafeCallExpression, data: D): R =
visitElement(safeCallExpression, data)
open fun visitCheckedSafeCallSubject(checkedSafeCallSubject: FirCheckedSafeCallSubject, data: D): R = visitElement(checkedSafeCallSubject, data)
open fun visitCheckedSafeCallSubject(checkedSafeCallSubject: FirCheckedSafeCallSubject, data: D): R =
visitElement(checkedSafeCallSubject, data)
open fun visitGetClassCall(getClassCall: FirGetClassCall, data: D): R = visitElement(getClassCall, data)
open fun visitGetClassCall(getClassCall: FirGetClassCall, data: D): R =
visitElement(getClassCall, data)
open fun visitWrappedExpression(wrappedExpression: FirWrappedExpression, data: D): R = visitElement(wrappedExpression, data)
open fun visitWrappedExpression(wrappedExpression: FirWrappedExpression, data: D): R =
visitElement(wrappedExpression, data)
open fun visitWrappedArgumentExpression(wrappedArgumentExpression: FirWrappedArgumentExpression, data: D): R = visitElement(wrappedArgumentExpression, data)
open fun visitWrappedArgumentExpression(wrappedArgumentExpression: FirWrappedArgumentExpression, data: D): R =
visitElement(wrappedArgumentExpression, data)
open fun visitLambdaArgumentExpression(lambdaArgumentExpression: FirLambdaArgumentExpression, data: D): R = visitElement(lambdaArgumentExpression, data)
open fun visitLambdaArgumentExpression(lambdaArgumentExpression: FirLambdaArgumentExpression, data: D): R =
visitElement(lambdaArgumentExpression, data)
open fun visitSpreadArgumentExpression(spreadArgumentExpression: FirSpreadArgumentExpression, data: D): R = visitElement(spreadArgumentExpression, data)
open fun visitSpreadArgumentExpression(spreadArgumentExpression: FirSpreadArgumentExpression, data: D): R =
visitElement(spreadArgumentExpression, data)
open fun visitNamedArgumentExpression(namedArgumentExpression: FirNamedArgumentExpression, data: D): R = visitElement(namedArgumentExpression, data)
open fun visitNamedArgumentExpression(namedArgumentExpression: FirNamedArgumentExpression, data: D): R =
visitElement(namedArgumentExpression, data)
open fun visitVarargArgumentsExpression(varargArgumentsExpression: FirVarargArgumentsExpression, data: D): R = visitElement(varargArgumentsExpression, data)
open fun visitVarargArgumentsExpression(varargArgumentsExpression: FirVarargArgumentsExpression, data: D): R =
visitElement(varargArgumentsExpression, data)
open fun visitResolvedQualifier(resolvedQualifier: FirResolvedQualifier, data: D): R = visitElement(resolvedQualifier, data)
open fun visitResolvedQualifier(resolvedQualifier: FirResolvedQualifier, data: D): R =
visitElement(resolvedQualifier, data)
open fun visitErrorResolvedQualifier(errorResolvedQualifier: FirErrorResolvedQualifier, data: D): R = visitElement(errorResolvedQualifier, data)
open fun visitErrorResolvedQualifier(errorResolvedQualifier: FirErrorResolvedQualifier, data: D): R =
visitElement(errorResolvedQualifier, data)
open fun visitResolvedReifiedParameterReference(resolvedReifiedParameterReference: FirResolvedReifiedParameterReference, data: D): R = visitElement(resolvedReifiedParameterReference, data)
open fun visitResolvedReifiedParameterReference(resolvedReifiedParameterReference: FirResolvedReifiedParameterReference, data: D): R =
visitElement(resolvedReifiedParameterReference, data)
open fun visitReturnExpression(returnExpression: FirReturnExpression, data: D): R = visitElement(returnExpression, data)
open fun visitReturnExpression(returnExpression: FirReturnExpression, data: D): R =
visitElement(returnExpression, data)
open fun visitStringConcatenationCall(stringConcatenationCall: FirStringConcatenationCall, data: D): R = visitElement(stringConcatenationCall, data)
open fun visitStringConcatenationCall(stringConcatenationCall: FirStringConcatenationCall, data: D): R =
visitElement(stringConcatenationCall, data)
open fun visitThrowExpression(throwExpression: FirThrowExpression, data: D): R = visitElement(throwExpression, data)
open fun visitThrowExpression(throwExpression: FirThrowExpression, data: D): R =
visitElement(throwExpression, data)
open fun visitVariableAssignment(variableAssignment: FirVariableAssignment, data: D): R = visitElement(variableAssignment, data)
open fun visitVariableAssignment(variableAssignment: FirVariableAssignment, data: D): R =
visitElement(variableAssignment, data)
open fun visitWhenSubjectExpression(whenSubjectExpression: FirWhenSubjectExpression, data: D): R = visitElement(whenSubjectExpression, data)
open fun visitWhenSubjectExpression(whenSubjectExpression: FirWhenSubjectExpression, data: D): R =
visitElement(whenSubjectExpression, data)
open fun visitDesugaredAssignmentValueReferenceExpression(desugaredAssignmentValueReferenceExpression: FirDesugaredAssignmentValueReferenceExpression, data: D): R = visitElement(desugaredAssignmentValueReferenceExpression, data)
open fun visitDesugaredAssignmentValueReferenceExpression(desugaredAssignmentValueReferenceExpression: FirDesugaredAssignmentValueReferenceExpression, data: D): R =
visitElement(desugaredAssignmentValueReferenceExpression, data)
open fun visitWrappedDelegateExpression(wrappedDelegateExpression: FirWrappedDelegateExpression, data: D): R = visitElement(wrappedDelegateExpression, data)
open fun visitWrappedDelegateExpression(wrappedDelegateExpression: FirWrappedDelegateExpression, data: D): R =
visitElement(wrappedDelegateExpression, data)
open fun visitEnumEntryDeserializedAccessExpression(enumEntryDeserializedAccessExpression: FirEnumEntryDeserializedAccessExpression, data: D): R = visitElement(enumEntryDeserializedAccessExpression, data)
open fun visitEnumEntryDeserializedAccessExpression(enumEntryDeserializedAccessExpression: FirEnumEntryDeserializedAccessExpression, data: D): R =
visitElement(enumEntryDeserializedAccessExpression, data)
open fun visitNamedReference(namedReference: FirNamedReference, data: D): R = visitElement(namedReference, data)
open fun visitNamedReference(namedReference: FirNamedReference, data: D): R =
visitElement(namedReference, data)
open fun visitNamedReferenceWithCandidateBase(namedReferenceWithCandidateBase: FirNamedReferenceWithCandidateBase, data: D): R = visitElement(namedReferenceWithCandidateBase, data)
open fun visitNamedReferenceWithCandidateBase(namedReferenceWithCandidateBase: FirNamedReferenceWithCandidateBase, data: D): R =
visitElement(namedReferenceWithCandidateBase, data)
open fun visitErrorNamedReference(errorNamedReference: FirErrorNamedReference, data: D): R = visitElement(errorNamedReference, data)
open fun visitErrorNamedReference(errorNamedReference: FirErrorNamedReference, data: D): R =
visitElement(errorNamedReference, data)
open fun visitFromMissingDependenciesNamedReference(fromMissingDependenciesNamedReference: FirFromMissingDependenciesNamedReference, data: D): R = visitElement(fromMissingDependenciesNamedReference, data)
open fun visitFromMissingDependenciesNamedReference(fromMissingDependenciesNamedReference: FirFromMissingDependenciesNamedReference, data: D): R =
visitElement(fromMissingDependenciesNamedReference, data)
open fun visitSuperReference(superReference: FirSuperReference, data: D): R = visitElement(superReference, data)
open fun visitSuperReference(superReference: FirSuperReference, data: D): R =
visitElement(superReference, data)
open fun visitThisReference(thisReference: FirThisReference, data: D): R = visitElement(thisReference, data)
open fun visitThisReference(thisReference: FirThisReference, data: D): R =
visitElement(thisReference, data)
open fun visitControlFlowGraphReference(controlFlowGraphReference: FirControlFlowGraphReference, data: D): R = visitElement(controlFlowGraphReference, data)
open fun visitControlFlowGraphReference(controlFlowGraphReference: FirControlFlowGraphReference, data: D): R =
visitElement(controlFlowGraphReference, data)
open fun visitResolvedNamedReference(resolvedNamedReference: FirResolvedNamedReference, data: D): R = visitElement(resolvedNamedReference, data)
open fun visitResolvedNamedReference(resolvedNamedReference: FirResolvedNamedReference, data: D): R =
visitElement(resolvedNamedReference, data)
open fun visitResolvedErrorReference(resolvedErrorReference: FirResolvedErrorReference, data: D): R = visitElement(resolvedErrorReference, data)
open fun visitResolvedErrorReference(resolvedErrorReference: FirResolvedErrorReference, data: D): R =
visitElement(resolvedErrorReference, data)
open fun visitDelegateFieldReference(delegateFieldReference: FirDelegateFieldReference, data: D): R = visitElement(delegateFieldReference, data)
open fun visitDelegateFieldReference(delegateFieldReference: FirDelegateFieldReference, data: D): R =
visitElement(delegateFieldReference, data)
open fun visitBackingFieldReference(backingFieldReference: FirBackingFieldReference, data: D): R = visitElement(backingFieldReference, data)
open fun visitBackingFieldReference(backingFieldReference: FirBackingFieldReference, data: D): R =
visitElement(backingFieldReference, data)
open fun visitResolvedCallableReference(resolvedCallableReference: FirResolvedCallableReference, data: D): R = visitElement(resolvedCallableReference, data)
open fun visitResolvedCallableReference(resolvedCallableReference: FirResolvedCallableReference, data: D): R =
visitElement(resolvedCallableReference, data)
open fun visitResolvedTypeRef(resolvedTypeRef: FirResolvedTypeRef, data: D): R = visitElement(resolvedTypeRef, data)
open fun visitResolvedTypeRef(resolvedTypeRef: FirResolvedTypeRef, data: D): R =
visitElement(resolvedTypeRef, data)
open fun visitErrorTypeRef(errorTypeRef: FirErrorTypeRef, data: D): R = visitElement(errorTypeRef, data)
open fun visitErrorTypeRef(errorTypeRef: FirErrorTypeRef, data: D): R =
visitElement(errorTypeRef, data)
open fun visitTypeRefWithNullability(typeRefWithNullability: FirTypeRefWithNullability, data: D): R = visitElement(typeRefWithNullability, data)
open fun visitTypeRefWithNullability(typeRefWithNullability: FirTypeRefWithNullability, data: D): R =
visitElement(typeRefWithNullability, data)
open fun visitUserTypeRef(userTypeRef: FirUserTypeRef, data: D): R = visitElement(userTypeRef, data)
open fun visitUserTypeRef(userTypeRef: FirUserTypeRef, data: D): R =
visitElement(userTypeRef, data)
open fun visitDynamicTypeRef(dynamicTypeRef: FirDynamicTypeRef, data: D): R = visitElement(dynamicTypeRef, data)
open fun visitDynamicTypeRef(dynamicTypeRef: FirDynamicTypeRef, data: D): R =
visitElement(dynamicTypeRef, data)
open fun visitFunctionTypeRef(functionTypeRef: FirFunctionTypeRef, data: D): R = visitElement(functionTypeRef, data)
open fun visitFunctionTypeRef(functionTypeRef: FirFunctionTypeRef, data: D): R =
visitElement(functionTypeRef, data)
open fun visitIntersectionTypeRef(intersectionTypeRef: FirIntersectionTypeRef, data: D): R = visitElement(intersectionTypeRef, data)
open fun visitIntersectionTypeRef(intersectionTypeRef: FirIntersectionTypeRef, data: D): R =
visitElement(intersectionTypeRef, data)
open fun visitImplicitTypeRef(implicitTypeRef: FirImplicitTypeRef, data: D): R = visitElement(implicitTypeRef, data)
open fun visitImplicitTypeRef(implicitTypeRef: FirImplicitTypeRef, data: D): R =
visitElement(implicitTypeRef, data)
open fun visitContractElementDeclaration(contractElementDeclaration: FirContractElementDeclaration, data: D): R = visitElement(contractElementDeclaration, data)
open fun visitContractElementDeclaration(contractElementDeclaration: FirContractElementDeclaration, data: D): R =
visitElement(contractElementDeclaration, data)
open fun visitEffectDeclaration(effectDeclaration: FirEffectDeclaration, data: D): R = visitElement(effectDeclaration, data)
open fun visitEffectDeclaration(effectDeclaration: FirEffectDeclaration, data: D): R =
visitElement(effectDeclaration, data)
open fun visitContractDescription(contractDescription: FirContractDescription, data: D): R = visitElement(contractDescription, data)
open fun visitContractDescription(contractDescription: FirContractDescription, data: D): R =
visitElement(contractDescription, data)
open fun visitLegacyRawContractDescription(legacyRawContractDescription: FirLegacyRawContractDescription, data: D): R = visitElement(legacyRawContractDescription, data)
open fun visitLegacyRawContractDescription(legacyRawContractDescription: FirLegacyRawContractDescription, data: D): R =
visitElement(legacyRawContractDescription, data)
open fun visitRawContractDescription(rawContractDescription: FirRawContractDescription, data: D): R = visitElement(rawContractDescription, data)
open fun visitRawContractDescription(rawContractDescription: FirRawContractDescription, data: D): R =
visitElement(rawContractDescription, data)
open fun visitResolvedContractDescription(resolvedContractDescription: FirResolvedContractDescription, data: D): R = visitElement(resolvedContractDescription, data)
open fun visitResolvedContractDescription(resolvedContractDescription: FirResolvedContractDescription, data: D): R =
visitElement(resolvedContractDescription, data)
}
@@ -16,167 +16,249 @@ interface IrElementVisitor<out R, in D> {
fun visitElement(element: IrElement, data: D): R
fun visitDeclaration(declaration: IrDeclarationBase, data: D): R = visitElement(declaration, data)
fun visitDeclaration(declaration: IrDeclarationBase, data: D): R =
visitElement(declaration, data)
fun visitValueParameter(declaration: IrValueParameter, data: D): R = visitDeclaration(declaration, data)
fun visitValueParameter(declaration: IrValueParameter, data: D): R =
visitDeclaration(declaration, data)
fun visitClass(declaration: IrClass, data: D): R = visitDeclaration(declaration, data)
fun visitClass(declaration: IrClass, data: D): R =
visitDeclaration(declaration, data)
fun visitAnonymousInitializer(declaration: IrAnonymousInitializer, data: D): R = visitDeclaration(declaration, data)
fun visitAnonymousInitializer(declaration: IrAnonymousInitializer, data: D): R =
visitDeclaration(declaration, data)
fun visitTypeParameter(declaration: IrTypeParameter, data: D): R = visitDeclaration(declaration, data)
fun visitTypeParameter(declaration: IrTypeParameter, data: D): R =
visitDeclaration(declaration, data)
fun visitFunction(declaration: IrFunction, data: D): R = visitDeclaration(declaration, data)
fun visitFunction(declaration: IrFunction, data: D): R =
visitDeclaration(declaration, data)
fun visitConstructor(declaration: IrConstructor, data: D): R = visitFunction(declaration, data)
fun visitConstructor(declaration: IrConstructor, data: D): R =
visitFunction(declaration, data)
fun visitEnumEntry(declaration: IrEnumEntry, data: D): R = visitDeclaration(declaration, data)
fun visitEnumEntry(declaration: IrEnumEntry, data: D): R =
visitDeclaration(declaration, data)
fun visitErrorDeclaration(declaration: IrErrorDeclaration, data: D): R = visitDeclaration(declaration, data)
fun visitErrorDeclaration(declaration: IrErrorDeclaration, data: D): R =
visitDeclaration(declaration, data)
fun visitField(declaration: IrField, data: D): R = visitDeclaration(declaration, data)
fun visitField(declaration: IrField, data: D): R =
visitDeclaration(declaration, data)
fun visitLocalDelegatedProperty(declaration: IrLocalDelegatedProperty, data: D): R = visitDeclaration(declaration, data)
fun visitLocalDelegatedProperty(declaration: IrLocalDelegatedProperty, data: D): R =
visitDeclaration(declaration, data)
fun visitModuleFragment(declaration: IrModuleFragment, data: D): R = visitElement(declaration, data)
fun visitModuleFragment(declaration: IrModuleFragment, data: D): R =
visitElement(declaration, data)
fun visitProperty(declaration: IrProperty, data: D): R = visitDeclaration(declaration, data)
fun visitProperty(declaration: IrProperty, data: D): R =
visitDeclaration(declaration, data)
fun visitScript(declaration: IrScript, data: D): R = visitDeclaration(declaration, data)
fun visitScript(declaration: IrScript, data: D): R =
visitDeclaration(declaration, data)
fun visitSimpleFunction(declaration: IrSimpleFunction, data: D): R = visitFunction(declaration, data)
fun visitSimpleFunction(declaration: IrSimpleFunction, data: D): R =
visitFunction(declaration, data)
fun visitTypeAlias(declaration: IrTypeAlias, data: D): R = visitDeclaration(declaration, data)
fun visitTypeAlias(declaration: IrTypeAlias, data: D): R =
visitDeclaration(declaration, data)
fun visitVariable(declaration: IrVariable, data: D): R = visitDeclaration(declaration, data)
fun visitVariable(declaration: IrVariable, data: D): R =
visitDeclaration(declaration, data)
fun visitPackageFragment(declaration: IrPackageFragment, data: D): R = visitElement(declaration, data)
fun visitPackageFragment(declaration: IrPackageFragment, data: D): R =
visitElement(declaration, data)
fun visitExternalPackageFragment(declaration: IrExternalPackageFragment, data: D): R = visitPackageFragment(declaration, data)
fun visitExternalPackageFragment(declaration: IrExternalPackageFragment, data: D): R =
visitPackageFragment(declaration, data)
fun visitFile(declaration: IrFile, data: D): R = visitPackageFragment(declaration, data)
fun visitFile(declaration: IrFile, data: D): R =
visitPackageFragment(declaration, data)
fun visitExpression(expression: IrExpression, data: D): R = visitElement(expression, data)
fun visitExpression(expression: IrExpression, data: D): R =
visitElement(expression, data)
fun visitBody(body: IrBody, data: D): R = visitElement(body, data)
fun visitBody(body: IrBody, data: D): R =
visitElement(body, data)
fun visitExpressionBody(body: IrExpressionBody, data: D): R = visitBody(body, data)
fun visitExpressionBody(body: IrExpressionBody, data: D): R =
visitBody(body, data)
fun visitBlockBody(body: IrBlockBody, data: D): R = visitBody(body, data)
fun visitBlockBody(body: IrBlockBody, data: D): R =
visitBody(body, data)
fun visitDeclarationReference(expression: IrDeclarationReference, data: D): R = visitExpression(expression, data)
fun visitDeclarationReference(expression: IrDeclarationReference, data: D): R =
visitExpression(expression, data)
fun visitMemberAccess(expression: IrMemberAccessExpression<*>, data: D): R = visitDeclarationReference(expression, data)
fun visitMemberAccess(expression: IrMemberAccessExpression<*>, data: D): R =
visitDeclarationReference(expression, data)
fun visitFunctionAccess(expression: IrFunctionAccessExpression, data: D): R = visitMemberAccess(expression, data)
fun visitFunctionAccess(expression: IrFunctionAccessExpression, data: D): R =
visitMemberAccess(expression, data)
fun visitConstructorCall(expression: IrConstructorCall, data: D): R = visitFunctionAccess(expression, data)
fun visitConstructorCall(expression: IrConstructorCall, data: D): R =
visitFunctionAccess(expression, data)
fun visitSingletonReference(expression: IrGetSingletonValue, data: D): R = visitDeclarationReference(expression, data)
fun visitSingletonReference(expression: IrGetSingletonValue, data: D): R =
visitDeclarationReference(expression, data)
fun visitGetObjectValue(expression: IrGetObjectValue, data: D): R = visitSingletonReference(expression, data)
fun visitGetObjectValue(expression: IrGetObjectValue, data: D): R =
visitSingletonReference(expression, data)
fun visitGetEnumValue(expression: IrGetEnumValue, data: D): R = visitSingletonReference(expression, data)
fun visitGetEnumValue(expression: IrGetEnumValue, data: D): R =
visitSingletonReference(expression, data)
fun visitRawFunctionReference(expression: IrRawFunctionReference, data: D): R = visitDeclarationReference(expression, data)
fun visitRawFunctionReference(expression: IrRawFunctionReference, data: D): R =
visitDeclarationReference(expression, data)
fun visitContainerExpression(expression: IrContainerExpression, data: D): R = visitExpression(expression, data)
fun visitContainerExpression(expression: IrContainerExpression, data: D): R =
visitExpression(expression, data)
fun visitBlock(expression: IrBlock, data: D): R = visitContainerExpression(expression, data)
fun visitBlock(expression: IrBlock, data: D): R =
visitContainerExpression(expression, data)
fun visitComposite(expression: IrComposite, data: D): R = visitContainerExpression(expression, data)
fun visitComposite(expression: IrComposite, data: D): R =
visitContainerExpression(expression, data)
fun visitSyntheticBody(body: IrSyntheticBody, data: D): R = visitBody(body, data)
fun visitSyntheticBody(body: IrSyntheticBody, data: D): R =
visitBody(body, data)
fun visitBreakContinue(jump: IrBreakContinue, data: D): R = visitExpression(jump, data)
fun visitBreakContinue(jump: IrBreakContinue, data: D): R =
visitExpression(jump, data)
fun visitBreak(jump: IrBreak, data: D): R = visitBreakContinue(jump, data)
fun visitBreak(jump: IrBreak, data: D): R =
visitBreakContinue(jump, data)
fun visitContinue(jump: IrContinue, data: D): R = visitBreakContinue(jump, data)
fun visitContinue(jump: IrContinue, data: D): R =
visitBreakContinue(jump, data)
fun visitCall(expression: IrCall, data: D): R = visitFunctionAccess(expression, data)
fun visitCall(expression: IrCall, data: D): R =
visitFunctionAccess(expression, data)
fun visitCallableReference(expression: IrCallableReference<*>, data: D): R = visitMemberAccess(expression, data)
fun visitCallableReference(expression: IrCallableReference<*>, data: D): R =
visitMemberAccess(expression, data)
fun visitFunctionReference(expression: IrFunctionReference, data: D): R = visitCallableReference(expression, data)
fun visitFunctionReference(expression: IrFunctionReference, data: D): R =
visitCallableReference(expression, data)
fun visitPropertyReference(expression: IrPropertyReference, data: D): R = visitCallableReference(expression, data)
fun visitPropertyReference(expression: IrPropertyReference, data: D): R =
visitCallableReference(expression, data)
fun visitLocalDelegatedPropertyReference(expression: IrLocalDelegatedPropertyReference, data: D): R = visitCallableReference(expression, data)
fun visitLocalDelegatedPropertyReference(expression: IrLocalDelegatedPropertyReference, data: D): R =
visitCallableReference(expression, data)
fun visitClassReference(expression: IrClassReference, data: D): R = visitDeclarationReference(expression, data)
fun visitClassReference(expression: IrClassReference, data: D): R =
visitDeclarationReference(expression, data)
fun visitConst(expression: IrConst<*>, data: D): R = visitExpression(expression, data)
fun visitConst(expression: IrConst<*>, data: D): R =
visitExpression(expression, data)
fun visitConstantValue(expression: IrConstantValue, data: D): R = visitExpression(expression, data)
fun visitConstantValue(expression: IrConstantValue, data: D): R =
visitExpression(expression, data)
fun visitConstantPrimitive(expression: IrConstantPrimitive, data: D): R = visitConstantValue(expression, data)
fun visitConstantPrimitive(expression: IrConstantPrimitive, data: D): R =
visitConstantValue(expression, data)
fun visitConstantObject(expression: IrConstantObject, data: D): R = visitConstantValue(expression, data)
fun visitConstantObject(expression: IrConstantObject, data: D): R =
visitConstantValue(expression, data)
fun visitConstantArray(expression: IrConstantArray, data: D): R = visitConstantValue(expression, data)
fun visitConstantArray(expression: IrConstantArray, data: D): R =
visitConstantValue(expression, data)
fun visitDelegatingConstructorCall(expression: IrDelegatingConstructorCall, data: D): R = visitFunctionAccess(expression, data)
fun visitDelegatingConstructorCall(expression: IrDelegatingConstructorCall, data: D): R =
visitFunctionAccess(expression, data)
fun visitDynamicExpression(expression: IrDynamicExpression, data: D): R = visitExpression(expression, data)
fun visitDynamicExpression(expression: IrDynamicExpression, data: D): R =
visitExpression(expression, data)
fun visitDynamicOperatorExpression(expression: IrDynamicOperatorExpression, data: D): R = visitDynamicExpression(expression, data)
fun visitDynamicOperatorExpression(expression: IrDynamicOperatorExpression, data: D): R =
visitDynamicExpression(expression, data)
fun visitDynamicMemberExpression(expression: IrDynamicMemberExpression, data: D): R = visitDynamicExpression(expression, data)
fun visitDynamicMemberExpression(expression: IrDynamicMemberExpression, data: D): R =
visitDynamicExpression(expression, data)
fun visitEnumConstructorCall(expression: IrEnumConstructorCall, data: D): R = visitFunctionAccess(expression, data)
fun visitEnumConstructorCall(expression: IrEnumConstructorCall, data: D): R =
visitFunctionAccess(expression, data)
fun visitErrorExpression(expression: IrErrorExpression, data: D): R = visitExpression(expression, data)
fun visitErrorExpression(expression: IrErrorExpression, data: D): R =
visitExpression(expression, data)
fun visitErrorCallExpression(expression: IrErrorCallExpression, data: D): R = visitErrorExpression(expression, data)
fun visitErrorCallExpression(expression: IrErrorCallExpression, data: D): R =
visitErrorExpression(expression, data)
fun visitFieldAccess(expression: IrFieldAccessExpression, data: D): R = visitDeclarationReference(expression, data)
fun visitFieldAccess(expression: IrFieldAccessExpression, data: D): R =
visitDeclarationReference(expression, data)
fun visitGetField(expression: IrGetField, data: D): R = visitFieldAccess(expression, data)
fun visitGetField(expression: IrGetField, data: D): R =
visitFieldAccess(expression, data)
fun visitSetField(expression: IrSetField, data: D): R = visitFieldAccess(expression, data)
fun visitSetField(expression: IrSetField, data: D): R =
visitFieldAccess(expression, data)
fun visitFunctionExpression(expression: IrFunctionExpression, data: D): R = visitExpression(expression, data)
fun visitFunctionExpression(expression: IrFunctionExpression, data: D): R =
visitExpression(expression, data)
fun visitGetClass(expression: IrGetClass, data: D): R = visitExpression(expression, data)
fun visitGetClass(expression: IrGetClass, data: D): R =
visitExpression(expression, data)
fun visitInstanceInitializerCall(expression: IrInstanceInitializerCall, data: D): R = visitExpression(expression, data)
fun visitInstanceInitializerCall(expression: IrInstanceInitializerCall, data: D): R =
visitExpression(expression, data)
fun visitLoop(loop: IrLoop, data: D): R = visitExpression(loop, data)
fun visitLoop(loop: IrLoop, data: D): R =
visitExpression(loop, data)
fun visitWhileLoop(loop: IrWhileLoop, data: D): R = visitLoop(loop, data)
fun visitWhileLoop(loop: IrWhileLoop, data: D): R =
visitLoop(loop, data)
fun visitDoWhileLoop(loop: IrDoWhileLoop, data: D): R = visitLoop(loop, data)
fun visitDoWhileLoop(loop: IrDoWhileLoop, data: D): R =
visitLoop(loop, data)
fun visitReturn(expression: IrReturn, data: D): R = visitExpression(expression, data)
fun visitReturn(expression: IrReturn, data: D): R =
visitExpression(expression, data)
fun visitStringConcatenation(expression: IrStringConcatenation, data: D): R = visitExpression(expression, data)
fun visitStringConcatenation(expression: IrStringConcatenation, data: D): R =
visitExpression(expression, data)
fun visitSuspensionPoint(expression: IrSuspensionPoint, data: D): R = visitExpression(expression, data)
fun visitSuspensionPoint(expression: IrSuspensionPoint, data: D): R =
visitExpression(expression, data)
fun visitSuspendableExpression(expression: IrSuspendableExpression, data: D): R = visitExpression(expression, data)
fun visitSuspendableExpression(expression: IrSuspendableExpression, data: D): R =
visitExpression(expression, data)
fun visitThrow(expression: IrThrow, data: D): R = visitExpression(expression, data)
fun visitThrow(expression: IrThrow, data: D): R =
visitExpression(expression, data)
fun visitTry(aTry: IrTry, data: D): R = visitExpression(aTry, data)
fun visitTry(aTry: IrTry, data: D): R =
visitExpression(aTry, data)
fun visitCatch(aCatch: IrCatch, data: D): R = visitElement(aCatch, data)
fun visitCatch(aCatch: IrCatch, data: D): R =
visitElement(aCatch, data)
fun visitTypeOperator(expression: IrTypeOperatorCall, data: D): R = visitExpression(expression, data)
fun visitTypeOperator(expression: IrTypeOperatorCall, data: D): R =
visitExpression(expression, data)
fun visitValueAccess(expression: IrValueAccessExpression, data: D): R = visitDeclarationReference(expression, data)
fun visitValueAccess(expression: IrValueAccessExpression, data: D): R =
visitDeclarationReference(expression, data)
fun visitGetValue(expression: IrGetValue, data: D): R = visitValueAccess(expression, data)
fun visitGetValue(expression: IrGetValue, data: D): R =
visitValueAccess(expression, data)
fun visitSetValue(expression: IrSetValue, data: D): R = visitValueAccess(expression, data)
fun visitSetValue(expression: IrSetValue, data: D): R =
visitValueAccess(expression, data)
fun visitVararg(expression: IrVararg, data: D): R = visitExpression(expression, data)
fun visitVararg(expression: IrVararg, data: D): R =
visitExpression(expression, data)
fun visitSpreadElement(spread: IrSpreadElement, data: D): R = visitElement(spread, data)
fun visitSpreadElement(spread: IrSpreadElement, data: D): R =
visitElement(spread, data)
fun visitWhen(expression: IrWhen, data: D): R = visitExpression(expression, data)
fun visitWhen(expression: IrWhen, data: D): R =
visitExpression(expression, data)
fun visitBranch(branch: IrBranch, data: D): R = visitElement(branch, data)
fun visitBranch(branch: IrBranch, data: D): R =
visitElement(branch, data)
fun visitElseBranch(branch: IrElseBranch, data: D): R = visitBranch(branch, data)
fun visitElseBranch(branch: IrElseBranch, data: D): R =
visitBranch(branch, data)
}
@@ -121,7 +121,10 @@ abstract class AbstractVisitorPrinter<Element : AbstractElement<Element, Field>,
override = parentInVisitor != null && visitorSuperType != null,
)
if (parentInVisitor != null) {
print(" = ", parentInVisitor.visitFunctionName, "(", element.visitorParameterName, ", data)")
println(" =")
withIndent {
print(parentInVisitor.visitFunctionName, "(", element.visitorParameterName, ", data)")
}
}
println()
}