pub struct AddFlags(/* private fields */);
Expand description
Flags related to operations of adding items to the WIM
Implementations§
Source§impl AddFlags
impl AddFlags
Sourcepub const DEREFERENCE: Self
pub const DEREFERENCE: Self
Follow symbolic links when scanning the directory tree
Sourcepub const VERBOSE: Self
pub const VERBOSE: Self
Call the progress function with the message [ProgressMsg::ScanDentry
]
when each directory or file has been scanned
Sourcepub const UNIX_DATA: Self
pub const UNIX_DATA: Self
Store the UNIX owner, group, mode, and device ID (major and minor number) of each file
Sourcepub const STRICT_ACLS: Self
pub const STRICT_ACLS: Self
Fail immediately if the full security descriptor of any file or directory cannot be accessed
Sourcepub const EXCLUDE_VERBOSE: Self
pub const EXCLUDE_VERBOSE: Self
Call the progress function with the message [ProgressMsg::ScanDentry
]
when a directory or file is excluded from capture
Sourcepub const RPFIX: Self
pub const RPFIX: Self
Reparse-point fixups: Modify absolute symbolic links (and junctions, in the case of Windows) that point inside the directory being captured to instead be absolute relative to the directory being captured
Sourcepub const NO_UNSUPPORTED_EXCLUDE: Self
pub const NO_UNSUPPORTED_EXCLUDE: Self
Do not automatically exclude unsupported files or directories from
capture, such as encrypted files in NTFS-3G capture mode, or device
files and FIFOs on UNIX-like systems when not also using Self::UNIX_DATA
Sourcepub const WINCONFIG: Self
pub const WINCONFIG: Self
Automatically select a capture configuration appropriate for capturing filesystems containing Windows operating systems
Sourcepub const NO_REPLACE: Self
pub const NO_REPLACE: Self
If the add command involves adding a non-directory file to a location
at which there already exists a nondirectory file in the image, issue
Error::InvalidOverlay
instead of replacing the file
Sourcepub const TEST_FILE_EXCLUSION: Self
pub const TEST_FILE_EXCLUSION: Self
Send [ProgressMsg::TestFileExclusion
] messages to the progress function
Sourcepub const SNAPSHOT: Self
pub const SNAPSHOT: Self
create a temporary filesystem snapshot of the source directory and add the files from it
Sourcepub const FILE_PATHS_UNNEEDED: Self
pub const FILE_PATHS_UNNEEDED: Self
Permit the library to discard file paths after the initial scan
Source§impl AddFlags
impl AddFlags
Sourcepub const fn bits(&self) -> c_int
pub const fn bits(&self) -> c_int
Get the underlying bits value.
The returned value is exactly the bits set in this flags value.
Sourcepub const fn from_bits(bits: c_int) -> Option<Self>
pub const fn from_bits(bits: c_int) -> Option<Self>
Convert from a bits value.
This method will return None
if any unknown bits are set.
Sourcepub const fn from_bits_truncate(bits: c_int) -> Self
pub const fn from_bits_truncate(bits: c_int) -> Self
Convert from a bits value, unsetting any unknown bits.
Sourcepub const fn from_bits_retain(bits: c_int) -> Self
pub const fn from_bits_retain(bits: c_int) -> Self
Convert from a bits value exactly.
Sourcepub fn from_name(name: &str) -> Option<Self>
pub fn from_name(name: &str) -> Option<Self>
Get a flags value with the bits of a flag with the given name set.
This method will return None
if name
is empty or doesn’t
correspond to any named flag.
Sourcepub const fn intersects(&self, other: Self) -> bool
pub const fn intersects(&self, other: Self) -> bool
Whether any set bits in a source flags value are also set in a target flags value.
Sourcepub const fn contains(&self, other: Self) -> bool
pub const fn contains(&self, other: Self) -> bool
Whether all set bits in a source flags value are also set in a target flags value.
Sourcepub fn remove(&mut self, other: Self)
pub fn remove(&mut self, other: Self)
The intersection of a source flags value with the complement of a target flags value (&!
).
This method is not equivalent to self & !other
when other
has unknown bits set.
remove
won’t truncate other
, but the !
operator will.
Sourcepub fn toggle(&mut self, other: Self)
pub fn toggle(&mut self, other: Self)
The bitwise exclusive-or (^
) of the bits in two flags values.
Sourcepub fn set(&mut self, other: Self, value: bool)
pub fn set(&mut self, other: Self, value: bool)
Call insert
when value
is true
or remove
when value
is false
.
Sourcepub const fn intersection(self, other: Self) -> Self
pub const fn intersection(self, other: Self) -> Self
The bitwise and (&
) of the bits in two flags values.
Sourcepub const fn union(self, other: Self) -> Self
pub const fn union(self, other: Self) -> Self
The bitwise or (|
) of the bits in two flags values.
Sourcepub const fn difference(self, other: Self) -> Self
pub const fn difference(self, other: Self) -> Self
The intersection of a source flags value with the complement of a target flags value (&!
).
This method is not equivalent to self & !other
when other
has unknown bits set.
difference
won’t truncate other
, but the !
operator will.
Sourcepub const fn symmetric_difference(self, other: Self) -> Self
pub const fn symmetric_difference(self, other: Self) -> Self
The bitwise exclusive-or (^
) of the bits in two flags values.
Sourcepub const fn complement(self) -> Self
pub const fn complement(self) -> Self
The bitwise negation (!
) of the bits in a flags value, truncating the result.
Source§impl AddFlags
impl AddFlags
Sourcepub const fn iter(&self) -> Iter<AddFlags>
pub const fn iter(&self) -> Iter<AddFlags>
Yield a set of contained flags values.
Each yielded flags value will correspond to a defined named flag. Any unknown bits will be yielded together as a final flags value.
Sourcepub const fn iter_names(&self) -> IterNames<AddFlags>
pub const fn iter_names(&self) -> IterNames<AddFlags>
Yield a set of contained named flags values.
This method is like iter
, except only yields bits in contained named flags.
Any unknown bits, or bits not corresponding to a contained flag will not be yielded.
Trait Implementations§
Source§impl BitAndAssign for AddFlags
impl BitAndAssign for AddFlags
Source§fn bitand_assign(&mut self, other: Self)
fn bitand_assign(&mut self, other: Self)
The bitwise and (&
) of the bits in two flags values.
Source§impl BitOrAssign for AddFlags
impl BitOrAssign for AddFlags
Source§fn bitor_assign(&mut self, other: Self)
fn bitor_assign(&mut self, other: Self)
The bitwise or (|
) of the bits in two flags values.
Source§impl BitXorAssign for AddFlags
impl BitXorAssign for AddFlags
Source§fn bitxor_assign(&mut self, other: Self)
fn bitxor_assign(&mut self, other: Self)
The bitwise exclusive-or (^
) of the bits in two flags values.
Source§impl Extend<AddFlags> for AddFlags
impl Extend<AddFlags> for AddFlags
Source§fn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)
fn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)
The bitwise or (|
) of the bits in each flags value.
Source§fn extend_one(&mut self, item: A)
fn extend_one(&mut self, item: A)
extend_one
)Source§fn extend_reserve(&mut self, additional: usize)
fn extend_reserve(&mut self, additional: usize)
extend_one
)Source§impl Flags for AddFlags
impl Flags for AddFlags
Source§fn from_bits_retain(bits: c_int) -> AddFlags
fn from_bits_retain(bits: c_int) -> AddFlags
Source§fn contains_unknown_bits(&self) -> bool
fn contains_unknown_bits(&self) -> bool
true
if any unknown bits are set.Source§fn from_bits_truncate(bits: Self::Bits) -> Self
fn from_bits_truncate(bits: Self::Bits) -> Self
Source§fn from_name(name: &str) -> Option<Self>
fn from_name(name: &str) -> Option<Self>
Source§fn iter_names(&self) -> IterNames<Self>
fn iter_names(&self) -> IterNames<Self>
Source§fn intersects(&self, other: Self) -> boolwhere
Self: Sized,
fn intersects(&self, other: Self) -> boolwhere
Self: Sized,
Source§fn contains(&self, other: Self) -> boolwhere
Self: Sized,
fn contains(&self, other: Self) -> boolwhere
Self: Sized,
Source§fn insert(&mut self, other: Self)where
Self: Sized,
fn insert(&mut self, other: Self)where
Self: Sized,
|
) of the bits in two flags values.Source§fn remove(&mut self, other: Self)where
Self: Sized,
fn remove(&mut self, other: Self)where
Self: Sized,
&!
). Read moreSource§fn toggle(&mut self, other: Self)where
Self: Sized,
fn toggle(&mut self, other: Self)where
Self: Sized,
^
) of the bits in two flags values.Source§fn intersection(self, other: Self) -> Self
fn intersection(self, other: Self) -> Self
&
) of the bits in two flags values.Source§fn difference(self, other: Self) -> Self
fn difference(self, other: Self) -> Self
&!
). Read moreSource§fn symmetric_difference(self, other: Self) -> Self
fn symmetric_difference(self, other: Self) -> Self
^
) of the bits in two flags values.Source§fn complement(self) -> Self
fn complement(self) -> Self
!
) of the bits in a flags value, truncating the result.Source§impl FromIterator<AddFlags> for AddFlags
impl FromIterator<AddFlags> for AddFlags
Source§fn from_iter<T: IntoIterator<Item = Self>>(iterator: T) -> Self
fn from_iter<T: IntoIterator<Item = Self>>(iterator: T) -> Self
The bitwise or (|
) of the bits in each flags value.
Source§impl IntoIterator for AddFlags
impl IntoIterator for AddFlags
Source§impl Sub for AddFlags
impl Sub for AddFlags
Source§impl SubAssign for AddFlags
impl SubAssign for AddFlags
Source§fn sub_assign(&mut self, other: Self)
fn sub_assign(&mut self, other: Self)
The intersection of a source flags value with the complement of a target flags value (&!
).
This method is not equivalent to self & !other
when other
has unknown bits set.
difference
won’t truncate other
, but the !
operator will.