FcntlCmd

Enum FcntlCmd 

Source
#[repr(i32)]
pub enum FcntlCmd {
Show 15 variants DupFd = 0, GetFd = 1, SetFd = 2, GetFl = 3, SetFl = 4, GetLk = 5, SetLk = 6, SetLkW = 7, SetOwn = 8, GetOwn = 9, SetSig = 10, GetSig = 11, DupFdCloexec = 1_030, SetPipeSz = 1_031, GetPipeSz = 1_032,
}
Expand description

fcntl 命令

使用枚举避免魔数,提供类型安全 参考:include/uapi/asm-generic/fcntl.h

Variants§

§

DupFd = 0

复制文件描述符,新 fd >= arg (F_DUPFD)

§

GetFd = 1

获取文件描述符标志 (F_GETFD)

§

SetFd = 2

设置文件描述符标志 (F_SETFD)

§

GetFl = 3

获取文件状态标志 (F_GETFL)

§

SetFl = 4

设置文件状态标志 (F_SETFL)

§

GetLk = 5

获取锁信息 (F_GETLK)

§

SetLk = 6

设置锁(非阻塞)(F_SETLK)

§

SetLkW = 7

设置锁(阻塞)(F_SETLKW)

§

SetOwn = 8

设置异步 I/O 所有者 (F_SETOWN)

§

GetOwn = 9

获取异步 I/O 所有者 (F_GETOWN)

§

SetSig = 10

设置信号 (F_SETSIG)

§

GetSig = 11

获取信号 (F_GETSIG)

§

DupFdCloexec = 1_030

复制 fd 并设置 CLOEXEC (F_DUPFD_CLOEXEC)

§

SetPipeSz = 1_031

设置管道大小 (F_SETPIPE_SZ)

§

GetPipeSz = 1_032

获取管道大小 (F_GETPIPE_SZ)

Implementations§

Source§

impl FcntlCmd

Source

pub fn from_raw(cmd: i32) -> Option<Self>

从 i32 转换为 FcntlCmd

§返回值
  • Some(cmd): 识别的命令
  • None: 未知命令

Trait Implementations§

Source§

impl Clone for FcntlCmd

Source§

fn clone(&self) -> FcntlCmd

Returns a duplicate of the value. Read more
1.0.0§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for FcntlCmd

Source§

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

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

impl PartialEq for FcntlCmd

Source§

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

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

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 Copy for FcntlCmd

Source§

impl Eq for FcntlCmd

Source§

impl StructuralPartialEq for FcntlCmd

Auto Trait Implementations§

§

impl Freeze for FcntlCmd

§

impl RefUnwindSafe for FcntlCmd

§

impl Send for FcntlCmd

§

impl Sync for FcntlCmd

§

impl Unpin for FcntlCmd

§

impl UnwindSafe for FcntlCmd

Blanket Implementations§

§

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

§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

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

§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
§

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

§

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

Mutably borrows from an owned value. Read more
§

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

§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

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

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> From<T> for T

§

fn from(t: T) -> T

Returns the argument unchanged.

§

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

§

fn into(self) -> U

Calls U::from(self).

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

§

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

§

type Owned = T

The resulting type after obtaining ownership.
§

fn to_owned(&self) -> T

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

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

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

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

§

type Error = Infallible

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

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

Performs the conversion.
§

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

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

Performs the conversion.