Package org.derive4j.processor
Class PartialMatchingStepDerivator
- java.lang.Object
-
- org.derive4j.processor.PartialMatchingStepDerivator
-
class PartialMatchingStepDerivator extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description private MapperDerivator
mapperDerivator
private PatternMatchingDerivator.MatchingKind
matchingKind
-
Constructor Summary
Constructors Constructor Description PartialMatchingStepDerivator(DeriveUtils deriveUtils, PatternMatchingDerivator.MatchingKind matchingKind)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static java.lang.String
partialMatchBuilderClassName(DataConstructor currentConstructor)
(package private) com.squareup.javapoet.TypeSpec
partialMatchingStepTypeSpec(AlgebraicDataType adt, java.util.List<DataConstructor> previousConstructors, DataConstructor currentConstructor, java.util.List<DataConstructor> nextConstructors)
(package private) java.util.stream.Stream<com.squareup.javapoet.MethodSpec.Builder>
partialMatchMethodBuilder(AlgebraicDataType adt, java.util.List<DataConstructor> previousConstructors, int nbSkipConstructors, DataConstructor currentConstructor, com.squareup.javapoet.ParameterizedTypeName returnType)
(package private) static com.squareup.javapoet.ParameterizedTypeName
superClass(AlgebraicDataType adt, PatternMatchingDerivator.MatchingKind matchingKind, java.util.List<DataConstructor> nextConstructors)
-
-
-
Field Detail
-
mapperDerivator
private final MapperDerivator mapperDerivator
-
matchingKind
private final PatternMatchingDerivator.MatchingKind matchingKind
-
-
Constructor Detail
-
PartialMatchingStepDerivator
PartialMatchingStepDerivator(DeriveUtils deriveUtils, PatternMatchingDerivator.MatchingKind matchingKind)
-
-
Method Detail
-
partialMatchingStepTypeSpec
com.squareup.javapoet.TypeSpec partialMatchingStepTypeSpec(AlgebraicDataType adt, java.util.List<DataConstructor> previousConstructors, DataConstructor currentConstructor, java.util.List<DataConstructor> nextConstructors)
-
partialMatchMethodBuilder
java.util.stream.Stream<com.squareup.javapoet.MethodSpec.Builder> partialMatchMethodBuilder(AlgebraicDataType adt, java.util.List<DataConstructor> previousConstructors, int nbSkipConstructors, DataConstructor currentConstructor, com.squareup.javapoet.ParameterizedTypeName returnType)
-
superClass
static com.squareup.javapoet.ParameterizedTypeName superClass(AlgebraicDataType adt, PatternMatchingDerivator.MatchingKind matchingKind, java.util.List<DataConstructor> nextConstructors)
-
partialMatchBuilderClassName
private static java.lang.String partialMatchBuilderClassName(DataConstructor currentConstructor)
-
-