Package org.derive4j.processor.api.model
Class AlgebraicDataType
- java.lang.Object
-
- org.derive4j.processor.api.model.AlgebraicDataType
-
- Direct Known Subclasses:
AlgebraicDataTypes.Adt
,AlgebraicDataTypes.Lazy
@Data public abstract class AlgebraicDataType extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
AlgebraicDataType.Case<R>
-
Constructor Summary
Constructors Constructor Description AlgebraicDataType()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description DataConstruction
dataConstruction()
DeriveConfig
deriveConfig()
java.util.List<DataArgument>
fields()
abstract <R> R
match(AlgebraicDataType.Case<R> adt)
MatchMethod
matchMethod()
TypeConstructor
typeConstructor()
-
-
-
Method Detail
-
match
public abstract <R> R match(AlgebraicDataType.Case<R> adt)
-
deriveConfig
public DeriveConfig deriveConfig()
-
typeConstructor
public TypeConstructor typeConstructor()
-
matchMethod
public MatchMethod matchMethod()
-
dataConstruction
public DataConstruction dataConstruction()
-
fields
public java.util.List<DataArgument> fields()
-
-