Struct IntegerSetter

Source
pub struct IntegerSetter<const OPCODE: Opcode> { /* private fields */ }
Expand description

Implements an ioctl that passes an integer into the ioctl.

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

Implementations§

Source§

impl<const OPCODE: Opcode> IntegerSetter<OPCODE>

Source

pub const unsafe fn new_usize(value: usize) -> Self

Create a new integer Ioctl helper containing a usize.

§Safety
  • OPCODE must provide a valid opcode.
  • For this opcode, it must expect an integer.
  • The integer is in the valid range for this opcode.
Source

pub const unsafe fn new_pointer(value: *mut c_void) -> Self

Create a new integer Ioctl helper containing a *mut c_void.

§Safety
  • OPCODE must provide a valid opcode.
  • For this opcode, it must expect an integer.
  • The integer is in the valid range for this opcode.

Trait Implementations§

Source§

impl<const OPCODE: Opcode> Ioctl for IntegerSetter<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( _out: IoctlOutput, _extract_output: *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 IntegerSetter<OPCODE>

§

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

§

impl<const OPCODE: u32> !Send for IntegerSetter<OPCODE>

§

impl<const OPCODE: u32> !Sync for IntegerSetter<OPCODE>

§

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

§

impl<const OPCODE: u32> UnwindSafe for IntegerSetter<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: 8 bytes