1//! The following is derived from Rust's 2//! library/std/src/io/mod.rs at revision 3//! dca3f1b786efd27be3b325ed1e01e247aa589c3b. 4 5/// Enumeration of possible methods to seek within an I/O object. 6/// 7/// It is used by the [`Seek`] trait. 8#[derive(Copy, PartialEq, Eq, Clone, Debug)] 9#[cfg_attr(staged_api, stable(feature = "rust1", since = "1.0.0"))] 10pub enum SeekFrom { 11 /// Sets the offset to the provided number of bytes. 12 #[cfg_attr(staged_api, stable(feature = "rust1", since = "1.0.0"))] 13 Start(#[cfg_attr(staged_api, stable(feature = "rust1", since = "1.0.0"))] u64), 14 15 /// Sets the offset to the size of this object plus the specified number of 16 /// bytes. 17 /// 18 /// It is possible to seek beyond the end of an object, but it's an error 19 /// to seek before byte 0. 20 #[cfg_attr(staged_api, stable(feature = "rust1", since = "1.0.0"))] 21 End(#[cfg_attr(staged_api, stable(feature = "rust1", since = "1.0.0"))] i64), 22 23 /// Sets the offset to the current position plus the specified number of 24 /// bytes. 25 /// 26 /// It is possible to seek beyond the end of an object, but it's an error 27 /// to seek before byte 0. 28 #[cfg_attr(staged_api, stable(feature = "rust1", since = "1.0.0"))] 29 Current(#[cfg_attr(staged_api, stable(feature = "rust1", since = "1.0.0"))] i64), 30} 31