Struct FallocateFlags
#[repr(transparent)]
pub struct FallocateFlags(/* private field */);
Mode argument flags for fallocate determining operation performed on a given range.
Implementations
impl FallocateFlags
const fn empty() -> SelfGet a flags value with all bits unset.
const fn all() -> SelfGet a flags value with all known bits set.
const fn bits(&self) -> c_intGet the underlying bits value.
The returned value is exactly the bits set in this flags value.
const fn from_bits(bits: c_int) -> Option<Self>Convert from a bits value.
This method will return
Noneif any unknown bits are set.const fn from_bits_truncate(bits: c_int) -> SelfConvert from a bits value, unsetting any unknown bits.
const fn from_bits_retain(bits: c_int) -> SelfConvert from a bits value exactly.
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
Noneifnameis empty or doesn't correspond to any named flag.const fn is_empty(&self) -> boolWhether all bits in
selfare unset.const fn is_all(&self) -> boolWhether all known bits in this flags value are set.
const fn intersects(&self, other: Self) -> boolWhether any set bits in
otherare also set inself.const fn contains(&self, other: Self) -> boolWhether all set bits in
otherare also set inself.fn insert(&mut self, other: Self)The bitwise or (
|) of the bits inselfandother.fn remove(&mut self, other: Self)The intersection of
selfwith the complement ofother(&!).This method is not equivalent to
self & !otherwhenotherhas unknown bits set.removewon't truncateother, but the!operator will.fn toggle(&mut self, other: Self)The bitwise exclusive-or (
^) of the bits inselfandother.fn set(&mut self, other: Self, value: bool)Call
insertwhenvalueistrueorremovewhenvalueisfalse.const fn intersection(self, other: Self) -> SelfThe bitwise and (
&) of the bits inselfandother.const fn union(self, other: Self) -> SelfThe bitwise or (
|) of the bits inselfandother.const fn difference(self, other: Self) -> SelfThe intersection of
selfwith the complement ofother(&!).This method is not equivalent to
self & !otherwhenotherhas unknown bits set.differencewon't truncateother, but the!operator will.const fn symmetric_difference(self, other: Self) -> SelfThe bitwise exclusive-or (
^) of the bits inselfandother.const fn complement(self) -> SelfThe bitwise negation (
!) of the bits inself, truncating the result.
impl FallocateFlags
const fn iter(&self) -> Iter<FallocateFlags>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.
const fn iter_names(&self) -> IterNames<FallocateFlags>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.
impl FallocateFlags
const FALLOC_FL_KEEP_SIZE: Self = _;File size is not changed.
offset + len can be greater than file size.
const FALLOC_FL_PUNCH_HOLE: Self = _;Deallocates space by creating a hole.
Must be ORed with FALLOC_FL_KEEP_SIZE. Byte range starts at offset and continues for len bytes.
const FALLOC_FL_COLLAPSE_RANGE: Self = _;Removes byte range from a file without leaving a hole.
Byte range to collapse starts at offset and continues for len bytes.
const FALLOC_FL_ZERO_RANGE: Self = _;Zeroes space in specified byte range.
Byte range starts at offset and continues for len bytes.
const FALLOC_FL_INSERT_RANGE: Self = _;Increases file space by inserting a hole within the file size.
Does not overwrite existing data. Hole starts at offset and continues for len bytes.
const FALLOC_FL_UNSHARE_RANGE: Self = _;Shared file data extants are made private to the file.
Guarantees that a subsequent write will not fail due to lack of space.
Trait Implementations
impl Binary for FallocateFlags
fn fmt(&self, f: &mut Formatter<'_>) -> Result
impl BitAnd for FallocateFlags
type Output = FallocateFlags;fn bitand(self, other: Self) -> SelfThe bitwise and (
&) of the bits inselfandother.
impl BitAndAssign for FallocateFlags
fn bitand_assign(&mut self, other: Self)The bitwise and (
&) of the bits inselfandother.
impl BitOr for FallocateFlags
type Output = FallocateFlags;fn bitor(self, other: FallocateFlags) -> SelfThe bitwise or (
|) of the bits inselfandother.
impl BitOrAssign for FallocateFlags
fn bitor_assign(&mut self, other: Self)The bitwise or (
|) of the bits inselfandother.
impl BitXor for FallocateFlags
type Output = FallocateFlags;fn bitxor(self, other: Self) -> SelfThe bitwise exclusive-or (
^) of the bits inselfandother.
impl BitXorAssign for FallocateFlags
fn bitxor_assign(&mut self, other: Self)The bitwise exclusive-or (
^) of the bits inselfandother.
impl Clone for FallocateFlags
fn clone(&self) -> Self
impl Copy for FallocateFlags
impl Debug for FallocateFlags
fn fmt(&self, f: &mut Formatter<'_>) -> Result
impl Eq for FallocateFlags
impl Extend<FallocateFlags> for FallocateFlags
fn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)The bitwise or (
|) of the bits in each flags value.
impl Flags for FallocateFlags
const FLAGS: &'static [Flag<FallocateFlags>] = _;type Bits = i32;fn bits(&self) -> c_intfn from_bits_retain(bits: c_int) -> FallocateFlagsfn all_named() -> FallocateFlags
impl FromIterator<FallocateFlags> for FallocateFlags
fn from_iter<T: IntoIterator<Item = Self>>(iterator: T) -> SelfThe bitwise or (
|) of the bits in each flags value.
impl Hash for FallocateFlags
fn hash<__H: Hasher>(&self, state: &mut __H)
impl IntoIterator for FallocateFlags
type Item = FallocateFlags;type IntoIter = Iter<FallocateFlags>;fn into_iter(self) -> Self::IntoIter
impl LowerHex for FallocateFlags
fn fmt(&self, f: &mut Formatter<'_>) -> Result
impl Not for FallocateFlags
type Output = FallocateFlags;fn not(self) -> SelfThe bitwise negation (
!) of the bits inself, truncating the result.
impl Octal for FallocateFlags
fn fmt(&self, f: &mut Formatter<'_>) -> Result
impl Ord for FallocateFlags
fn cmp(&self, other: &Self) -> Ordering
impl PartialEq for FallocateFlags
fn eq(&self, other: &Self) -> bool
impl PartialOrd for FallocateFlags
fn partial_cmp(&self, other: &Self) -> Option<Ordering>
impl PublicFlags for FallocateFlags
type Primitive = i32;type Internal = InternalBitFlags;
impl StructuralPartialEq for FallocateFlags
impl Sub for FallocateFlags
type Output = FallocateFlags;fn sub(self, other: Self) -> SelfThe intersection of
selfwith the complement ofother(&!).This method is not equivalent to
self & !otherwhenotherhas unknown bits set.differencewon't truncateother, but the!operator will.
impl SubAssign for FallocateFlags
fn sub_assign(&mut self, other: Self)The intersection of
selfwith the complement ofother(&!).This method is not equivalent to
self & !otherwhenotherhas unknown bits set.differencewon't truncateother, but the!operator will.
impl UpperHex for FallocateFlags
fn fmt(&self, f: &mut Formatter<'_>) -> Result
Auto Trait Implementations
impl Freeze for FallocateFlags
impl RefUnwindSafe for FallocateFlags
impl Send for FallocateFlags
impl Sync for FallocateFlags
impl Unpin for FallocateFlags
impl UnsafeUnpin for FallocateFlags
impl UnwindSafe for FallocateFlags
Blanket Implementations
impl<T> Any for FallocateFlags
where
T: 'static + ?Sized,
fn type_id(&self) -> TypeId
impl<T> Borrow<T> for FallocateFlags
where
T: ?Sized,
fn borrow(&self) -> &T
impl<T> BorrowMut<T> for FallocateFlags
where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
impl<T> CloneToUninit for FallocateFlags
where
T: Clone,
unsafe fn clone_to_uninit(&self, dest: *mut u8)
impl<T> From<T> for FallocateFlags
fn from(t: T) -> TReturns the argument unchanged.
impl<T> ToOwned for FallocateFlags
where
T: Clone,
type Owned = T;fn to_owned(&self) -> Tfn clone_into(&self, target: &mut T)
impl<T, U> Into<U> for FallocateFlags
where
U: From<T>,
fn into(self) -> UCalls
U::from(self).That is, this conversion is whatever the implementation of
[From]<T> for Uchooses to do.
impl<T, U> TryFrom<U> for FallocateFlags
where
U: Into<T>,
type Error = never;fn try_from(value: U) -> Result<T, never>
impl<T, U> TryInto<U> for FallocateFlags
where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error;fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>