Package org.derive4j.processor.api.model
Class AlgebraicDataTypes.Adt
- java.lang.Object
-
- org.derive4j.processor.api.model.AlgebraicDataType
-
- org.derive4j.processor.api.model.AlgebraicDataTypes.Adt
-
- Enclosing class:
- AlgebraicDataTypes
private static final class AlgebraicDataTypes.Adt extends AlgebraicDataType
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.derive4j.processor.api.model.AlgebraicDataType
AlgebraicDataType.Case<R>
-
-
Field Summary
Fields Modifier and Type Field Description private DataConstruction
dataConstruction
private DeriveConfig
deriveConfig
private java.util.List<DataArgument>
fields
private MatchMethod
matchMethod
private TypeConstructor
typeConstructor
-
Constructor Summary
Constructors Constructor Description Adt(DeriveConfig deriveConfig, TypeConstructor typeConstructor, MatchMethod matchMethod, DataConstruction dataConstruction, java.util.List<DataArgument> fields)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <R> R
match(AlgebraicDataType.Case<R> adt)
-
Methods inherited from class org.derive4j.processor.api.model.AlgebraicDataType
dataConstruction, deriveConfig, fields, matchMethod, typeConstructor
-
-
-
-
Field Detail
-
deriveConfig
private final DeriveConfig deriveConfig
-
typeConstructor
private final TypeConstructor typeConstructor
-
matchMethod
private final MatchMethod matchMethod
-
dataConstruction
private final DataConstruction dataConstruction
-
fields
private final java.util.List<DataArgument> fields
-
-
Constructor Detail
-
Adt
Adt(DeriveConfig deriveConfig, TypeConstructor typeConstructor, MatchMethod matchMethod, DataConstruction dataConstruction, java.util.List<DataArgument> fields)
-
-
Method Detail
-
match
public <R> R match(AlgebraicDataType.Case<R> adt)
- Specified by:
match
in classAlgebraicDataType
-
-