pub struct AppPaths {
pub db: PathBuf,
pub models: PathBuf,
}Expand description
Resolved filesystem paths used by the CLI at runtime.
Fields§
§db: PathBufAbsolute path to the SQLite database file.
models: PathBufDirectory where embedding model files are cached.
Implementations§
Source§impl AppPaths
impl AppPaths
Sourcepub fn target_source() -> Option<TargetSource>
pub fn target_source() -> Option<TargetSource>
Which layer supplied the database this process is about to touch.
Only TargetSource::Argv is an explicit designation. The other two are
ambient authority: legitimate for an idempotent read, and the shape of a
confused deputy for a write.
Sourcepub fn resolved_target() -> Option<&'static Path>
pub fn resolved_target() -> Option<&'static Path>
The database path this process resolved, once it has resolved one.
Sourcepub fn resolve(db_override: Option<&str>) -> Result<Self, AppError>
pub fn resolve(db_override: Option<&str>) -> Result<Self, AppError>
Resolves the database and cache paths for this invocation.
§Errors
Returns AppError::Io when the home directory cannot be determined,
and a validation error when a supplied path is rejected.
Sourcepub fn ensure_dirs(&self) -> Result<(), AppError>
pub fn ensure_dirs(&self) -> Result<(), AppError>
Ensure dirs.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for AppPaths
impl RefUnwindSafe for AppPaths
impl Send for AppPaths
impl Sync for AppPaths
impl Unpin for AppPaths
impl UnsafeUnpin for AppPaths
impl UnwindSafe for AppPaths
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> ErasedDestructor for Twhere
T: 'static,
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> ⓘ
Converts
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> ⓘ
Converts
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