Package org.derive4j.processor
Class StrictConstructorDerivator
java.lang.Object
org.derive4j.processor.StrictConstructorDerivator
- All Implemented Interfaces:
Derivator
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate DerivedCodeSpec
constructorSpec
(AlgebraicDataType adt, DataConstructor constructor) derive
(AlgebraicDataType adt) private Optional
<com.squareup.javapoet.MethodSpec> deriveEquals
(AlgebraicDataType adt, DataConstructor constructor) private Optional
<com.squareup.javapoet.MethodSpec> deriveHashCode
(AlgebraicDataType adt, DataConstructor constructor) private Optional
<com.squareup.javapoet.MethodSpec> deriveToString
(AlgebraicDataType adt, DataConstructor constructor) private static String
(package private) Optional
<ExecutableElement> findAbstractEquals
(TypeElement typeElement) (package private) Optional
<ExecutableElement> findAbstractHashCode
(TypeElement typeElement) (package private) Optional
<ExecutableElement> findAbstractToString
(TypeElement typeElement) private static String
hascode
(DataArgument da) private boolean
(package private) static boolean
smartConstructor
(DataConstructor constructor, DeriveConfig deriveConfig) private static String
toString
(DataArgument da)
-
Field Details
-
PRIMES
-
deriveUtils
-
mapperDerivator
-
-
Constructor Details
-
StrictConstructorDerivator
StrictConstructorDerivator(DeriveUtils deriveUtils)
-
-
Method Details
-
derive
-
findAbstractEquals
-
findAbstractToString
-
findAbstractHashCode
-
deriveHashCode
private Optional<com.squareup.javapoet.MethodSpec> deriveHashCode(AlgebraicDataType adt, DataConstructor constructor) -
deriveToString
private Optional<com.squareup.javapoet.MethodSpec> deriveToString(AlgebraicDataType adt, DataConstructor constructor) -
deriveEquals
private Optional<com.squareup.javapoet.MethodSpec> deriveEquals(AlgebraicDataType adt, DataConstructor constructor) -
constructorSpec
-
needLambdaVisitorGeneration
-
smartConstructor
-
equalityTest
-
hascode
-
toString
-