[FIR] Introduce FirAnnotatedDeclaration
This commit is contained in:
+32
@@ -0,0 +1,32 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2010-2020 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package org.jetbrains.kotlin.fir.declarations
|
||||||
|
|
||||||
|
import org.jetbrains.kotlin.fir.FirAnnotationContainer
|
||||||
|
import org.jetbrains.kotlin.fir.FirSession
|
||||||
|
import org.jetbrains.kotlin.fir.FirSourceElement
|
||||||
|
import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall
|
||||||
|
import org.jetbrains.kotlin.fir.visitors.*
|
||||||
|
|
||||||
|
/*
|
||||||
|
* This file was generated automatically
|
||||||
|
* DO NOT MODIFY IT MANUALLY
|
||||||
|
*/
|
||||||
|
|
||||||
|
interface FirAnnotatedDeclaration : FirDeclaration, FirAnnotationContainer {
|
||||||
|
override val source: FirSourceElement?
|
||||||
|
override val session: FirSession
|
||||||
|
override val resolvePhase: FirResolvePhase
|
||||||
|
override val origin: FirDeclarationOrigin
|
||||||
|
override val attributes: FirDeclarationAttributes
|
||||||
|
override val annotations: List<FirAnnotationCall>
|
||||||
|
|
||||||
|
override fun <R, D> accept(visitor: FirVisitor<R, D>, data: D): R = visitor.visitAnnotatedDeclaration(this, data)
|
||||||
|
|
||||||
|
override fun replaceResolvePhase(newResolvePhase: FirResolvePhase)
|
||||||
|
|
||||||
|
override fun <D> transformAnnotations(transformer: FirTransformer<D>, data: D): FirAnnotatedDeclaration
|
||||||
|
}
|
||||||
@@ -6,7 +6,6 @@
|
|||||||
package org.jetbrains.kotlin.fir.declarations
|
package org.jetbrains.kotlin.fir.declarations
|
||||||
|
|
||||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||||
import org.jetbrains.kotlin.fir.FirAnnotationContainer
|
|
||||||
import org.jetbrains.kotlin.fir.FirSession
|
import org.jetbrains.kotlin.fir.FirSession
|
||||||
import org.jetbrains.kotlin.fir.FirSourceElement
|
import org.jetbrains.kotlin.fir.FirSourceElement
|
||||||
import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall
|
import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall
|
||||||
@@ -21,7 +20,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
|||||||
* DO NOT MODIFY IT MANUALLY
|
* DO NOT MODIFY IT MANUALLY
|
||||||
*/
|
*/
|
||||||
|
|
||||||
interface FirClass<F : FirClass<F>> : FirClassLikeDeclaration<F>, FirStatement, FirAnnotationContainer, FirTypeParameterRefsOwner {
|
interface FirClass<F : FirClass<F>> : FirClassLikeDeclaration<F>, FirStatement, FirTypeParameterRefsOwner {
|
||||||
override val source: FirSourceElement?
|
override val source: FirSourceElement?
|
||||||
override val session: FirSession
|
override val session: FirSession
|
||||||
override val resolvePhase: FirResolvePhase
|
override val resolvePhase: FirResolvePhase
|
||||||
|
|||||||
+1
-1
@@ -18,7 +18,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
|||||||
* DO NOT MODIFY IT MANUALLY
|
* DO NOT MODIFY IT MANUALLY
|
||||||
*/
|
*/
|
||||||
|
|
||||||
interface FirClassLikeDeclaration<F : FirClassLikeDeclaration<F>> : FirDeclaration, FirStatement, FirSymbolOwner<F> {
|
interface FirClassLikeDeclaration<F : FirClassLikeDeclaration<F>> : FirAnnotatedDeclaration, FirStatement, FirSymbolOwner<F> {
|
||||||
override val source: FirSourceElement?
|
override val source: FirSourceElement?
|
||||||
override val session: FirSession
|
override val session: FirSession
|
||||||
override val resolvePhase: FirResolvePhase
|
override val resolvePhase: FirResolvePhase
|
||||||
|
|||||||
@@ -5,7 +5,6 @@
|
|||||||
|
|
||||||
package org.jetbrains.kotlin.fir.declarations
|
package org.jetbrains.kotlin.fir.declarations
|
||||||
|
|
||||||
import org.jetbrains.kotlin.fir.FirAnnotationContainer
|
|
||||||
import org.jetbrains.kotlin.fir.FirPureAbstractElement
|
import org.jetbrains.kotlin.fir.FirPureAbstractElement
|
||||||
import org.jetbrains.kotlin.fir.FirSession
|
import org.jetbrains.kotlin.fir.FirSession
|
||||||
import org.jetbrains.kotlin.fir.FirSourceElement
|
import org.jetbrains.kotlin.fir.FirSourceElement
|
||||||
@@ -18,13 +17,13 @@ import org.jetbrains.kotlin.fir.visitors.*
|
|||||||
* DO NOT MODIFY IT MANUALLY
|
* DO NOT MODIFY IT MANUALLY
|
||||||
*/
|
*/
|
||||||
|
|
||||||
abstract class FirFile : FirPureAbstractElement(), FirAnnotationContainer, FirDeclaration {
|
abstract class FirFile : FirPureAbstractElement(), FirAnnotatedDeclaration {
|
||||||
abstract override val source: FirSourceElement?
|
abstract override val source: FirSourceElement?
|
||||||
abstract override val annotations: List<FirAnnotationCall>
|
|
||||||
abstract override val session: FirSession
|
abstract override val session: FirSession
|
||||||
abstract override val resolvePhase: FirResolvePhase
|
abstract override val resolvePhase: FirResolvePhase
|
||||||
abstract override val origin: FirDeclarationOrigin
|
abstract override val origin: FirDeclarationOrigin
|
||||||
abstract override val attributes: FirDeclarationAttributes
|
abstract override val attributes: FirDeclarationAttributes
|
||||||
|
abstract override val annotations: List<FirAnnotationCall>
|
||||||
abstract val imports: List<FirImport>
|
abstract val imports: List<FirImport>
|
||||||
abstract val declarations: List<FirDeclaration>
|
abstract val declarations: List<FirDeclaration>
|
||||||
abstract val name: String
|
abstract val name: String
|
||||||
|
|||||||
@@ -5,7 +5,6 @@
|
|||||||
|
|
||||||
package org.jetbrains.kotlin.fir.declarations
|
package org.jetbrains.kotlin.fir.declarations
|
||||||
|
|
||||||
import org.jetbrains.kotlin.fir.FirAnnotationContainer
|
|
||||||
import org.jetbrains.kotlin.fir.FirSession
|
import org.jetbrains.kotlin.fir.FirSession
|
||||||
import org.jetbrains.kotlin.fir.FirSourceElement
|
import org.jetbrains.kotlin.fir.FirSourceElement
|
||||||
import org.jetbrains.kotlin.fir.FirTargetElement
|
import org.jetbrains.kotlin.fir.FirTargetElement
|
||||||
@@ -22,7 +21,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
|||||||
* DO NOT MODIFY IT MANUALLY
|
* DO NOT MODIFY IT MANUALLY
|
||||||
*/
|
*/
|
||||||
|
|
||||||
interface FirFunction<F : FirFunction<F>> : FirCallableDeclaration<F>, FirTargetElement, FirAnnotationContainer, FirTypeParameterRefsOwner, FirStatement {
|
interface FirFunction<F : FirFunction<F>> : FirCallableDeclaration<F>, FirTargetElement, FirTypeParameterRefsOwner, FirStatement {
|
||||||
override val source: FirSourceElement?
|
override val source: FirSourceElement?
|
||||||
override val session: FirSession
|
override val session: FirSession
|
||||||
override val resolvePhase: FirResolvePhase
|
override val resolvePhase: FirResolvePhase
|
||||||
|
|||||||
@@ -5,7 +5,6 @@
|
|||||||
|
|
||||||
package org.jetbrains.kotlin.fir.declarations
|
package org.jetbrains.kotlin.fir.declarations
|
||||||
|
|
||||||
import org.jetbrains.kotlin.fir.FirAnnotationContainer
|
|
||||||
import org.jetbrains.kotlin.fir.FirSession
|
import org.jetbrains.kotlin.fir.FirSession
|
||||||
import org.jetbrains.kotlin.fir.FirSourceElement
|
import org.jetbrains.kotlin.fir.FirSourceElement
|
||||||
import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall
|
import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall
|
||||||
@@ -16,7 +15,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
|||||||
* DO NOT MODIFY IT MANUALLY
|
* DO NOT MODIFY IT MANUALLY
|
||||||
*/
|
*/
|
||||||
|
|
||||||
interface FirMemberDeclaration : FirDeclaration, FirAnnotationContainer {
|
interface FirMemberDeclaration : FirAnnotatedDeclaration {
|
||||||
override val source: FirSourceElement?
|
override val source: FirSourceElement?
|
||||||
override val session: FirSession
|
override val session: FirSession
|
||||||
override val resolvePhase: FirResolvePhase
|
override val resolvePhase: FirResolvePhase
|
||||||
|
|||||||
@@ -5,7 +5,6 @@
|
|||||||
|
|
||||||
package org.jetbrains.kotlin.fir.declarations
|
package org.jetbrains.kotlin.fir.declarations
|
||||||
|
|
||||||
import org.jetbrains.kotlin.fir.FirAnnotationContainer
|
|
||||||
import org.jetbrains.kotlin.fir.FirPureAbstractElement
|
import org.jetbrains.kotlin.fir.FirPureAbstractElement
|
||||||
import org.jetbrains.kotlin.fir.FirSession
|
import org.jetbrains.kotlin.fir.FirSession
|
||||||
import org.jetbrains.kotlin.fir.FirSourceElement
|
import org.jetbrains.kotlin.fir.FirSourceElement
|
||||||
@@ -22,7 +21,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
|||||||
* DO NOT MODIFY IT MANUALLY
|
* DO NOT MODIFY IT MANUALLY
|
||||||
*/
|
*/
|
||||||
|
|
||||||
abstract class FirTypeParameter : FirPureAbstractElement(), FirTypeParameterRef, FirDeclaration, FirSymbolOwner<FirTypeParameter>, FirAnnotationContainer {
|
abstract class FirTypeParameter : FirPureAbstractElement(), FirTypeParameterRef, FirAnnotatedDeclaration, FirSymbolOwner<FirTypeParameter> {
|
||||||
abstract override val source: FirSourceElement?
|
abstract override val source: FirSourceElement?
|
||||||
abstract override val session: FirSession
|
abstract override val session: FirSession
|
||||||
abstract override val resolvePhase: FirResolvePhase
|
abstract override val resolvePhase: FirResolvePhase
|
||||||
|
|||||||
@@ -5,7 +5,6 @@
|
|||||||
|
|
||||||
package org.jetbrains.kotlin.fir.declarations
|
package org.jetbrains.kotlin.fir.declarations
|
||||||
|
|
||||||
import org.jetbrains.kotlin.fir.FirAnnotationContainer
|
|
||||||
import org.jetbrains.kotlin.fir.FirSession
|
import org.jetbrains.kotlin.fir.FirSession
|
||||||
import org.jetbrains.kotlin.fir.FirSourceElement
|
import org.jetbrains.kotlin.fir.FirSourceElement
|
||||||
import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall
|
import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall
|
||||||
@@ -17,7 +16,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
|||||||
* DO NOT MODIFY IT MANUALLY
|
* DO NOT MODIFY IT MANUALLY
|
||||||
*/
|
*/
|
||||||
|
|
||||||
interface FirTypedDeclaration : FirDeclaration, FirAnnotationContainer {
|
interface FirTypedDeclaration : FirAnnotatedDeclaration {
|
||||||
override val source: FirSourceElement?
|
override val source: FirSourceElement?
|
||||||
override val session: FirSession
|
override val session: FirSession
|
||||||
override val resolvePhase: FirResolvePhase
|
override val resolvePhase: FirResolvePhase
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
|||||||
* DO NOT MODIFY IT MANUALLY
|
* DO NOT MODIFY IT MANUALLY
|
||||||
*/
|
*/
|
||||||
|
|
||||||
abstract class FirVariable<F : FirVariable<F>> : FirPureAbstractElement(), FirCallableDeclaration<F>, FirDeclaration, FirStatement {
|
abstract class FirVariable<F : FirVariable<F>> : FirPureAbstractElement(), FirCallableDeclaration<F>, FirAnnotatedDeclaration, FirStatement {
|
||||||
abstract override val source: FirSourceElement?
|
abstract override val source: FirSourceElement?
|
||||||
abstract override val session: FirSession
|
abstract override val session: FirSession
|
||||||
abstract override val resolvePhase: FirResolvePhase
|
abstract override val resolvePhase: FirResolvePhase
|
||||||
|
|||||||
+2
-2
@@ -29,10 +29,10 @@ import org.jetbrains.kotlin.name.FqName
|
|||||||
@FirBuilderDsl
|
@FirBuilderDsl
|
||||||
class FirFileBuilder : FirAnnotationContainerBuilder {
|
class FirFileBuilder : FirAnnotationContainerBuilder {
|
||||||
override var source: FirSourceElement? = null
|
override var source: FirSourceElement? = null
|
||||||
override val annotations: MutableList<FirAnnotationCall> = mutableListOf()
|
|
||||||
lateinit var session: FirSession
|
lateinit var session: FirSession
|
||||||
var resolvePhase: FirResolvePhase = FirResolvePhase.RAW_FIR
|
var resolvePhase: FirResolvePhase = FirResolvePhase.RAW_FIR
|
||||||
lateinit var origin: FirDeclarationOrigin
|
lateinit var origin: FirDeclarationOrigin
|
||||||
|
override val annotations: MutableList<FirAnnotationCall> = mutableListOf()
|
||||||
val imports: MutableList<FirImport> = mutableListOf()
|
val imports: MutableList<FirImport> = mutableListOf()
|
||||||
val declarations: MutableList<FirDeclaration> = mutableListOf()
|
val declarations: MutableList<FirDeclaration> = mutableListOf()
|
||||||
lateinit var name: String
|
lateinit var name: String
|
||||||
@@ -41,10 +41,10 @@ class FirFileBuilder : FirAnnotationContainerBuilder {
|
|||||||
override fun build(): FirFile {
|
override fun build(): FirFile {
|
||||||
return FirFileImpl(
|
return FirFileImpl(
|
||||||
source,
|
source,
|
||||||
annotations,
|
|
||||||
session,
|
session,
|
||||||
resolvePhase,
|
resolvePhase,
|
||||||
origin,
|
origin,
|
||||||
|
annotations,
|
||||||
imports,
|
imports,
|
||||||
declarations,
|
declarations,
|
||||||
name,
|
name,
|
||||||
|
|||||||
@@ -24,10 +24,10 @@ import org.jetbrains.kotlin.fir.visitors.*
|
|||||||
|
|
||||||
internal class FirFileImpl(
|
internal class FirFileImpl(
|
||||||
override val source: FirSourceElement?,
|
override val source: FirSourceElement?,
|
||||||
override val annotations: MutableList<FirAnnotationCall>,
|
|
||||||
override val session: FirSession,
|
override val session: FirSession,
|
||||||
override var resolvePhase: FirResolvePhase,
|
override var resolvePhase: FirResolvePhase,
|
||||||
override val origin: FirDeclarationOrigin,
|
override val origin: FirDeclarationOrigin,
|
||||||
|
override val annotations: MutableList<FirAnnotationCall>,
|
||||||
override val imports: MutableList<FirImport>,
|
override val imports: MutableList<FirImport>,
|
||||||
override val declarations: MutableList<FirDeclaration>,
|
override val declarations: MutableList<FirDeclaration>,
|
||||||
override val name: String,
|
override val name: String,
|
||||||
|
|||||||
@@ -5,7 +5,6 @@
|
|||||||
|
|
||||||
package org.jetbrains.kotlin.fir.expressions
|
package org.jetbrains.kotlin.fir.expressions
|
||||||
|
|
||||||
import org.jetbrains.kotlin.fir.FirAnnotationContainer
|
|
||||||
import org.jetbrains.kotlin.fir.FirLabel
|
import org.jetbrains.kotlin.fir.FirLabel
|
||||||
import org.jetbrains.kotlin.fir.FirPureAbstractElement
|
import org.jetbrains.kotlin.fir.FirPureAbstractElement
|
||||||
import org.jetbrains.kotlin.fir.FirSourceElement
|
import org.jetbrains.kotlin.fir.FirSourceElement
|
||||||
@@ -17,7 +16,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
|||||||
* DO NOT MODIFY IT MANUALLY
|
* DO NOT MODIFY IT MANUALLY
|
||||||
*/
|
*/
|
||||||
|
|
||||||
abstract class FirLoop : FirPureAbstractElement(), FirStatement, FirTargetElement, FirAnnotationContainer {
|
abstract class FirLoop : FirPureAbstractElement(), FirStatement, FirTargetElement {
|
||||||
abstract override val source: FirSourceElement?
|
abstract override val source: FirSourceElement?
|
||||||
abstract override val annotations: List<FirAnnotationCall>
|
abstract override val annotations: List<FirAnnotationCall>
|
||||||
abstract val block: FirBlock
|
abstract val block: FirBlock
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ import org.jetbrains.kotlin.fir.declarations.FirResolvedDeclarationStatus
|
|||||||
import org.jetbrains.kotlin.fir.expressions.FirStatement
|
import org.jetbrains.kotlin.fir.expressions.FirStatement
|
||||||
import org.jetbrains.kotlin.fir.expressions.FirExpression
|
import org.jetbrains.kotlin.fir.expressions.FirExpression
|
||||||
import org.jetbrains.kotlin.fir.declarations.FirDeclaration
|
import org.jetbrains.kotlin.fir.declarations.FirDeclaration
|
||||||
|
import org.jetbrains.kotlin.fir.declarations.FirAnnotatedDeclaration
|
||||||
import org.jetbrains.kotlin.fir.declarations.FirAnonymousInitializer
|
import org.jetbrains.kotlin.fir.declarations.FirAnonymousInitializer
|
||||||
import org.jetbrains.kotlin.fir.declarations.FirTypedDeclaration
|
import org.jetbrains.kotlin.fir.declarations.FirTypedDeclaration
|
||||||
import org.jetbrains.kotlin.fir.declarations.FirCallableDeclaration
|
import org.jetbrains.kotlin.fir.declarations.FirCallableDeclaration
|
||||||
@@ -191,6 +192,10 @@ abstract class FirTransformer<in D> : FirVisitor<CompositeTransformResult<FirEle
|
|||||||
return transformElement(declaration, data)
|
return transformElement(declaration, data)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
open fun transformAnnotatedDeclaration(annotatedDeclaration: FirAnnotatedDeclaration, data: D): CompositeTransformResult<FirDeclaration> {
|
||||||
|
return transformElement(annotatedDeclaration, data)
|
||||||
|
}
|
||||||
|
|
||||||
open fun transformAnonymousInitializer(anonymousInitializer: FirAnonymousInitializer, data: D): CompositeTransformResult<FirDeclaration> {
|
open fun transformAnonymousInitializer(anonymousInitializer: FirAnonymousInitializer, data: D): CompositeTransformResult<FirDeclaration> {
|
||||||
return transformElement(anonymousInitializer, data)
|
return transformElement(anonymousInitializer, data)
|
||||||
}
|
}
|
||||||
@@ -667,6 +672,10 @@ abstract class FirTransformer<in D> : FirVisitor<CompositeTransformResult<FirEle
|
|||||||
return transformDeclaration(declaration, data)
|
return transformDeclaration(declaration, data)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
final override fun visitAnnotatedDeclaration(annotatedDeclaration: FirAnnotatedDeclaration, data: D): CompositeTransformResult<FirDeclaration> {
|
||||||
|
return transformAnnotatedDeclaration(annotatedDeclaration, data)
|
||||||
|
}
|
||||||
|
|
||||||
final override fun visitAnonymousInitializer(anonymousInitializer: FirAnonymousInitializer, data: D): CompositeTransformResult<FirDeclaration> {
|
final override fun visitAnonymousInitializer(anonymousInitializer: FirAnonymousInitializer, data: D): CompositeTransformResult<FirDeclaration> {
|
||||||
return transformAnonymousInitializer(anonymousInitializer, data)
|
return transformAnonymousInitializer(anonymousInitializer, data)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ import org.jetbrains.kotlin.fir.declarations.FirResolvedDeclarationStatus
|
|||||||
import org.jetbrains.kotlin.fir.expressions.FirStatement
|
import org.jetbrains.kotlin.fir.expressions.FirStatement
|
||||||
import org.jetbrains.kotlin.fir.expressions.FirExpression
|
import org.jetbrains.kotlin.fir.expressions.FirExpression
|
||||||
import org.jetbrains.kotlin.fir.declarations.FirDeclaration
|
import org.jetbrains.kotlin.fir.declarations.FirDeclaration
|
||||||
|
import org.jetbrains.kotlin.fir.declarations.FirAnnotatedDeclaration
|
||||||
import org.jetbrains.kotlin.fir.declarations.FirAnonymousInitializer
|
import org.jetbrains.kotlin.fir.declarations.FirAnonymousInitializer
|
||||||
import org.jetbrains.kotlin.fir.declarations.FirTypedDeclaration
|
import org.jetbrains.kotlin.fir.declarations.FirTypedDeclaration
|
||||||
import org.jetbrains.kotlin.fir.declarations.FirCallableDeclaration
|
import org.jetbrains.kotlin.fir.declarations.FirCallableDeclaration
|
||||||
@@ -161,6 +162,8 @@ abstract class FirVisitor<out R, in D> {
|
|||||||
|
|
||||||
open fun visitDeclaration(declaration: FirDeclaration, data: D): R = visitElement(declaration, data)
|
open fun visitDeclaration(declaration: FirDeclaration, data: D): R = visitElement(declaration, data)
|
||||||
|
|
||||||
|
open fun visitAnnotatedDeclaration(annotatedDeclaration: FirAnnotatedDeclaration, data: D): R = visitElement(annotatedDeclaration, 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 visitTypedDeclaration(typedDeclaration: FirTypedDeclaration, data: D): R = visitElement(typedDeclaration, data)
|
open fun visitTypedDeclaration(typedDeclaration: FirTypedDeclaration, data: D): R = visitElement(typedDeclaration, data)
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ import org.jetbrains.kotlin.fir.declarations.FirResolvedDeclarationStatus
|
|||||||
import org.jetbrains.kotlin.fir.expressions.FirStatement
|
import org.jetbrains.kotlin.fir.expressions.FirStatement
|
||||||
import org.jetbrains.kotlin.fir.expressions.FirExpression
|
import org.jetbrains.kotlin.fir.expressions.FirExpression
|
||||||
import org.jetbrains.kotlin.fir.declarations.FirDeclaration
|
import org.jetbrains.kotlin.fir.declarations.FirDeclaration
|
||||||
|
import org.jetbrains.kotlin.fir.declarations.FirAnnotatedDeclaration
|
||||||
import org.jetbrains.kotlin.fir.declarations.FirAnonymousInitializer
|
import org.jetbrains.kotlin.fir.declarations.FirAnonymousInitializer
|
||||||
import org.jetbrains.kotlin.fir.declarations.FirTypedDeclaration
|
import org.jetbrains.kotlin.fir.declarations.FirTypedDeclaration
|
||||||
import org.jetbrains.kotlin.fir.declarations.FirCallableDeclaration
|
import org.jetbrains.kotlin.fir.declarations.FirCallableDeclaration
|
||||||
@@ -189,6 +190,10 @@ abstract class FirVisitorVoid : FirVisitor<Unit, Nothing?>() {
|
|||||||
visitElement(declaration)
|
visitElement(declaration)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
open fun visitAnnotatedDeclaration(annotatedDeclaration: FirAnnotatedDeclaration) {
|
||||||
|
visitElement(annotatedDeclaration)
|
||||||
|
}
|
||||||
|
|
||||||
open fun visitAnonymousInitializer(anonymousInitializer: FirAnonymousInitializer) {
|
open fun visitAnonymousInitializer(anonymousInitializer: FirAnonymousInitializer) {
|
||||||
visitElement(anonymousInitializer)
|
visitElement(anonymousInitializer)
|
||||||
}
|
}
|
||||||
@@ -665,6 +670,10 @@ abstract class FirVisitorVoid : FirVisitor<Unit, Nothing?>() {
|
|||||||
visitDeclaration(declaration)
|
visitDeclaration(declaration)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
final override fun visitAnnotatedDeclaration(annotatedDeclaration: FirAnnotatedDeclaration, data: Nothing?) {
|
||||||
|
visitAnnotatedDeclaration(annotatedDeclaration)
|
||||||
|
}
|
||||||
|
|
||||||
final override fun visitAnonymousInitializer(anonymousInitializer: FirAnonymousInitializer, data: Nothing?) {
|
final override fun visitAnonymousInitializer(anonymousInitializer: FirAnonymousInitializer, data: Nothing?) {
|
||||||
visitAnonymousInitializer(anonymousInitializer)
|
visitAnonymousInitializer(anonymousInitializer)
|
||||||
}
|
}
|
||||||
|
|||||||
+10
-9
@@ -26,42 +26,43 @@ object FirTreeBuilder : AbstractFirTreeBuilder() {
|
|||||||
val statement = element("Statement", Expression, annotationContainer)
|
val statement = element("Statement", Expression, annotationContainer)
|
||||||
val expression = element("Expression", Expression, statement)
|
val expression = element("Expression", Expression, statement)
|
||||||
val declaration = element("Declaration", Declaration)
|
val declaration = element("Declaration", Declaration)
|
||||||
|
val annotatedDeclaration = element("AnnotatedDeclaration", Declaration, declaration, annotationContainer)
|
||||||
val anonymousInitializer = element("AnonymousInitializer", Declaration, declaration, symbolOwner)
|
val anonymousInitializer = element("AnonymousInitializer", Declaration, declaration, symbolOwner)
|
||||||
val typedDeclaration = element("TypedDeclaration", Declaration, declaration, annotationContainer)
|
val typedDeclaration = element("TypedDeclaration", Declaration, annotatedDeclaration)
|
||||||
val callableDeclaration = element("CallableDeclaration", Declaration, typedDeclaration, symbolOwner)
|
val callableDeclaration = element("CallableDeclaration", Declaration, typedDeclaration, symbolOwner)
|
||||||
val typeParameterRef = element("TypeParameterRef", Declaration)
|
val typeParameterRef = element("TypeParameterRef", Declaration)
|
||||||
val typeParameter = element("TypeParameter", Declaration, typeParameterRef, declaration, symbolOwner, annotationContainer)
|
val typeParameter = element("TypeParameter", Declaration, typeParameterRef, annotatedDeclaration, symbolOwner)
|
||||||
val typeParameterRefsOwner = element("TypeParameterRefsOwner", Declaration)
|
val typeParameterRefsOwner = element("TypeParameterRefsOwner", Declaration)
|
||||||
val typeParametersOwner = element("TypeParametersOwner", Declaration, typeParameterRefsOwner)
|
val typeParametersOwner = element("TypeParametersOwner", Declaration, typeParameterRefsOwner)
|
||||||
val memberDeclaration = element("MemberDeclaration", Declaration, declaration, annotationContainer)
|
val memberDeclaration = element("MemberDeclaration", Declaration, annotatedDeclaration)
|
||||||
val callableMemberDeclaration = element("CallableMemberDeclaration", Declaration, callableDeclaration, memberDeclaration)
|
val callableMemberDeclaration = element("CallableMemberDeclaration", Declaration, callableDeclaration, memberDeclaration)
|
||||||
|
|
||||||
val variable = element("Variable", Declaration, callableDeclaration, declaration, statement)
|
val variable = element("Variable", Declaration, callableDeclaration, annotatedDeclaration, statement)
|
||||||
val valueParameter = element("ValueParameter", Declaration, variable)
|
val valueParameter = element("ValueParameter", Declaration, variable)
|
||||||
val property = element("Property", Declaration, variable, typeParametersOwner, callableMemberDeclaration)
|
val property = element("Property", Declaration, variable, typeParametersOwner, callableMemberDeclaration)
|
||||||
val field = element("Field", Declaration, variable, typeParametersOwner, callableMemberDeclaration)
|
val field = element("Field", Declaration, variable, typeParametersOwner, callableMemberDeclaration)
|
||||||
val enumEntry = element("EnumEntry", Declaration, variable, callableMemberDeclaration)
|
val enumEntry = element("EnumEntry", Declaration, variable, callableMemberDeclaration)
|
||||||
|
|
||||||
val classLikeDeclaration = element("ClassLikeDeclaration", Declaration, declaration, statement, symbolOwner)
|
val classLikeDeclaration = element("ClassLikeDeclaration", Declaration, annotatedDeclaration, statement, symbolOwner)
|
||||||
val klass = element("Class", Declaration, classLikeDeclaration, statement, annotationContainer, typeParameterRefsOwner)
|
val klass = element("Class", Declaration, classLikeDeclaration, statement, typeParameterRefsOwner)
|
||||||
val regularClass = element("RegularClass", Declaration, memberDeclaration, typeParameterRefsOwner, klass)
|
val regularClass = element("RegularClass", Declaration, memberDeclaration, typeParameterRefsOwner, klass)
|
||||||
val sealedClass = element("SealedClass", Declaration, regularClass)
|
val sealedClass = element("SealedClass", Declaration, regularClass)
|
||||||
val typeAlias = element("TypeAlias", Declaration, classLikeDeclaration, memberDeclaration, typeParametersOwner)
|
val typeAlias = element("TypeAlias", Declaration, classLikeDeclaration, memberDeclaration, typeParametersOwner)
|
||||||
|
|
||||||
val function = element("Function", Declaration, callableDeclaration, targetElement, annotationContainer, typeParameterRefsOwner, statement)
|
val function = element("Function", Declaration, callableDeclaration, targetElement, typeParameterRefsOwner, statement)
|
||||||
|
|
||||||
val contractDescriptionOwner = element("ContractDescriptionOwner", Declaration)
|
val contractDescriptionOwner = element("ContractDescriptionOwner", Declaration)
|
||||||
val simpleFunction = element("SimpleFunction", Declaration, function, callableMemberDeclaration, contractDescriptionOwner, typeParametersOwner)
|
val simpleFunction = element("SimpleFunction", Declaration, function, callableMemberDeclaration, contractDescriptionOwner, typeParametersOwner)
|
||||||
val propertyAccessor = element("PropertyAccessor", Declaration, function, contractDescriptionOwner, typeParametersOwner)
|
val propertyAccessor = element("PropertyAccessor", Declaration, function, contractDescriptionOwner, typeParametersOwner)
|
||||||
val constructor = element("Constructor", Declaration, function, callableMemberDeclaration, typeParameterRefsOwner)
|
val constructor = element("Constructor", Declaration, function, callableMemberDeclaration, typeParameterRefsOwner)
|
||||||
val file = element("File", Declaration, annotationContainer, declaration)
|
val file = element("File", Declaration, annotatedDeclaration)
|
||||||
|
|
||||||
val anonymousFunction = element("AnonymousFunction", Declaration, function, expression, typeParametersOwner)
|
val anonymousFunction = element("AnonymousFunction", Declaration, function, expression, typeParametersOwner)
|
||||||
val anonymousObject = element("AnonymousObject", Declaration, klass, expression)
|
val anonymousObject = element("AnonymousObject", Declaration, klass, expression)
|
||||||
|
|
||||||
val diagnosticHolder = element("DiagnosticHolder", Diagnostics)
|
val diagnosticHolder = element("DiagnosticHolder", Diagnostics)
|
||||||
|
|
||||||
val loop = element("Loop", Expression, statement, targetElement, annotationContainer)
|
val loop = element("Loop", Expression, statement, targetElement)
|
||||||
val errorLoop = element("ErrorLoop", Expression, loop, diagnosticHolder)
|
val errorLoop = element("ErrorLoop", Expression, loop, diagnosticHolder)
|
||||||
val doWhileLoop = element("DoWhileLoop", Expression, loop)
|
val doWhileLoop = element("DoWhileLoop", Expression, loop)
|
||||||
val whileLoop = element("WhileLoop", Expression, loop)
|
val whileLoop = element("WhileLoop", Expression, loop)
|
||||||
|
|||||||
Reference in New Issue
Block a user