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 interfaceAlgebraicDataType.Case<R>
-
Constructor Summary
Constructors Constructor Description AlgebraicDataType()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description DataConstructiondataConstruction()DeriveConfigderiveConfig()java.util.List<DataArgument>fields()abstract <R> Rmatch(AlgebraicDataType.Case<R> adt)MatchMethodmatchMethod()TypeConstructortypeConstructor()
-
-
-
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()
-
-