ResolvedPaths

Struct ResolvedPaths 

Source
pub struct ResolvedPaths {
    pub data_root: PathBuf,
    pub resource_root: PathBuf,
    pub database_path: PathBuf,
    pub llama_server_path: PathBuf,
    pub models_dir: PathBuf,
    pub models_source: ModelsDirSource,
}
Expand description

All resolved paths captured in a single struct.

This is the “golden truth” for path resolution - use it for:

  • Integration tests comparing adapter parity
  • CLI gglib paths command output
  • Debugging path resolution issues

Fields§

§data_root: PathBuf

Root directory for application data (database, logs, etc.)

§resource_root: PathBuf

Root directory for application resources (binaries, assets)

§database_path: PathBuf

Path to the SQLite database file

§llama_server_path: PathBuf

Path to the llama-server binary

§models_dir: PathBuf

Path to the models directory

§models_source: ModelsDirSource

How the models directory was resolved

Implementations§

Source§

impl ResolvedPaths

Source

pub fn resolve() -> Result<Self, PathError>

Resolve all paths using the current environment.

This calls each path resolver once and captures the results. Use this instead of calling individual resolvers when you need multiple paths - it’s more efficient and guarantees consistency.

Source

pub fn resolve_with_models_dir( models_dir: Option<&str>, ) -> Result<Self, PathError>

Resolve with an explicit models directory override.

Use this to test behavior when --models-dir is passed.

Trait Implementations§

Source§

impl Clone for ResolvedPaths

Source§

fn clone(&self) -> ResolvedPaths

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ResolvedPaths

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Display for ResolvedPaths

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for ResolvedPaths

Source§

fn eq(&self, other: &ResolvedPaths) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for ResolvedPaths

Source§

impl StructuralPartialEq for ResolvedPaths

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.