pub struct FileTimes<'a> {
pub source_modified_us: &'a dyn Fn(&str) -> Option<u64>,
pub doctree_exists: &'a dyn Fn(&str) -> bool,
pub dependency_modified_us: &'a dyn Fn(&Path) -> Option<u64>,
}Expand description
What BuildEnvironment::get_outdated_files needs to know about the
filesystem, as the three questions it actually asks — so the computation
itself stays pure and the caller decides what “the source of docname”
and “the doctree of docname” mean.
Times are microseconds since the Unix epoch, the unit all_docs stores
(Sphinx’s _last_modified_time). None means “cannot be stated” —
the file is gone, or unstat-able — which is Sphinx’s except OSError: return True: the document is outdated.
Fields§
§source_modified_us: &'a dyn Fn(&str) -> Option<u64>Modification time of the document’s own source file.
doctree_exists: &'a dyn Fn(&str) -> boolWhether the document’s persisted doctree is on disk. Sphinx stats
doctreedir/<docname>.doctree; a doctree that exists but can no
longer be read is caught later, when the read phase tries to load
it, and re-read then.
dependency_modified_us: &'a dyn Fn(&Path) -> Option<u64>Modification time of one of a document’s dependencies entries.
Auto Trait Implementations§
impl<'a> !RefUnwindSafe for FileTimes<'a>
impl<'a> !Send for FileTimes<'a>
impl<'a> !Sync for FileTimes<'a>
impl<'a> !UnwindSafe for FileTimes<'a>
impl<'a> Freeze for FileTimes<'a>
impl<'a> Unpin for FileTimes<'a>
impl<'a> UnsafeUnpin for FileTimes<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more