Struct NoArg

Source
pub struct NoArg<const OPCODE: Opcode> {}
Expand description

Implements an ioctl with no real arguments.

To compute a value for the OPCODE argument, see the functions in the opcode module.

Implementations§

Source§

impl<const OPCODE: Opcode> NoArg<OPCODE>

Source

pub const unsafe fn new() -> Self

Create a new no-argument ioctl object.

§Safety
  • OPCODE must provide a valid opcode.

Trait Implementations§

Source§

impl<const OPCODE: Opcode> Debug for NoArg<OPCODE>

Source§

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

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

impl<const OPCODE: Opcode> Ioctl for NoArg<OPCODE>

Source§

const IS_MUTATING: bool = false

Does the ioctl mutate any data in the userspace? Read more
Source§

type Output = ()

The type of the output data. Read more
Source§

fn opcode(&self) -> Opcode

Get the opcode used by this ioctl command. Read more
Source§

fn as_ptr(&mut self) -> *mut c_void

Get a pointer to the data to be passed to the ioctl command. Read more
Source§

unsafe fn output_from_ptr( _: IoctlOutput, _: *mut c_void, ) -> Result<Self::Output>

Cast the output data to the correct type. Read more

Auto Trait Implementations§

§

impl<const OPCODE: u32> Freeze for NoArg<OPCODE>

§

impl<const OPCODE: u32> RefUnwindSafe for NoArg<OPCODE>

§

impl<const OPCODE: u32> Send for NoArg<OPCODE>

§

impl<const OPCODE: u32> Sync for NoArg<OPCODE>

§

impl<const OPCODE: u32> Unpin for NoArg<OPCODE>

§

impl<const OPCODE: u32> UnwindSafe for NoArg<OPCODE>

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> 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, U> TryFrom<U> for T
where U: Into<T>,

Source§

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>,

Source§

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.

Layout§

Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.

Size: 0 bytes