use core::ffi::c_int;
#[derive(Debug, Clone, Copy)]
pub enum SeekFrom {
#[doc(alias = "sys::ffi::SEEK_SET")]
Start(c_int),
#[doc(alias = "sys::ffi::SEEK_CUR")]
Current(c_int),
#[doc(alias = "sys::ffi::SEEK_END")]
End(c_int),
}
impl SeekFrom {
pub const fn into_parts(self) -> (Whence, c_int) {
match self {
SeekFrom::Start(pos) => (Whence::Start, pos),
SeekFrom::Current(pos) => (Whence::Current, pos),
SeekFrom::End(pos) => (Whence::End, pos),
}
}
}
#[repr(u32)]
#[derive(Debug, Clone, Copy)]
pub enum Whence {
#[doc(alias = "sys::ffi::SEEK_SET")]
Start = sys::ffi::SEEK_SET as _,
#[doc(alias = "sys::ffi::SEEK_CUR")]
Current = sys::ffi::SEEK_CUR as _,
#[doc(alias = "sys::ffi::SEEK_END")]
End = sys::ffi::SEEK_END as _,
}