Class RecordRemixImpl<T extends Record>
- All Implemented Interfaces:
RecordRemix<T>
public final class RecordRemixImpl<T extends Record> extends Object implements RecordRemix<T>
-
Method Summary
Modifier and Type Method Description voidassign(Consumer<RecordOperations<T>> operations)Adding aassignoperation to a record component specifies that an operation should be performed when assigning a value to the associated record component.voidblank(Consumer<RecordBuilder<T>> builder)Defines a global blank record that will be used as a basis when creating a new builder usingRecords.builder(Class).voidcopy(Consumer<RecordOperations<T>> operations)Defines the operations that should be performed when copying a record instance usingRecords.copy(Record)andRecords.structuralCopy(Class, Record)voidget(Consumer<RecordOperations<T>> operations)Adding agetoperation to a record component specifies that an operation should be performed when calling the accessor of the associated record component.RecordOperationsImpl<T>getAssignOperations()RecordBlankImpl<T>getBlank()RecordOperationsImpl<T>getCopyOperations()RecordOperationsImpl<T>getGetOperations()RecordOperationsImpl<T>getSetOperations()voidset(Consumer<RecordOperations<T>> operations)Adding asetoperation to a record component specifies that an operation should be performed when setting the value of the associated record component usingRecords.set(LambdaSupport.MutableSupplier, Object)
-
Method Details
-
blank
Description copied from interface:RecordRemixDefines a global blank record that will be used as a basis when creating a new builder usingRecords.builder(Class).- Specified by:
blankin interfaceRecordRemix<T extends Record>
-
copy
Description copied from interface:RecordRemixDefines the operations that should be performed when copying a record instance usingRecords.copy(Record)andRecords.structuralCopy(Class, Record)If the copy operations should be different, override this method to explicitly specify copy operations.
Otherwise, the
RecordRemix.get(Consumer)andRecordRemix.assign(Consumer)are used to determine the copy operations.- Specified by:
copyin interfaceRecordRemix<T extends Record>
-
get
Description copied from interface:RecordRemixAdding agetoperation to a record component specifies that an operation should be performed when calling the accessor of the associated record component.Requires the record component to be wrapped using either
Wrapped,Mutableor one of its primitive equivalents.- Specified by:
getin interfaceRecordRemix<T extends Record>
-
assign
Description copied from interface:RecordRemixAdding aassignoperation to a record component specifies that an operation should be performed when assigning a value to the associated record component.Assignment is defined as the initial value assignment in the constructor and the assignment using
Records.set(LambdaSupport.MutableSupplier, Object)if the record component is made mutable by usingMutable.Requires the record component to be wrapped using either
Wrapped,Mutableor one of its primitive equivalents.- Specified by:
assignin interfaceRecordRemix<T extends Record>
-
set
Description copied from interface:RecordRemixAdding asetoperation to a record component specifies that an operation should be performed when setting the value of the associated record component usingRecords.set(LambdaSupport.MutableSupplier, Object)If the actions performed for the constructor assignment and setter assignment should be different, override this method to explicitly specify setter operations.
Otherwise,
RecordRemix.assign(Consumer)is used to determine the setter operations.- Specified by:
setin interfaceRecordRemix<T extends Record>
-
getBlank
-
getGetOperations
-
getAssignOperations
-
getSetOperations
-
getCopyOperations
-