Enum yash_env::system::OpenFlag

source ·
#[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<O: Into<EnumSet<OpenFlag>>> BitAnd<O> for OpenFlag

§

type Output = EnumSet<OpenFlag>

The resulting type after applying the & operator.
source§

fn bitand(self, other: O) -> Self::Output

Performs the & operation. Read more
source§

impl<O: Into<EnumSet<OpenFlag>>> BitOr<O> for OpenFlag

§

type Output = EnumSet<OpenFlag>

The resulting type after applying the | operator.
source§

fn bitor(self, other: O) -> Self::Output

Performs the | operation. Read more
source§

impl<O: Into<EnumSet<OpenFlag>>> BitXor<O> for OpenFlag

§

type Output = EnumSet<OpenFlag>

The resulting type after applying the ^ operator.
source§

fn bitxor(self, other: O) -> Self::Output

Performs the ^ operation. Read more
source§

impl Clone for OpenFlag

source§

fn clone(&self) -> Self

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for OpenFlag

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl EnumSetTypePrivate for OpenFlag

§

type ConstHelper = __EnumSetConstHelper

A helper type used to implement the enum_set! macro among other things.
source§

const CONST_HELPER_INSTANCE: __EnumSetConstHelper = __EnumSetConstHelper

The instance of the ConstHelper.
§

type Repr = u16

The underlying type used to store the bitset.
source§

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 BIT_WIDTH: u32 = 10u32

The largest bit used in the bitset.
source§

const VARIANT_COUNT: u32 = 10u32

The number of variants in the bitset.
source§

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

Converts a bit position into an enum value.
source§

impl Hash for OpenFlag

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl Not for OpenFlag

§

type Output = EnumSet<OpenFlag>

The resulting type after applying the ! operator.
source§

fn not(self) -> Self::Output

Performs the unary ! operation. Read more
source§

impl PartialEq<EnumSet<OpenFlag>> for OpenFlag

source§

fn eq(&self, other: &EnumSet<OpenFlag>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl PartialEq for OpenFlag

source§

fn eq(&self, other: &Self) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl<O: Into<EnumSet<OpenFlag>>> Sub<O> for OpenFlag

§

type Output = EnumSet<OpenFlag>

The resulting type after applying the - operator.
source§

fn sub(self, other: O) -> Self::Output

Performs the - operation. Read more
source§

impl Copy for OpenFlag

source§

impl EnumSetType for OpenFlag

source§

impl Eq for OpenFlag

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoEither for T

source§

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 more
source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.