Class Constitution
java.lang.Object
org.immutables.value.processor.meta.Constitution
- Direct Known Subclasses:
ImmutableConstitution
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classstatic classclassfinal classfinal classstatic class -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate Constitution.AppliedNameFormsapplyFactoryNaming(Naming naming) private Constitution.AppliedNameFormsgenerics()booleanbooleanbooleanbooleanprivate Visibilityprivate StringPackage relative pathprivate booleanprivate booleanisConstantNamingEquals(Naming naming, String name) booleanbooleanbooleanbooleanisNested()booleanbooleanbooleanbooleanisSimple()private booleannames()abstract Proto.Protoclassbooleanstyle()Actual abstract value type that is definitive model for the value type.private StringActual immutable value type generated implementation.(package private) StringWalks to the enclosing type's simple names and applies naming convention.Value is the canonical outside look of the value type.typeWith()
-
Field Details
-
NA_ERROR
- See Also:
-
NEW_KEYWORD
- See Also:
-
DOT_JOINER
private static final com.google.common.base.Joiner DOT_JOINER
-
-
Constructor Details
-
Constitution
public Constitution()
-
-
Method Details
-
protoclass
-
generics
-
implementationVisibility
-
builderVisibility
-
isImplementationHidden
public boolean isImplementationHidden() -
returnsAbstractValueType
public boolean returnsAbstractValueType() -
isImplementationPrimary
public boolean isImplementationPrimary() -
implementationPackage
-
definingPackage
-
names
-
typePreferablyAbstract
-
typeDocument
-
typeModifiable
-
factoryCreate
-
isAbstractPrimary
private boolean isAbstractPrimary() -
isSimple
public boolean isSimple() -
typeValue
Value is the canonical outside look of the value type. It should be eithertypeAbstract()ortypeImmutable(). For factory it is a special surrogate.- Returns:
- canonical value type name forms
-
hasImmutableInBuilder
-
hasTopLevelBuilder
public boolean hasTopLevelBuilder() -
isFactory
public boolean isFactory() -
isNestedFactoryOrConstructor
public boolean isNestedFactoryOrConstructor() -
isNested
public boolean isNested() -
hasTopLevelImmutable
public boolean hasTopLevelImmutable() -
isOutsideBuilder
public boolean isOutsideBuilder() -
isTopLevelValue
private boolean isTopLevelValue() -
hasEnclosingNonvalue
public boolean hasEnclosingNonvalue() -
typeAbstract
Actual abstract value type that is definitive model for the value type.- Returns:
- abstract value type name forms
-
style
-
inPackage
Package relative path -
typeImmutable
Actual immutable value type generated implementation.- Returns:
- immutable implementation type name forms
-
typeImmutableEnclosingSimpleName
Walks to the enclosing type's simple names and applies naming convention. This shortcut/fix shows deficiency of model (it's probably more complicated than needed).- Returns:
- enclosing immutable name
-
typeBuilderSimpleName
-
factoryBuilder
-
factoryImplementationBuilder
-
isOutsideBuilderNotNested
public boolean isOutsideBuilderNotNested() -
isConstantNamingEquals
-
factoryOf
-
factoryInstance
-
factoryCopyOf
-
applyFactoryNaming
-
typeEnclosingFactory
-
typeEnclosing
-
implementationEnclosingVisibility
-
typeWith
-
typeBuilder
-
typeImplementationBuilder
-
innerBuilder
-
innerModifiable
-