Skip to main content

FILE

Struct FILE 

Source
pub struct FILE { /* private fields */ }
Expand description

This represents the kernel <stdio.h> FILE type.

Implementations§

Source§

impl FILE

Source

pub const unsafe fn new(write: Option<FileCallback>, ptr: *mut c_void) -> Self

Creates a FILE that sends everything written to it to write, passing ptr as the callback’s first argument, like the C++ FILE(Callback* write, void* ptr) constructor.

§Safety

For the lifetime of the returned FILE, write (if present) must be sound to call with ptr and any (data, len) where data points to len readable bytes when len > 0 (and may be null when len == 0).

Source

pub fn write(&self, bytes: &[u8]) -> c_int

Writes bytes via the callback, like the C++ FILE::Write. This is what fprintf calls to do output.

Returns the callback’s result, or -1 if this FILE has no callback.

Trait Implementations§

Source§

impl Write for FILE

Source§

fn write_str(&mut self, s: &str) -> Result

Writes a string slice into this writer, returning whether the write succeeded. Read more
1.1.0§

fn write_char(&mut self, c: char) -> Result<(), Error>

Writes a [char] into this writer, returning whether the write succeeded. Read more
1.0.0§

fn write_fmt(&mut self, args: Arguments<'_>) -> Result<(), Error>

Glue for usage of the [write!] macro with implementors of this trait. Read more

Auto Trait Implementations§

§

impl !Send for FILE

§

impl !Sync for FILE

§

impl Freeze for FILE

§

impl RefUnwindSafe for FILE

§

impl Unpin for FILE

§

impl UnsafeUnpin for FILE

§

impl UnwindSafe for FILE

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

§

type Error = !

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

fn try_from(value: U) -> Result<T, !>

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.