Package-level declarations

Types

Link copied to clipboard
abstract class AbstractDefaultReadMethod(path: String?, arguments: MethodArguments, methodName: String) : DefaultReadDfMethod
Link copied to clipboard
abstract class AbstractMarker(typeParameters: List<String>, typeArguments: List<String>) : IsolatedMarker
Link copied to clipboard
interface BaseField
Link copied to clipboard
typealias Code = String
Link copied to clipboard
Link copied to clipboard
data class CodeGenResult(val code: CodeWithTypeCastGenerator, val newMarkers: List<Marker>)
Link copied to clipboard
data class CodeWithTypeCastGenerator(val declarations: Code, val typeCastGenerator: TypeCastGenerator = TypeCastGenerator.Empty)

Class representing generated code declarations for a Marker.

Link copied to clipboard
internal data object Default : FieldKind
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
typealias Expression = String
Link copied to clipboard
Link copied to clipboard
sealed interface FieldKind
Link copied to clipboard
sealed interface FieldType
Link copied to clipboard
internal data object Frame : FieldKind
Link copied to clipboard
data class GeneratedField(val fieldName: ValidFieldName, val columnName: String, val overrides: Boolean, val columnSchema: ColumnSchema, val fieldType: FieldType) : BaseField
Link copied to clipboard
internal data object Group : FieldKind
Link copied to clipboard
interface IsolatedMarker
Link copied to clipboard
internal data object ListToFrame : FieldKind
Link copied to clipboard
open class Marker(val name: String, val isOpen: Boolean, val fields: List<GeneratedField>, superMarkers: List<Marker>, val visibility: MarkerVisibility, typeParameters: List<String>, typeArguments: List<String>) : AbstractMarker
Link copied to clipboard
sealed interface MarkerNameProvider

Name conflicts are resolved by numerical suffix

Link copied to clipboard
internal object MarkersExtractor
Link copied to clipboard

Which type of visibility the marker (generated class-like code declaration) will have:

Link copied to clipboard
Link copied to clipboard
internal data object ObjectToGroup : FieldKind
Link copied to clipboard
internal interface SchemaProcessor
Link copied to clipboard
fun interface TypeCastGenerator

A TypeCastGenerator can generate Code given an Expression that casts or converts it to a predefined target type.

Link copied to clipboard

Properties

Link copied to clipboard

Functions

Link copied to clipboard
inline fun <reified T> CodeGenerator.generate(interfaceMode: InterfaceGenerationMode, extensionProperties: Boolean): CodeWithTypeCastGenerator
internal fun CodeGenerator.generate(markerClass: KClass<*>, interfaceMode: InterfaceGenerationMode, extensionProperties: Boolean): CodeWithTypeCastGenerator
Link copied to clipboard
internal fun KType.getFieldKind(): FieldKind
Link copied to clipboard

Returns whether the column type doesn't end with ? or whether it does. NOTE: for FieldType.FrameFieldType, the nullable property indicates the nullability of the frame itself, not the type of the column.

Link copied to clipboard

Returns whether the column type ends with ? or not. NOTE: for FieldType.FrameFieldType, the nullable property indicates the nullability of the frame itself, not the type of the column.

Link copied to clipboard

Returns a new fieldType with the same type but with nullability disabled in the column type. NOTE: for FieldType.FrameFieldType, the nullable property indicates the nullability of the frame itself, not the type of the column.

Link copied to clipboard

Returns a new fieldType with the same type but with nullability in the column type. NOTE: for FieldType.FrameFieldType, the nullable property indicates the nullability of the frame itself, not the type of the column.