compiler-plugin / arrow.meta.plugins.optics.internals

Package arrow.meta.plugins.optics.internals

Types

ADT data class ADT
DataClassDsl typealias DataClassDsl = DataClassDsl
Focus sealed class Focus
IsoTarget typealias IsoTarget = Iso
LensTarget typealias LensTarget = Lens
NonNullFocus typealias NonNullFocus = NonNull
NullableFocus typealias NullableFocus = Nullable
OpticsTarget enum class OpticsTarget
OptionalTarget typealias OptionalTarget = Optional
OptionFocus typealias OptionFocus = Option
PrismTarget typealias PrismTarget = Prism
SealedClassDsl typealias SealedClassDsl = SealedClassDsl
Snippet data class Snippet
Target sealed class Target

Extensions for External Classes

kotlin.String  

Properties

Fold const val Fold: String
Getter const val Getter: String
Iso const val Iso: String
Lens const val Lens: String
Optional const val Optional: String
Prism const val Prism: String
Setter const val Setter: String
targetNames val Target.targetNames: List<String>
Traversal const val Traversal: String
Tuple const val Tuple: String

Functions

asFileText fun Snippet.asFileText(): String
generateIsos fun generateIsos(ele: ADT, target: IsoTarget): Snippet
generateLensDsl fun generateLensDsl(ele: ADT, optic: DataClassDsl): Snippet
generateLenses fun generateLenses(ele: ADT, target: LensTarget): Snippet
generateOptionalDsl fun generateOptionalDsl(ele: ADT, optic: DataClassDsl): Snippet
generateOptionals fun generateOptionals(ele: ADT, target: OptionalTarget): Snippet
generatePrismDsl fun generatePrismDsl(ele: ADT, isoOptic: SealedClassDsl): Snippet
generatePrisms fun generatePrisms(ele: ADT, target: PrismTarget): Snippet
lensParamName fun Focus.lensParamName(): String
process fun CompilerContext.process(elements: List<ADT>): List<File>

Do you like Arrow?

Arrow Org
<