pub struct Store { /* private fields */ }Expand description
Resolves and lazily creates the $ZSHRS_HOME/pkg/... layout.
Implementations§
Source§impl Store
impl Store
Sourcepub fn user_default() -> PkgResult<Store>
pub fn user_default() -> PkgResult<Store>
Construct a Store rooted at $ZSHRS_HOME/pkg/ (default
~/.zshrs/pkg/). Honors ZSHRS_HOME like the rest of zshrs.
Sourcepub fn package_dir(&self, name: &str, version: &str) -> PathBuf
pub fn package_dir(&self, name: &str, version: &str) -> PathBuf
Where a package extraction lives: store/{name}@{version}/.
Sourcepub fn ensure_layout(&self) -> PkgResult<()>
pub fn ensure_layout(&self) -> PkgResult<()>
Create the full directory layout. Idempotent.
Sourcepub fn has_package(&self, name: &str, version: &str) -> bool
pub fn has_package(&self, name: &str, version: &str) -> bool
True if a name@version extraction already exists.
Sourcepub fn install_dir(
&self,
name: &str,
version: &str,
src: &Path,
) -> PkgResult<PathBuf>
pub fn install_dir( &self, name: &str, version: &str, src: &Path, ) -> PkgResult<PathBuf>
Copy a staged plugin tree wholesale into store/{name}@{version}/,
excluding VCS/build scratch (.git/, target/) so the store holds only
the loadable plugin. The destination is cleared first for fresh
re-installs. Returns the store path.
Auto Trait Implementations§
impl Freeze for Store
impl RefUnwindSafe for Store
impl Send for Store
impl Sync for Store
impl Unpin for Store
impl UnsafeUnpin for Store
impl UnwindSafe for Store
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<F, W, T, D> Deserialize<With<T, W>, D> for F
impl<F, W, T, D> Deserialize<With<T, W>, D> for F
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
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 moreSource§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Gets the layout of the type.