pub struct CrateCache { /* private fields */ }
Expand description
Service for managing crate caching and documentation generation
Implementations§
Source§impl CrateCache
impl CrateCache
Sourcepub async fn ensure_crate_docs(
&self,
name: &str,
version: &str,
source: Option<&str>,
) -> Result<Crate>
pub async fn ensure_crate_docs( &self, name: &str, version: &str, source: Option<&str>, ) -> Result<Crate>
Ensure a crate’s documentation is available, downloading and generating if necessary
Sourcepub async fn ensure_workspace_member_docs(
&self,
name: &str,
version: &str,
source: Option<&str>,
member_path: &str,
) -> Result<Crate>
pub async fn ensure_workspace_member_docs( &self, name: &str, version: &str, source: Option<&str>, member_path: &str, ) -> Result<Crate>
Ensure a workspace member’s documentation is available
Sourcepub async fn ensure_crate_or_member_docs(
&self,
name: &str,
version: &str,
member: Option<&str>,
) -> Result<Crate>
pub async fn ensure_crate_or_member_docs( &self, name: &str, version: &str, member: Option<&str>, ) -> Result<Crate>
Ensure documentation is available for a crate or workspace member
Sourcepub async fn download_or_copy_crate(
&self,
name: &str,
version: &str,
source: Option<&str>,
) -> Result<PathBuf>
pub async fn download_or_copy_crate( &self, name: &str, version: &str, source: Option<&str>, ) -> Result<PathBuf>
Download or copy a crate based on source type
Sourcepub async fn generate_docs(&self, name: &str, version: &str) -> Result<PathBuf>
pub async fn generate_docs(&self, name: &str, version: &str) -> Result<PathBuf>
Generate JSON documentation for a crate
Sourcepub async fn generate_workspace_member_docs(
&self,
name: &str,
version: &str,
member_path: &str,
) -> Result<PathBuf>
pub async fn generate_workspace_member_docs( &self, name: &str, version: &str, member_path: &str, ) -> Result<PathBuf>
Generate JSON documentation for a workspace member
Sourcepub async fn load_docs(
&self,
name: &str,
version: &str,
member_name: Option<&str>,
) -> Result<Crate>
pub async fn load_docs( &self, name: &str, version: &str, member_name: Option<&str>, ) -> Result<Crate>
Load documentation from cache for a crate or workspace member
Sourcepub async fn get_cached_versions(&self, name: &str) -> Result<Vec<String>>
pub async fn get_cached_versions(&self, name: &str) -> Result<Vec<String>>
Get cached versions of a crate
Sourcepub async fn list_all_cached_crates(&self) -> Result<Vec<CacheMetadata>>
pub async fn list_all_cached_crates(&self) -> Result<Vec<CacheMetadata>>
Get all cached crates with their metadata
Sourcepub async fn remove_crate(&self, name: &str, version: &str) -> Result<()>
pub async fn remove_crate(&self, name: &str, version: &str) -> Result<()>
Remove a cached crate version
Sourcepub fn has_docs(
&self,
crate_name: &str,
version: &str,
member: Option<&str>,
) -> bool
pub fn has_docs( &self, crate_name: &str, version: &str, member: Option<&str>, ) -> bool
Check if docs exist without ensuring they’re generated
Sourcepub async fn try_load_docs(
&self,
crate_name: &str,
version: &str,
member: Option<&str>,
) -> Result<Option<Crate>>
pub async fn try_load_docs( &self, crate_name: &str, version: &str, member: Option<&str>, ) -> Result<Option<Crate>>
Try to load existing docs without generating
Sourcepub fn get_source_path(&self, name: &str, version: &str) -> Result<PathBuf>
pub fn get_source_path(&self, name: &str, version: &str) -> Result<PathBuf>
Get the source path for a crate
Sourcepub async fn ensure_crate_source(
&self,
name: &str,
version: &str,
source: Option<&str>,
) -> Result<PathBuf>
pub async fn ensure_crate_source( &self, name: &str, version: &str, source: Option<&str>, ) -> Result<PathBuf>
Ensure a crate’s source is available, downloading if necessary (without generating docs)
Sourcepub async fn ensure_crate_or_member_source(
&self,
name: &str,
version: &str,
member: Option<&str>,
source: Option<&str>,
) -> Result<PathBuf>
pub async fn ensure_crate_or_member_source( &self, name: &str, version: &str, member: Option<&str>, source: Option<&str>, ) -> Result<PathBuf>
Ensure source is available for a crate or workspace member
Sourcepub async fn load_dependencies(
&self,
name: &str,
version: &str,
) -> Result<Value>
pub async fn load_dependencies( &self, name: &str, version: &str, ) -> Result<Value>
Load dependency information from cache
Sourcepub async fn cache_crate_with_source(&self, source: CrateSource) -> String
pub async fn cache_crate_with_source(&self, source: CrateSource) -> String
Common method to cache a crate from any source
Trait Implementations§
Source§impl Clone for CrateCache
impl Clone for CrateCache
Source§fn clone(&self) -> CrateCache
fn clone(&self) -> CrateCache
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations§
impl Freeze for CrateCache
impl !RefUnwindSafe for CrateCache
impl Send for CrateCache
impl Sync for CrateCache
impl Unpin for CrateCache
impl !UnwindSafe for CrateCache
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> Cast for T
impl<T> Cast for T
Source§fn cast<U>(self, interner: <U as HasInterner>::Interner) -> Uwhere
Self: CastTo<U>,
U: HasInterner,
fn cast<U>(self, interner: <U as HasInterner>::Interner) -> Uwhere
Self: CastTo<U>,
U: HasInterner,
U
using CastTo
.Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
, which can then be
downcast
into Box<dyn ConcreteType>
where ConcreteType
implements Trait
.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
, which can then be further
downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
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 moreSource§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the foreground set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red()
and
green()
, which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg()
:
use yansi::{Paint, Color};
painted.fg(Color::White);
Set foreground color to white using white()
.
use yansi::Paint;
painted.white();
Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the background set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red()
and
on_green()
, which have the same functionality but
are pithier.
§Example
Set background color to red using fg()
:
use yansi::{Paint, Color};
painted.bg(Color::Red);
Set background color to red using on_red()
.
use yansi::Paint;
painted.on_red();
Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute
value
.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold()
and
underline()
, which have the same functionality
but are pithier.
§Example
Make text bold using attr()
:
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);
Make text bold using using bold()
.
use yansi::Paint;
painted.bold();
Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi
Quirk
value
.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask()
and
wrap()
, which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk()
:
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);
Enable wrapping using wrap()
.
use yansi::Paint;
painted.wrap();
Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.
fn clear(&self) -> Painted<&T>
resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition
value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted
only when both stdout
and stderr
are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);