pub struct RuntimeDirPlacement {
pub sessions_dir: PathBuf,
pub records_group: PathBuf,
pub workdir: PathBuf,
pub sessions_inside_workdir: bool,
pub records_inside_workdir: bool,
pub inside_workdir: bool,
}Expand description
Where the runtime directory and the records directory lie relative to a workdir, decided without creating anything.
Fields§
§sessions_dir: PathBuf~/.murmur/sessions, as HOME names it.
records_group: PathBufThe records group of Self::workdir, crate::records_dir::records_group’s answer:
every session of this workdir root keeps its records directory in it.
workdir: PathBufThe workdir root it was compared with: --workdir, else <manifest-dir>/workdir.
sessions_inside_workdir: boolWhether sessions_dir lies inside workdir, both resolved through their nearest
existing ancestor. When it does, the capsule’s commands can change the runtime directory.
records_inside_workdir: boolWhether this session’s records directory lies inside workdir, resolved the same way.
inside_workdir: boolEither of the two: the capsule’s commands can change a directory the runtime keeps out of their reach.
Implementations§
Source§impl RuntimeDirPlacement
impl RuntimeDirPlacement
Sourcepub fn inside(&self) -> Option<&Self>
pub fn inside(&self) -> Option<&Self>
Some(self) when the runtime directory or the records directory lies inside the workdir.
Sourcepub fn report_path(&self) -> String
pub fn report_path(&self) -> String
The runtime directory’s path with the literal <session-id> segment, the form
--explain-scope and session_start.effective_grants both print.
Sourcepub fn records_report_path(&self) -> String
pub fn records_report_path(&self) -> String
The records directory’s path with the literal <session-id> segment, on
Self::report_path’s terms.
Trait Implementations§
Source§impl Clone for RuntimeDirPlacement
impl Clone for RuntimeDirPlacement
Source§impl Debug for RuntimeDirPlacement
impl Debug for RuntimeDirPlacement
impl Eq for RuntimeDirPlacement
Source§impl PartialEq for RuntimeDirPlacement
impl PartialEq for RuntimeDirPlacement
impl StructuralPartialEq for RuntimeDirPlacement
Auto Trait Implementations§
impl Freeze for RuntimeDirPlacement
impl RefUnwindSafe for RuntimeDirPlacement
impl Send for RuntimeDirPlacement
impl Sync for RuntimeDirPlacement
impl Unpin for RuntimeDirPlacement
impl UnsafeUnpin for RuntimeDirPlacement
impl UnwindSafe for RuntimeDirPlacement
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
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