Struct winsafe::HFILE

source ·
pub struct HFILE(/* private fields */);
Available on crate feature kernel only.
Expand description

Handle to a file. Originally just a HANDLE.

Unless you need something specific, consider using the File high-level abstraction.

Trait Implementations§

source§

impl Debug for HFILE

source§

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

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

impl Display for HFILE

source§

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

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

impl Handle for HFILE

source§

const NULL: Self = _

The null, uninitialized handle; equals to 0.
source§

const INVALID: Self = _

The invalid handle; equals to -1. Read more
source§

unsafe fn from_ptr(p: *mut c_void) -> Self

Creates a new handle object by wrapping a pointer. Read more
source§

unsafe fn as_mut(&mut self) -> &mut *mut c_void

Returns a mutable reference to the underlying raw pointer. Read more
source§

unsafe fn raw_copy(&self) -> Self

Returns a raw copy of the underlying handle pointer. Read more
source§

fn ptr(&self) -> *mut c_void

Returns the underlying raw pointer. Read more
source§

fn as_opt(&self) -> Option<&Self>

Returns None if the handle is null or invalid, otherwise returns Some(&self). Read more
source§

impl Hash for HFILE

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 LowerHex for HFILE

source§

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

Formats the value using the given formatter.
source§

impl PartialEq for HFILE

source§

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

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

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

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

impl UpperHex for HFILE

source§

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

Formats the value using the given formatter.
source§

impl kernel_Hfile for HFILE

source§

fn CreateFile( file_name: &str, desired_access: GENERIC, share_mode: Option<FILE_SHARE>, security_attributes: Option<&mut SECURITY_ATTRIBUTES<'_>>, creation_disposition: DISPOSITION, attributes: FILE_ATTRIBUTE, flags: Option<FILE_FLAG>, security: Option<FILE_SECURITY>, hfile_template: Option<&HFILE> ) -> SysResult<(CloseHandleGuard<HFILE>, ERROR)>

source§

fn CreateFileMapping( &self, mapping_attrs: Option<&mut SECURITY_ATTRIBUTES<'_>>, protect: PAGE, max_size: Option<u64>, mapping_name: Option<&str> ) -> SysResult<CloseHandleGuard<HFILEMAP>>

source§

fn GetFileInformationByHandle( &self, fi: &mut BY_HANDLE_FILE_INFORMATION ) -> SysResult<()>

source§

fn GetFileSizeEx(&self) -> SysResult<u64>

GetFileSizeEx function.
source§

fn GetFileTime( &self, creation_time: Option<&mut FILETIME>, last_access_time: Option<&mut FILETIME>, last_write_time: Option<&mut FILETIME> ) -> SysResult<()>

GetFileTime function.
source§

fn GetFileType(&self) -> SysResult<FILE_TYPE>

GetFileType function.
source§

fn LockFile( &self, offset: u64, num_bytes_to_lock: u64 ) -> SysResult<UnlockFileGuard<'_, Self>>

source§

fn ReadFile(&self, buffer: &mut [u8]) -> SysResult<u32>

source§

fn SetEndOfFile(&self) -> SysResult<()>

SetEndOfFile function.
source§

fn SetFilePointerEx( &self, distance_to_move: i64, move_method: FILE_STARTING_POINT ) -> SysResult<i64>

source§

fn SetFileTime( &self, creation_time: Option<&FILETIME>, last_access_time: Option<&FILETIME>, last_write_time: Option<&FILETIME> ) -> SysResult<()>

SetFileTime function.
source§

fn WriteFile(&self, data: &[u8]) -> SysResult<u32>

source§

impl Eq for HFILE

source§

impl Send for HFILE

source§

impl StructuralPartialEq for HFILE

Auto Trait Implementations§

§

impl Freeze for HFILE

§

impl RefUnwindSafe for HFILE

§

impl !Sync for HFILE

§

impl Unpin for HFILE

§

impl UnwindSafe for HFILE

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> ToString for T
where T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. 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.