Uses of Class
org.derive4j.processor.api.model.AlgebraicDataType
Packages that use AlgebraicDataType
Package
Description
-
Uses of AlgebraicDataType in org.derive4j.processor
Methods in org.derive4j.processor that return types with arguments of type AlgebraicDataTypeModifier and TypeMethodDescription(package private) DeriveResult
<AlgebraicDataType> AdtParser.parseAlgebraicDataType
(TypeElement adtTypeElement, DeriveConfig deriveConfig) Methods in org.derive4j.processor with parameters of type AlgebraicDataTypeModifier and TypeMethodDescription(package private) static com.squareup.javapoet.FieldSpec
PatternMatchingDerivator.asFieldSpec
(AlgebraicDataType adt) private static String
GettersDerivator.asParameterName
(AlgebraicDataType adt) (package private) static com.squareup.javapoet.ParameterSpec
PatternMatchingDerivator.asParameterSpec
(AlgebraicDataType adt) private com.squareup.javapoet.TypeName
CataDerivator.cataMapperTypeName
(AlgebraicDataType adt, DataConstructor dc) private DerivedCodeSpec
CataDerivator.cataVisitor
(AlgebraicDataType adt, DeclaredType visitorType, List<DataConstructor> constructors) (package private) static com.squareup.javapoet.MethodSpec.Builder
PatternMatchingDerivator.constantMatchMethodBuilder
(AlgebraicDataType adt, DataConstructor currentConstructor) private DerivedCodeSpec
StrictConstructorDerivator.constructorSpec
(AlgebraicDataType adt, DataConstructor constructor) private DerivedCodeSpec
MapperDerivator.createVisitorFactoryAndMappers
(AlgebraicDataType adt, DeclaredType acceptedVisitorType, List<DataConstructor> constructors) private DeclaredType
CataDerivator.delayType
(AlgebraicDataType adt) CataDerivator.derive
(AlgebraicDataType adt) ExportDerivator.derive
(AlgebraicDataType adt) FactoryDerivator.derive
(AlgebraicDataType adtModel) GettersDerivator.derive
(AlgebraicDataType adt) LazyConstructorDerivator.derive
(AlgebraicDataType adt) MapperDerivator.derive
(AlgebraicDataType adt) ModifiersDerivator.derive
(AlgebraicDataType adt) PatternMatchingDerivator.derive
(AlgebraicDataType adt) StrictConstructorDerivator.derive
(AlgebraicDataType adt) private Map
<com.squareup.javapoet.ClassName, P2<Stream<DeriveMessage>, DerivedCodeSpec>> DerivingProcessor.derivedInstances
(AlgebraicDataType adt) private Optional
<com.squareup.javapoet.MethodSpec> StrictConstructorDerivator.deriveEquals
(AlgebraicDataType adt, DataConstructor constructor) private DerivedCodeSpec
GettersDerivator.deriveGetter
(DataArgument field, AlgebraicDataType adt) private Optional
<com.squareup.javapoet.MethodSpec> StrictConstructorDerivator.deriveHashCode
(AlgebraicDataType adt, DataConstructor constructor) private Optional
<com.squareup.javapoet.MethodSpec> StrictConstructorDerivator.deriveToString
(AlgebraicDataType adt, DataConstructor constructor) private DerivedCodeSpec
FactoryDerivator.factory
(AlgebraicDataType adt, DeclaredType visitorType, List<DataConstructor> constructors) private DeriveResult
<DerivedCodeSpec> CataDerivator.functionDispatchImpl
(AlgebraicDataType adt, List<DataConstructor> constructors) private com.squareup.javapoet.CodeBlock
TotalMatchingStepDerivator.functionDispatchImpl
(AlgebraicDataType adt, List<DataConstructor> previousConstructors, DataConstructor currentConstructor) private com.squareup.javapoet.CodeBlock
OtherwiseMatchingStepDerivator.functionsDispatchEitherImpl
(TypeElement f0, EitherModel eitherModel, com.squareup.javapoet.TypeName eitherTypeName, AlgebraicDataType adt, List<DataConstructor> constructors, String argName) private com.squareup.javapoet.CodeBlock
OtherwiseMatchingStepDerivator.functionsDispatchImpl
(TypeElement f0, AlgebraicDataType adt, List<DataConstructor> constructors) private static DerivedCodeSpec
GettersDerivator.functionsDispatchLensGetterImpl
(AlgebraicDataType adt, String arg, DataArgument field) private static DerivedCodeSpec
GettersDerivator.functionsDispatchOptionalGetterImpl
(OptionModel optionModel, AlgebraicDataType adt, String arg, List<DataConstructor> constructors, DataArgument field, DeclaredType returnType) private com.squareup.javapoet.CodeBlock
OtherwiseMatchingStepDerivator.functionsDispatchOptionImpl
(OptionModel optionModel, AlgebraicDataType adt, List<DataConstructor> constructors) DeriveUtilsImpl.generateInstance
(AlgebraicDataType adt, com.squareup.javapoet.ClassName typeClass, List<TypeElement> lowPriorityProviders, Function<InstanceUtils, DerivedCodeSpec> generateInstance) private DerivedCodeSpec
GettersDerivator.generateLensGetter
(DataArgument field, AlgebraicDataType adt) private DerivedCodeSpec
ModifiersDerivator.generateModifier
(DataArgument field, AlgebraicDataType adt) private DerivedCodeSpec
GettersDerivator.generateOptionalGetter
(DataArgument field, AlgebraicDataType adt) private static com.squareup.javapoet.MethodSpec.Builder
GettersDerivator.getterBuilder
(AlgebraicDataType adt, String arg, DataArgument field, TypeMirror type) private static String
GettersDerivator.lensGetterLambda
(String arg, AlgebraicDataType adt, DataArgument field) com.squareup.javapoet.TypeName
MapperDerivator.mapperTypeName
(AlgebraicDataType adt, DataConstructor dc) com.squareup.javapoet.TypeName
MapperDerivator.mapperTypeName
(AlgebraicDataType adt, DataConstructor dc, com.squareup.javapoet.TypeName returnType) com.squareup.javapoet.TypeName
MapperDerivator.mapperTypeName
(AlgebraicDataType adt, DataConstructor dc, TypeMirror selfReferenceType, com.squareup.javapoet.TypeName returnType) (package private) static Stream
<TypeVariable> PatternMatchingDerivator.matcherVariables
(AlgebraicDataType adt) private static com.squareup.javapoet.NameAllocator
CataDerivator.nameAllocator
(AlgebraicDataType adt, List<DataConstructor> constructors) private boolean
StrictConstructorDerivator.needLambdaVisitorGeneration
(AlgebraicDataType adt) private static com.squareup.javapoet.CodeBlock
TotalMatchingStepDerivator.oneConstructorImpl
(DataConstructor currentConstructor, AlgebraicDataType adt) private List
<com.squareup.javapoet.MethodSpec> OtherwiseMatchingStepDerivator.otherwiseLeftMethod
(AlgebraicDataType adt, EitherModel eitherModel) (package private) static com.squareup.javapoet.ParameterizedTypeName
OtherwiseMatchingStepDerivator.otherwiseMatcherTypeName
(AlgebraicDataType adt) private List
<com.squareup.javapoet.MethodSpec> OtherwiseMatchingStepDerivator.otherwiseMethods
(AlgebraicDataType adt) private com.squareup.javapoet.MethodSpec
OtherwiseMatchingStepDerivator.otherwiseNoneMethod
(AlgebraicDataType adt) (package private) com.squareup.javapoet.TypeSpec
PartialMatchingStepDerivator.partialMatchingStepTypeSpec
(AlgebraicDataType adt, List<DataConstructor> previousConstructors, DataConstructor currentConstructor, List<DataConstructor> nextConstructors) (package private) Stream
<com.squareup.javapoet.MethodSpec.Builder> PartialMatchingStepDerivator.partialMatchMethodBuilder
(AlgebraicDataType adt, List<DataConstructor> previousConstructors, int nbSkipConstructors, DataConstructor currentConstructor, com.squareup.javapoet.ParameterizedTypeName returnType) DeriveUtilsImpl.resolveFieldInstances
(AlgebraicDataType adt, com.squareup.javapoet.ClassName typeClass, List<TypeElement> lowPriorityProviders) (package private) com.squareup.javapoet.TypeSpec
OtherwiseMatchingStepDerivator.stepTypeSpec
(AlgebraicDataType adt) (package private) com.squareup.javapoet.TypeSpec
TotalMatchingStepDerivator.stepTypeSpec
(AlgebraicDataType adt, List<DataConstructor> previousConstructors, DataConstructor currentConstructor, List<DataConstructor> nextConstructors) private DeclaredType
CataDerivator.strictCataType
(AlgebraicDataType adt, DeclaredType acceptedVisitorType) (package private) static com.squareup.javapoet.ParameterizedTypeName
PartialMatchingStepDerivator.superClass
(AlgebraicDataType adt, PatternMatchingDerivator.MatchingKind matchingKind, List<DataConstructor> nextConstructors) private com.squareup.javapoet.CodeBlock
OtherwiseMatchingStepDerivator.visitorDispatchEitherImpl
(TypeElement f0, EitherModel eitherModel, com.squareup.javapoet.TypeName eitherTypeName, AlgebraicDataType adt, DeclaredType visitorType, VariableElement visitorParam, String argName) private DeriveResult
<DerivedCodeSpec> CataDerivator.visitorDispatchImpl
(AlgebraicDataType adt, DeclaredType visitorType, List<DataConstructor> constructors) private com.squareup.javapoet.CodeBlock
OtherwiseMatchingStepDerivator.visitorDispatchImpl
(TypeElement f0, AlgebraicDataType adt, DeclaredType visitorType, VariableElement visitorParam) private DerivedCodeSpec
GettersDerivator.visitorDispatchLensGetterImpl
(AlgebraicDataType adt, String arg, DeclaredType visitorType, DataArgument field) private DerivedCodeSpec
GettersDerivator.visitorDispatchOptionalGetterImpl
(OptionModel optionModel, AlgebraicDataType adt, DeclaredType visitorType, List<DataConstructor> constructors, String arg, DataArgument field, DeclaredType returnType) private com.squareup.javapoet.CodeBlock
OtherwiseMatchingStepDerivator.visitorDispatchOptionImpl
(OptionModel optionModel, AlgebraicDataType adt, DeclaredType visitorType, VariableElement visitorParam) (package private) boolean
CataDerivator.visitorIsObjectAlgebra
(AlgebraicDataType adt) static String
MapperDerivator.visitorLambdaFactoryName
(AlgebraicDataType adt) com.squareup.javapoet.TypeName
MapperDerivator.visitorMapperTypeName
(AlgebraicDataType adt, DataConstructor dc) private com.squareup.javapoet.CodeBlock
TotalMatchingStepDerivator.vistorDispatchImpl
(AlgebraicDataType adt, DeclaredType visitorType, VariableElement visitorParam, List<DataConstructor> previousConstructors, DataConstructor currentConstructor) -
Uses of AlgebraicDataType in org.derive4j.processor.api
Methods in org.derive4j.processor.api with parameters of type AlgebraicDataTypeModifier and TypeMethodDescriptionDerivator.derive
(AlgebraicDataType adtModel) DeriveResult
<com.squareup.javapoet.TypeSpec> Extension.extend
(AlgebraicDataType adtModel, com.squareup.javapoet.TypeSpec codeGenSpec) DeriveUtils.generateInstance
(AlgebraicDataType adt, com.squareup.javapoet.ClassName typeClass, List<TypeElement> lowPriorityProviders, Function<InstanceUtils, DerivedCodeSpec> generateInstance) DeriveUtils.resolveFieldInstances
(AlgebraicDataType adt, com.squareup.javapoet.ClassName typeClass, List<TypeElement> lowPriorityProviders) -
Uses of AlgebraicDataType in org.derive4j.processor.api.model
Subclasses of AlgebraicDataType in org.derive4j.processor.api.modelModifier and TypeClassDescriptionprivate static final class
private static final class
Fields in org.derive4j.processor.api.model declared as AlgebraicDataTypeFields in org.derive4j.processor.api.model with type parameters of type AlgebraicDataTypeModifier and TypeFieldDescriptionprivate Supplier
<AlgebraicDataType> AlgebraicDataTypes.Lazy.expression
Methods in org.derive4j.processor.api.model that return AlgebraicDataTypeModifier and TypeMethodDescriptionprivate AlgebraicDataType
AlgebraicDataTypes.Lazy._evaluate()
static AlgebraicDataType
AlgebraicDataTypes.adt
(DeriveConfig deriveConfig, TypeConstructor typeConstructor, MatchMethod matchMethod, DataConstruction dataConstruction, List<DataArgument> fields) static AlgebraicDataType
AlgebraicDataTypes.lazy
(Supplier<AlgebraicDataType> algebraicDataType) Methods in org.derive4j.processor.api.model that return types with arguments of type AlgebraicDataTypeModifier and TypeMethodDescriptionfinal <R> Function
<AlgebraicDataType, R> AlgebraicDataTypes.CasesMatchers.TotalMatcher_Adt.adt
(AlgebraicDataType.Case<R> adt) final <R> Function
<AlgebraicDataType, R> AlgebraicDataTypes.CasesMatchers.TotalMatcher_Adt.adt_
(R r) AlgebraicDataTypes.modDataConstruction
(Function<DataConstruction, DataConstruction> dataConstructionMod) AlgebraicDataTypes.modDataConstruction
(Function<DataConstruction, DataConstruction> dataConstructionMod) AlgebraicDataTypes.modDeriveConfig
(Function<DeriveConfig, DeriveConfig> deriveConfigMod) AlgebraicDataTypes.modDeriveConfig
(Function<DeriveConfig, DeriveConfig> deriveConfigMod) AlgebraicDataTypes.modFields
(Function<List<DataArgument>, List<DataArgument>> fieldsMod) AlgebraicDataTypes.modFields
(Function<List<DataArgument>, List<DataArgument>> fieldsMod) AlgebraicDataTypes.modMatchMethod
(Function<MatchMethod, MatchMethod> matchMethodMod) AlgebraicDataTypes.modMatchMethod
(Function<MatchMethod, MatchMethod> matchMethodMod) AlgebraicDataTypes.modTypeConstructor
(Function<TypeConstructor, TypeConstructor> typeConstructorMod) AlgebraicDataTypes.modTypeConstructor
(Function<TypeConstructor, TypeConstructor> typeConstructorMod) AlgebraicDataTypes.setDataConstruction
(DataConstruction newDataConstruction) AlgebraicDataTypes.setDataConstruction
(DataConstruction newDataConstruction) AlgebraicDataTypes.setDeriveConfig
(DeriveConfig newDeriveConfig) AlgebraicDataTypes.setDeriveConfig
(DeriveConfig newDeriveConfig) AlgebraicDataTypes.setFields
(List<DataArgument> newFields) AlgebraicDataTypes.setFields
(List<DataArgument> newFields) AlgebraicDataTypes.setMatchMethod
(MatchMethod newMatchMethod) AlgebraicDataTypes.setMatchMethod
(MatchMethod newMatchMethod) AlgebraicDataTypes.setTypeConstructor
(TypeConstructor newTypeConstructor) AlgebraicDataTypes.setTypeConstructor
(TypeConstructor newTypeConstructor) Methods in org.derive4j.processor.api.model with parameters of type AlgebraicDataTypeModifier and TypeMethodDescriptionstatic DataConstruction
AlgebraicDataTypes.getDataConstruction
(AlgebraicDataType algebraicDataType) static DeriveConfig
AlgebraicDataTypes.getDeriveConfig
(AlgebraicDataType algebraicDataType) static List
<DataArgument> AlgebraicDataTypes.getFields
(AlgebraicDataType algebraicDataType) static MatchMethod
AlgebraicDataTypes.getMatchMethod
(AlgebraicDataType algebraicDataType) static TypeConstructor
AlgebraicDataTypes.getTypeConstructor
(AlgebraicDataType algebraicDataType) Method parameters in org.derive4j.processor.api.model with type arguments of type AlgebraicDataTypeModifier and TypeMethodDescriptionstatic AlgebraicDataType
AlgebraicDataTypes.lazy
(Supplier<AlgebraicDataType> algebraicDataType) Constructor parameters in org.derive4j.processor.api.model with type arguments of type AlgebraicDataTypeModifierConstructorDescription(package private)
Lazy
(Supplier<AlgebraicDataType> algebraicDataType)