Package org.derive4j.processor.api.model
Class TypeRestrictions
java.lang.Object
org.derive4j.processor.api.model.TypeRestrictions
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
private static final class
private static final class
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncases()
static TypeMirror
getRefinementType
(TypeRestriction typeRestriction) static TypeVariable
getRestrictedTypeVariable
(TypeRestriction typeRestriction) static DataArgument
getTypeEq
(TypeRestriction typeRestriction) static TypeRestriction
lazy
(Supplier<TypeRestriction> typeRestriction) static Function
<TypeRestriction, TypeRestriction> modRefinementType
(Function<TypeMirror, TypeMirror> refinementTypeMod) static Function
<TypeRestriction, TypeRestriction> modRestrictedTypeVariable
(Function<TypeVariable, TypeVariable> restrictedTypeVariableMod) static Function
<TypeRestriction, TypeRestriction> modTypeEq
(Function<DataArgument, DataArgument> typeEqMod) static Function
<TypeRestriction, TypeRestriction> setRefinementType
(TypeMirror newRefinementType) static Function
<TypeRestriction, TypeRestriction> setRestrictedTypeVariable
(TypeVariable newRestrictedTypeVariable) static Function
<TypeRestriction, TypeRestriction> setTypeEq
(DataArgument newTypeEq) static TypeRestriction
typeRestriction
(TypeVariable restrictedTypeVariable, TypeMirror refinementType, DataArgument typeEq)
-
Constructor Details
-
TypeRestrictions
private TypeRestrictions()
-
-
Method Details
-
typeRestriction
public static TypeRestriction typeRestriction(TypeVariable restrictedTypeVariable, TypeMirror refinementType, DataArgument typeEq) -
lazy
-
cases
-
getRestrictedTypeVariable
-
getRefinementType
-
getTypeEq
-
setRestrictedTypeVariable
public static Function<TypeRestriction,TypeRestriction> setRestrictedTypeVariable(TypeVariable newRestrictedTypeVariable) -
modRestrictedTypeVariable
public static Function<TypeRestriction,TypeRestriction> modRestrictedTypeVariable(Function<TypeVariable, TypeVariable> restrictedTypeVariableMod) -
setRefinementType
public static Function<TypeRestriction,TypeRestriction> setRefinementType(TypeMirror newRefinementType) -
modRefinementType
public static Function<TypeRestriction,TypeRestriction> modRefinementType(Function<TypeMirror, TypeMirror> refinementTypeMod) -
setTypeEq
-
modTypeEq
public static Function<TypeRestriction,TypeRestriction> modTypeEq(Function<DataArgument, DataArgument> typeEqMod)
-