Implement Default
for Options
of mv
and cp
#7506
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Resolve #7502
This pull request includes several changes to the
cp
,mv
, anduucore
utilities, focusing on addingDefault
implementations to various enums and structs.The selection of default values is based on the values that would be set when no flag are passed in the command line.
Key changes include:
Enhancements to
cp
utility:Default
implementations for enumsClobberMode
,OverwriteMode
,ReflinkMode
,SparseMode
,CopyMode
, and structAttributes
. This simplifies the initialization of these types. [1] [2] [3] [4] [5]Default
implementation for theOptions
struct, setting default values for all fields.Default
trait forReflinkMode
in theOptions
struct.Enhancements to
mv
utility:Default
implementation for theOptions
struct, setting default values for all fields.Default
implementation for theOverwriteMode
enum.Enhancements to
uucore
library:Default
implementation for theBackupMode
enum and replaced the hardcoded backup suffix with a constantDEFAULT_BACKUP_SUFFIX
. [1] [2]Default
implementation for theUpdateMode
enum.