Expand description
§use-crate
Composable crate identity and metadata primitives for RustUse.
use-crate provides typed helpers for crate names, naming rules, expected RustUse URLs, and lightweight crate metadata validation.
§Example
use use_crate::{crate_name_to_module_name, expected_repository_url};
assert_eq!(crate_name_to_module_name("use-release"), "use_release");
assert_eq!(
expected_repository_url("use-release").as_str(),
"https://github.com/RustUse/use-release"
);Crate identity, naming, and publishability primitives.
Structs§
- Crate
Metadata - Lightweight crate metadata for RustUse validation.
- Crate
Name - A validated crate name.
- Crate
Name Error - An error returned when a crate name fails validation.
- Documentation
Url - A documentation URL.
- Repository
Url - A repository URL.
Enums§
- Crate
Kind - A broad crate kind classification.
- Publish
Status - The publish status inferred from manifest metadata.
Functions§
- crate_
name_ to_ module_ name - Converts a crate name like
use-releaseinto a Rust module name. - expected_
docs_ url - Returns the expected docs.rs URL for a crate name.
- expected_
repository_ url - Returns the expected RustUse GitHub repository URL for a repository name.
- is_
publishable - Returns
truewhen crate metadata is publishable and follows RustUse defaults. - is_
use_ prefixed - Returns
truewhen a crate name uses the RustUseuse-*prefix. - is_
valid_ crate_ name - Returns
truewhen a value is a valid crate name under RustUse defaults. - module_
name_ to_ crate_ name - Converts a Rust module name like
use_releaseinto a crate name. - normalize_
crate_ name - Normalizes a crate name by trimming, ASCII-lowercasing, replacing spaces or underscores with hyphens, collapsing repeated hyphens, and trimming edges.
- validate_
crate_ metadata - Validates crate metadata against RustUse naming and URL defaults.