/*
 * Copyright 2010-2024 JetBrains s.r.o. and Kotlin Programming Language contributors.
 * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
 */

// This file was generated automatically. See compiler/ir/ir.tree/tree-generator/ReadMe.md.
// DO NOT MODIFY IT MANUALLY.

package org.jetbrains.kotlin.ir.util

import org.jetbrains.kotlin.ir.IrElement
import org.jetbrains.kotlin.ir.symbols.*

/**
 * Auto-generated by [org.jetbrains.kotlin.ir.generator.print.symbol.DeclaredSymbolVisitorInterfacePrinter]
 */
interface DeclaredSymbolVisitor {

    fun visitDeclaredValueParameter(container: IrElement, symbol: IrValueParameterSymbol) { visitDeclaredSymbol(container, symbol) }

    fun visitDeclaredClass(container: IrElement, symbol: IrClassSymbol) { visitDeclaredSymbol(container, symbol) }

    fun visitDeclaredAnonymousInitializer(container: IrElement, symbol: IrAnonymousInitializerSymbol) { visitDeclaredSymbol(container, symbol) }

    fun visitDeclaredTypeParameter(container: IrElement, symbol: IrTypeParameterSymbol) { visitDeclaredSymbol(container, symbol) }

    fun visitDeclaredConstructor(container: IrElement, symbol: IrConstructorSymbol) { visitDeclaredSymbol(container, symbol) }

    fun visitDeclaredEnumEntry(container: IrElement, symbol: IrEnumEntrySymbol) { visitDeclaredSymbol(container, symbol) }

    fun visitDeclaredSimpleFunction(container: IrElement, symbol: IrSimpleFunctionSymbol) { visitDeclaredSymbol(container, symbol) }

    fun visitDeclaredProperty(container: IrElement, symbol: IrPropertySymbol) { visitDeclaredSymbol(container, symbol) }

    fun visitDeclaredField(container: IrElement, symbol: IrFieldSymbol) { visitDeclaredSymbol(container, symbol) }

    fun visitDeclaredLocalDelegatedProperty(container: IrElement, symbol: IrLocalDelegatedPropertySymbol) { visitDeclaredSymbol(container, symbol) }

    fun visitDeclaredScript(container: IrElement, symbol: IrScriptSymbol) { visitDeclaredSymbol(container, symbol) }

    fun visitDeclaredReplSnippet(container: IrElement, symbol: IrReplSnippetSymbol) { visitDeclaredSymbol(container, symbol) }

    fun visitDeclaredTypeAlias(container: IrElement, symbol: IrTypeAliasSymbol) { visitDeclaredSymbol(container, symbol) }

    fun visitDeclaredVariable(container: IrElement, symbol: IrVariableSymbol) { visitDeclaredSymbol(container, symbol) }

    fun visitDeclaredExternalPackageFragment(container: IrElement, symbol: IrExternalPackageFragmentSymbol) { visitDeclaredSymbol(container, symbol) }

    fun visitDeclaredFile(container: IrElement, symbol: IrFileSymbol) { visitDeclaredSymbol(container, symbol) }

    fun visitDeclaredReturnableBlock(container: IrElement, symbol: IrReturnableBlockSymbol) { visitDeclaredSymbol(container, symbol) }

    fun visitDeclaredSymbol(container: IrElement, symbol: IrSymbol)
}
