Class SetMultimapProperty
- java.lang.Object
-
- org.inferred.freebuilder.processor.property.PropertyCodeGenerator
-
- org.inferred.freebuilder.processor.property.SetMultimapProperty
-
class SetMultimapProperty extends PropertyCodeGenerator
PropertyCodeGeneratorproviding fluent methods forSetMultimapproperties.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static classSetMultimapProperty.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 javax.lang.model.type.TypeMirrorkeyTypeprivate FunctionalTypemutatorTypeprivate booleanoverridesPutMethodprivate java.util.Optional<javax.lang.model.type.TypeMirror>unboxedKeyTypeprivate java.util.Optional<javax.lang.model.type.TypeMirror>unboxedValueTypeprivate javax.lang.model.type.TypeMirrorvalueType-
Fields inherited from class org.inferred.freebuilder.processor.property.PropertyCodeGenerator
datatype, property
-
-
Constructor Summary
Constructors Constructor Description SetMultimapProperty(Datatype datatype, Property property, boolean overridesPutMethod, javax.lang.model.type.TypeMirror keyType, java.util.Optional<javax.lang.model.type.TypeMirror> unboxedKeyType, javax.lang.model.type.TypeMirror valueType, java.util.Optional<javax.lang.model.type.TypeMirror> unboxedValueType, FunctionalType mutatorType)
-
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.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 voidaddClear(SourceBuilder code)voidaddClearField(SourceBuilder code)Adds a clear call for the property given a template builder to the builder's source code.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)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 voidaddMultimapPutAll(SourceBuilder code)private voidaddMutate(SourceBuilder code)private voidaddPut(SourceBuilder code)private voidaddRemove(SourceBuilder code)private voidaddRemoveAll(SourceBuilder code)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 voidaddSingleKeyPutAll(SourceBuilder code)voidaddValueFieldDeclaration(SourceBuilder code)Add the field declaration for the property to the value's source 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, addPartialFieldAssignment, addPutAnnotations, addReadValueFragment, addToStringCondition, addToStringValue, equals, hashCode, initialState, toString
-
-
-
-
Field Detail
-
overridesPutMethod
private final boolean overridesPutMethod
-
keyType
private final javax.lang.model.type.TypeMirror keyType
-
unboxedKeyType
private final java.util.Optional<javax.lang.model.type.TypeMirror> unboxedKeyType
-
valueType
private final javax.lang.model.type.TypeMirror valueType
-
unboxedValueType
private final java.util.Optional<javax.lang.model.type.TypeMirror> unboxedValueType
-
mutatorType
private final FunctionalType mutatorType
-
-
Constructor Detail
-
SetMultimapProperty
SetMultimapProperty(Datatype datatype, Property property, boolean overridesPutMethod, javax.lang.model.type.TypeMirror keyType, java.util.Optional<javax.lang.model.type.TypeMirror> unboxedKeyType, javax.lang.model.type.TypeMirror valueType, java.util.Optional<javax.lang.model.type.TypeMirror> unboxedValueType, FunctionalType mutatorType)
-
-
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
-
addPut
private void addPut(SourceBuilder code)
-
addSingleKeyPutAll
private void addSingleKeyPutAll(SourceBuilder code)
-
addMultimapPutAll
private void addMultimapPutAll(SourceBuilder code)
-
addRemove
private void addRemove(SourceBuilder code)
-
addRemoveAll
private void addRemoveAll(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
-
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
-
-