Class BuildableListProperty
- java.lang.Object
-
- org.inferred.freebuilder.processor.property.PropertyCodeGenerator
-
- org.inferred.freebuilder.processor.property.BuildableListProperty
-
class BuildableListProperty extends PropertyCodeGenerator
PropertyCodeGeneratorproviding fluent methods forListproperties containingBuildableTypeinstances.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static classBuildableListProperty.Factory-
Nested classes/interfaces inherited from class org.inferred.freebuilder.processor.property.PropertyCodeGenerator
PropertyCodeGenerator.Config, PropertyCodeGenerator.Initially
-
-
Field Summary
Fields Modifier and Type Field Description private BuildableTypeelementprivate booleanneedsSafeVarargsprivate booleanoverridesBuilderVarargsAddMethodprivate booleanoverridesValueInstanceVarargsAddMethod-
Fields inherited from class org.inferred.freebuilder.processor.property.PropertyCodeGenerator
datatype, property
-
-
Constructor Summary
Constructors Modifier Constructor Description privateBuildableListProperty(Datatype datatype, Property property, boolean needsSafeVarargs, boolean overridesValueInstanceVarargsAddMethod, boolean overridesBuilderVarargsAddMethod, BuildableType element)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddAssignToBuilder(SourceBuilder code, Variable builder)Adds an assignment to the field on the builder from the Value/Partial implementation.private voidaddBuilderAdd(SourceBuilder code)voidaddBuilderFieldAccessors(SourceBuilder code)Add the accessor methods for the property to the builder's source code.voidaddBuilderFieldDeclaration(SourceBuilder code)Add the field declaration for the property to the builder's source code.private voidaddBuilderVarargsAdd(SourceBuilder code)private voidaddClear(SourceBuilder code)voidaddClearField(SourceBuilder code)Adds a clear call for the property given a template builder to the builder's source code.private voidaddFieldAssignment(SourceBuilder code, Excerpt finalField, java.lang.String builder, java.lang.String buildMethod)voidaddFinalFieldAssignment(SourceBuilder code, Excerpt finalField, java.lang.String builder)Add the final assignment of the property to the value object's source code.private voidaddGetter(SourceBuilder code)private voidaddIterableBuilderAddAll(SourceBuilder code)private voidaddIterableValueInstanceAddAll(SourceBuilder code)private voidaddJavadocForAddingMultipleBuilders(SourceBuilder code)private voidaddJavadocForAddingMultipleValues(SourceBuilder code)voidaddMergeFromBuilder(SourceBuilder code, java.lang.String builder)Add a merge from builder for the property to the builder's source code.voidaddMergeFromValue(SourceBuilder code, java.lang.String value)Add a merge from value for the property to the builder's source code.private voidaddMutate(SourceBuilder code)voidaddPartialFieldAssignment(SourceBuilder code, Excerpt finalField, java.lang.String builder)Add the final assignment of the property to the partial value object's source code.private voidaddSafeVarargsForPublicMethod(SourceBuilder code, boolean isOverridden)voidaddSetFromResult(SourceBuilder code, Excerpt builder, Excerpt variable)Adds a set call for the property from a function result to the builder's source code.private voidaddSpliteratorBuilderAddAll(SourceBuilder code)private voidaddSpliteratorValueInstanceAddAll(SourceBuilder code)private voidaddStreamBuilderAddAll(SourceBuilder code)private voidaddStreamValueInstanceAddAll(SourceBuilder code)voidaddValueFieldDeclaration(SourceBuilder code)Add the field declaration for the property to the value's source code.private voidaddValueInstanceAdd(SourceBuilder code)private voidaddValueInstanceVarargsAdd(SourceBuilder code)java.util.Set<MergeAction>getMergeActions()Returns the actions taken in mergeFrom, for generating JavaDoc.-
Methods inherited from class org.inferred.freebuilder.processor.property.PropertyCodeGenerator
addAccessorAnnotations, addGetterAnnotations, addPutAnnotations, addReadValueFragment, addToStringCondition, addToStringValue, equals, hashCode, initialState, toString
-
-
-
-
Field Detail
-
needsSafeVarargs
private final boolean needsSafeVarargs
-
overridesValueInstanceVarargsAddMethod
private final boolean overridesValueInstanceVarargsAddMethod
-
overridesBuilderVarargsAddMethod
private final boolean overridesBuilderVarargsAddMethod
-
element
private final BuildableType element
-
-
Constructor Detail
-
BuildableListProperty
private BuildableListProperty(Datatype datatype, Property property, boolean needsSafeVarargs, boolean overridesValueInstanceVarargsAddMethod, boolean overridesBuilderVarargsAddMethod, BuildableType element)
-
-
Method Detail
-
addValueFieldDeclaration
public void addValueFieldDeclaration(SourceBuilder code)
Description copied from class:PropertyCodeGeneratorAdd the field declaration for the property to the value's source code.- Specified by:
addValueFieldDeclarationin classPropertyCodeGenerator
-
addBuilderFieldDeclaration
public void addBuilderFieldDeclaration(SourceBuilder code)
Description copied from class:PropertyCodeGeneratorAdd the field declaration for the property to the builder's source code.- Specified by:
addBuilderFieldDeclarationin classPropertyCodeGenerator
-
addBuilderFieldAccessors
public void addBuilderFieldAccessors(SourceBuilder code)
Description copied from class:PropertyCodeGeneratorAdd the accessor methods for the property to the builder's source code.- Specified by:
addBuilderFieldAccessorsin classPropertyCodeGenerator
-
addValueInstanceAdd
private void addValueInstanceAdd(SourceBuilder code)
-
addBuilderAdd
private void addBuilderAdd(SourceBuilder code)
-
addJavadocForAddingMultipleValues
private void addJavadocForAddingMultipleValues(SourceBuilder code)
-
addJavadocForAddingMultipleBuilders
private void addJavadocForAddingMultipleBuilders(SourceBuilder code)
-
addValueInstanceVarargsAdd
private void addValueInstanceVarargsAdd(SourceBuilder code)
-
addBuilderVarargsAdd
private void addBuilderVarargsAdd(SourceBuilder code)
-
addSafeVarargsForPublicMethod
private void addSafeVarargsForPublicMethod(SourceBuilder code, boolean isOverridden)
-
addSpliteratorValueInstanceAddAll
private void addSpliteratorValueInstanceAddAll(SourceBuilder code)
-
addSpliteratorBuilderAddAll
private void addSpliteratorBuilderAddAll(SourceBuilder code)
-
addIterableValueInstanceAddAll
private void addIterableValueInstanceAddAll(SourceBuilder code)
-
addIterableBuilderAddAll
private void addIterableBuilderAddAll(SourceBuilder code)
-
addStreamValueInstanceAddAll
private void addStreamValueInstanceAddAll(SourceBuilder code)
-
addStreamBuilderAddAll
private void addStreamBuilderAddAll(SourceBuilder code)
-
addMutate
private void addMutate(SourceBuilder code)
-
addClear
private void addClear(SourceBuilder code)
-
addGetter
private void addGetter(SourceBuilder code)
-
addFinalFieldAssignment
public void addFinalFieldAssignment(SourceBuilder code, Excerpt finalField, java.lang.String builder)
Description copied from class:PropertyCodeGeneratorAdd the final assignment of the property to the value object's source code.- Specified by:
addFinalFieldAssignmentin classPropertyCodeGenerator
-
addPartialFieldAssignment
public void addPartialFieldAssignment(SourceBuilder code, Excerpt finalField, java.lang.String builder)
Description copied from class:PropertyCodeGeneratorAdd the final assignment of the property to the partial value object's source code.- Overrides:
addPartialFieldAssignmentin classPropertyCodeGenerator
-
addFieldAssignment
private void addFieldAssignment(SourceBuilder code, Excerpt finalField, java.lang.String builder, java.lang.String buildMethod)
-
addAssignToBuilder
public void addAssignToBuilder(SourceBuilder code, Variable builder)
Description copied from class:PropertyCodeGeneratorAdds an assignment to the field on the builder from the Value/Partial implementation.- Specified by:
addAssignToBuilderin classPropertyCodeGenerator
-
addMergeFromValue
public void addMergeFromValue(SourceBuilder code, java.lang.String value)
Description copied from class:PropertyCodeGeneratorAdd a merge from value for the property to the builder's source code.- Specified by:
addMergeFromValuein classPropertyCodeGenerator
-
addMergeFromBuilder
public void addMergeFromBuilder(SourceBuilder code, java.lang.String builder)
Description copied from class:PropertyCodeGeneratorAdd a merge from builder for the property to the builder's source code.- Specified by:
addMergeFromBuilderin classPropertyCodeGenerator
-
getMergeActions
public java.util.Set<MergeAction> getMergeActions()
Description copied from class:PropertyCodeGeneratorReturns the actions taken in mergeFrom, for generating JavaDoc.- Specified by:
getMergeActionsin classPropertyCodeGenerator
-
addSetFromResult
public void addSetFromResult(SourceBuilder code, Excerpt builder, Excerpt variable)
Description copied from class:PropertyCodeGeneratorAdds a set call for the property from a function result to the builder's source code.- Specified by:
addSetFromResultin classPropertyCodeGenerator
-
addClearField
public void addClearField(SourceBuilder code)
Description copied from class:PropertyCodeGeneratorAdds a clear call for the property given a template builder to the builder's source code.- Specified by:
addClearFieldin classPropertyCodeGenerator
-
-