compiler-plugin / arrow.meta.quotes / Transform


sealed class Transform<out K>

The resulting action from matching on transformation


Empty object Empty : Transform<Nothing>
Many A Transform that allows transformations combining. See below:data class Many<K : KtElement> : Transform<K>
NewSource A Transform that allows code generation. See below:data class NewSource<K : KtElement> : Transform<K>
Remove A Transform that removes declarations from a specific element in the AST. See below:data class Remove<out K : KtElement> : Transform<K>
Replace A Transform that replaces some element in AST. See below:data class Replace<out K : KtElement> : Transform<K>

Companion Object Properties

empty val empty: Transform<Nothing>

Companion Object Functions

newSources fun <K : KtElement> newSources(vararg files: File): Transform<K>
remove fun <K : KtElement> remove(remove: PsiElement): Transform<K>
fun <K : KtElement> remove(removeIn: PsiElement, declaration: Scope<KtExpressionCodeFragment>): Transform<K>
fun <K : KtElement> remove(removeIn: PsiElement, declarations: List<Scope<KtExpressionCodeFragment>>): Transform<K>
replace fun <K : KtElement> replace(replacing: PsiElement, newDeclarations: List<Scope<KtElement>>): Transform<K>
fun <K : KtElement> replace(replacing: PsiElement, newDeclaration: Scope<KtElement>): Transform<K>

Extension Functions

plus operator fun <K : KtElement> Transform<K>.plus(transform: Transform<K>): Many<K>

Do you like Arrow?

Arrow Org