pub struct FileTime { /* private fields */ }
Expand description
A helper structure to represent a timestamp for a file.
The actual value contined within is platform-specific and does not have the same meaning across platforms, but comparisons and stringification can be significant among the same platform.
Implementations
sourceimpl FileTime
impl FileTime
sourcepub const fn zero() -> FileTime
pub const fn zero() -> FileTime
Creates a new timestamp representing a 0 time.
Useful for creating the base of a cmp::max chain of times.
sourcepub fn now() -> FileTime
pub fn now() -> FileTime
Creates a new timestamp representing the current system time.
filetime::set_file_mtime(path, FileTime::now())?;
Equivalent to FileTime::from_system_time(SystemTime::now())
.
sourcepub const fn from_unix_time(seconds: i64, nanos: u32) -> FileTime
pub const fn from_unix_time(seconds: i64, nanos: u32) -> FileTime
Creates a new instance of FileTime
with a number of seconds and
nanoseconds relative to the Unix epoch, 1970-01-01T00:00:00Z.
Negative seconds represent times before the Unix epoch, and positive values represent times after it. Nanos always count forwards in time.
Note that this is typically the relative point that Unix time stamps are
from, but on Windows the native time stamp is relative to January 1,
1601 so the return value of seconds
from the returned FileTime
instance may not be the same as that passed in.
sourcepub fn from_last_modification_time(meta: &Metadata) -> FileTime
pub fn from_last_modification_time(meta: &Metadata) -> FileTime
Creates a new timestamp from the last modification time listed in the specified metadata.
The returned value corresponds to the mtime
field of stat
on Unix
platforms and the ftLastWriteTime
field on Windows platforms.
sourcepub fn from_last_access_time(meta: &Metadata) -> FileTime
pub fn from_last_access_time(meta: &Metadata) -> FileTime
Creates a new timestamp from the last access time listed in the specified metadata.
The returned value corresponds to the atime
field of stat
on Unix
platforms and the ftLastAccessTime
field on Windows platforms.
sourcepub fn from_creation_time(meta: &Metadata) -> Option<FileTime>
pub fn from_creation_time(meta: &Metadata) -> Option<FileTime>
Creates a new timestamp from the creation time listed in the specified metadata.
The returned value corresponds to the birthtime
field of stat
on
Unix platforms and the ftCreationTime
field on Windows platforms. Note
that not all Unix platforms have this field available and may return
None
in some circumstances.
sourcepub fn from_system_time(time: SystemTime) -> FileTime
pub fn from_system_time(time: SystemTime) -> FileTime
Creates a new timestamp from the given SystemTime.
Windows counts file times since 1601-01-01T00:00:00Z, and cannot represent times before this, but it’s possible to create a SystemTime that does. This function will error if passed such a SystemTime.
sourcepub const fn seconds(&self) -> i64
pub const fn seconds(&self) -> i64
Returns the whole number of seconds represented by this timestamp.
Note that this value’s meaning is platform specific. On Unix platform time stamps are typically relative to January 1, 1970, but on Windows platforms time stamps are relative to January 1, 1601.
sourcepub const fn unix_seconds(&self) -> i64
pub const fn unix_seconds(&self) -> i64
Returns the whole number of seconds represented by this timestamp, relative to the Unix epoch start of January 1, 1970.
Note that this does not return the same value as seconds
for Windows
platforms as seconds are relative to a different date there.
sourcepub const fn nanoseconds(&self) -> u32
pub const fn nanoseconds(&self) -> u32
Returns the nanosecond precision of this timestamp.
The returned value is always less than one billion and represents a
portion of a second forward from the seconds returned by the seconds
method.
Trait Implementations
sourceimpl From<SystemTime> for FileTime
impl From<SystemTime> for FileTime
sourcefn from(time: SystemTime) -> FileTime
fn from(time: SystemTime) -> FileTime
Converts to this type from the input type.
sourceimpl Ord for FileTime
impl Ord for FileTime
sourceimpl PartialOrd<FileTime> for FileTime
impl PartialOrd<FileTime> for FileTime
sourcefn partial_cmp(&self, other: &FileTime) -> Option<Ordering>
fn partial_cmp(&self, other: &FileTime) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
impl Copy for FileTime
impl Eq for FileTime
impl StructuralEq for FileTime
impl StructuralPartialEq for FileTime
Auto Trait Implementations
impl RefUnwindSafe for FileTime
impl Send for FileTime
impl Sync for FileTime
impl Unpin for FileTime
impl UnwindSafe for FileTime
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more