Class CriteriaModel
- java.lang.Object
-
- org.immutables.value.processor.meta.CriteriaModel
-
public class CriteriaModel extends java.lang.ObjectCreates several matchers programmatically based onValueAttribute.StringMatcher,WithMatcher,NotMatcheretc.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classCriteriaModel.ContainerDefComposite matcher for containers like Iterable / Map / Optional / @Nullableprivate static classCriteriaModel.CreatorVisitorprivate static classCriteriaModel.IntrospectedTypeprivate static classCriteriaModel.MatcherDefstatic classCriteriaModel.MatcherDefinition
-
Field Summary
Fields Modifier and Type Field Description private ValueAttributeattributeprivate javax.lang.model.util.Elementselementsprivate Type.Factoryfactoryprivate CriteriaModel.IntrospectedTypeintrospectedTypeprivate static java.lang.StringMATCHERprivate CriteriaModel.MatcherDefinitionmatcherDefinitionprivate static java.lang.Iterable<Type.Defined>NO_BOUNDSprivate javax.lang.model.util.Typestypes
-
Constructor Summary
Constructors Constructor Description CriteriaModel(ValueAttribute attribute)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Type.ParameterizedbuildMatcher()private Type.ParameterizedbuildMatcher(CriteriaModel.IntrospectedType introspected)CriteriaModel.MatcherDefinitionmatcher()private Type.ParameterizedmatcherType(CriteriaModel.IntrospectedType introspected)private static java.lang.StringtopLevelCriteriaClassName(javax.lang.model.type.TypeMirror type)Criteria templates are always generated as top-level class (separate file).private TypetoType(javax.lang.model.type.TypeMirror mirror)
-
-
-
Field Detail
-
MATCHER
private static final java.lang.String MATCHER
- See Also:
- Constant Field Values
-
NO_BOUNDS
private static final java.lang.Iterable<Type.Defined> NO_BOUNDS
-
attribute
private final ValueAttribute attribute
-
factory
private final Type.Factory factory
-
elements
private final javax.lang.model.util.Elements elements
-
types
private final javax.lang.model.util.Types types
-
introspectedType
private final CriteriaModel.IntrospectedType introspectedType
-
matcherDefinition
private final CriteriaModel.MatcherDefinition matcherDefinition
-
-
Constructor Detail
-
CriteriaModel
CriteriaModel(ValueAttribute attribute)
-
-
Method Detail
-
toType
private Type toType(javax.lang.model.type.TypeMirror mirror)
-
topLevelCriteriaClassName
private static java.lang.String topLevelCriteriaClassName(javax.lang.model.type.TypeMirror type)
Criteria templates are always generated as top-level class (separate file). Construct criteria name from TypeMirror- Returns:
- fully qualified criteria (template) class name
-
matcherType
private Type.Parameterized matcherType(CriteriaModel.IntrospectedType introspected)
-
buildMatcher
public Type.Parameterized buildMatcher()
-
buildMatcher
private Type.Parameterized buildMatcher(CriteriaModel.IntrospectedType introspected)
-
matcher
public CriteriaModel.MatcherDefinition matcher()
-
-