#[non_exhaustive]pub enum OpenFlag {
Append,
CloseOnExec,
Create,
Directory,
Exclusive,
NoCtty,
NoFollow,
NonBlock,
Sync,
Truncate,
}Expand description
Options for opening file descriptors
A set of OpenFlag values can be passed to open to configure how the
file descriptor is opened. Some of the flags become the attributes of the
open file description created by the open function.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Append
Always write to the end of the file
CloseOnExec
Close the file descriptor upon execution of an exec family function
Create
Create the file if it does not exist
Directory
Fail if the file is not a directory
Exclusive
Atomically create the file if it does not exist
NoCtty
Do not make the opened terminal the controlling terminal for the process
NoFollow
Do not follow symbolic links
NonBlock
Open the file in non-blocking mode
Sync
Wait until the written data is physically stored on the underlying storage device on each write
Truncate
Truncate the file to zero length
Trait Implementations§
Source§impl EnumSetConstHelper for OpenFlag
impl EnumSetConstHelper for OpenFlag
Source§const CONST_INIT_HELPER: __EnumSetInitHelper = __EnumSetInitHelper
const CONST_INIT_HELPER: __EnumSetInitHelper = __EnumSetInitHelper
The instance of the
ConstInitHelper.Source§const CONST_OP_HELPER: __EnumSetOpHelper = __EnumSetOpHelper
const CONST_OP_HELPER: __EnumSetOpHelper = __EnumSetOpHelper
The instance of the
ConstOpHelper.Source§type ConstInitHelper = __EnumSetInitHelper
type ConstInitHelper = __EnumSetInitHelper
A helper type used to convert values to EnumSets at compile-time.
Source§type ConstOpHelper = __EnumSetOpHelper
type ConstOpHelper = __EnumSetOpHelper
A helper type used to implement compile-time operations on enums.
Source§impl EnumSetTypePrivate for OpenFlag
impl EnumSetTypePrivate for OpenFlag
Source§const ALL_BITS: Self::Repr = {transmute(0x03ff): <system::open_flag::OpenFlag as enumset::__internal::EnumSetTypePrivate>::Repr}
const ALL_BITS: Self::Repr = {transmute(0x03ff): <system::open_flag::OpenFlag as enumset::__internal::EnumSetTypePrivate>::Repr}
A mask of bits that are valid in the bitset.
Source§const VARIANT_COUNT: u32 = 10u32
const VARIANT_COUNT: u32 = 10u32
The number of variants in the bitset.
Source§fn enum_into_u32(self) -> u32
fn enum_into_u32(self) -> u32
Converts an enum of this type into its bit position.
Source§unsafe fn enum_from_u32(val: u32) -> Self
unsafe fn enum_from_u32(val: u32) -> Self
Converts a bit position into an enum value.
Source§unsafe fn enum_from_u32_checked(val: u32) -> Self
unsafe fn enum_from_u32_checked(val: u32) -> Self
Converts a bit position into an enum value, with an debug_assert.
impl Copy for OpenFlag
impl EnumSetType for OpenFlag
impl Eq for OpenFlag
Auto Trait Implementations§
impl Freeze for OpenFlag
impl RefUnwindSafe for OpenFlag
impl Send for OpenFlag
impl Sync for OpenFlag
impl Unpin for OpenFlag
impl UnwindSafe for OpenFlag
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more