[FIR] Add transformAnnotations for fir nodes

This commit is contained in:
Dmitriy Novozhilov
2020-03-30 11:28:28 +03:00
parent 3190793b62
commit 28738971bc
168 changed files with 625 additions and 60 deletions
@@ -76,11 +76,11 @@ class FirJavaClass @FirImplementationDetail internal constructor(
}
override fun <D> transformChildren(transformer: FirTransformer<D>, data: D): FirJavaClass {
declarations.transformInplace(transformer, data)
annotations.transformInplace(transformer, data)
typeParameters.transformInplace(transformer, data)
declarations.transformInplace(transformer, data)
status = status.transformSingle(transformer, data)
superTypeRefs.transformInplace(transformer, data)
transformAnnotations(transformer, data)
return this
}
@@ -92,6 +92,11 @@ class FirJavaClass @FirImplementationDetail internal constructor(
override fun <D> transformControlFlowGraphReference(transformer: FirTransformer<D>, data: D): FirRegularClass {
return this
}
override fun <D> transformAnnotations(transformer: FirTransformer<D>, data: D): FirJavaClass {
annotations.transformInplace(transformer, data)
return this
}
}
@FirBuilderDsl
@@ -86,7 +86,7 @@ class FirJavaConstructor @FirImplementationDetail constructor(
typeParameters.transformInplace(transformer, data)
transformValueParameters(transformer, data)
status = status.transformSingle(transformer, data)
annotations.transformInplace(transformer, data)
transformAnnotations(transformer, data)
return this
}
@@ -99,6 +99,11 @@ class FirJavaConstructor @FirImplementationDetail constructor(
return this
}
override fun <D> transformAnnotations(transformer: FirTransformer<D>, data: D): FirJavaConstructor {
annotations.transformInplace(transformer, data)
return this
}
override var containerSource: DeserializedContainerSource? = null
override fun replaceReturnTypeRef(newReturnTypeRef: FirTypeRef) {
@@ -67,7 +67,7 @@ class FirJavaField @FirImplementationDetail constructor(
}
override fun <D> transformOtherChildren(transformer: FirTransformer<D>, data: D): FirField {
annotations.transformInplace(transformer, data)
transformAnnotations(transformer, data)
typeParameters.transformInplace(transformer, data)
return this
}
@@ -101,6 +101,11 @@ class FirJavaField @FirImplementationDetail constructor(
returnTypeRef = newReturnTypeRef
}
override fun <D> transformAnnotations(transformer: FirTransformer<D>, data: D): FirJavaField {
annotations.transformInplace(transformer, data)
return this
}
override val delegate: FirExpression?
get() = null