doxed

Crates.iodoxed
lib.rsdoxed
version0.1.1
sourcesrc
created_at2024-06-01 20:49:34.17564
updated_at2024-06-02 02:31:48.296162
descriptionA crate for making Rust doc strings available at runtime.
homepage
repositoryhttps://github.com/npmccallum/doxed
max_upload_size
id1258874
size4,350
Nathaniel McCallum (npmccallum)

documentation

README

doxed

crates.io license tests lints

Doxed is a crate for making Rust doc strings available at runtime.

This crate provides a trait, Doxed, which can be derived for any type to make its doc strings available at runtime. The doc string is specified using the #[doc = "..."] attribute or, more commonly, the Rust doc comment (///).

Note that when deriving Doxed, the doc string is not modified in any way. This preserves the original formatting, including leading whitespace and line breaks. If you want to do any processing on the doc string, you can easily do so at runtime without additional derive magic.

Example

use doxed::Doxed;

/// This is an example struct.
///
/// Multiple lines are supported.
#[doc = "So are manual doc attributes."]
#[derive(Doxed)]
struct Example<'a, T>(&'a T);

assert_eq!(Example::<()>::DOX, &[
    " This is an example struct.",
    "",
    " Multiple lines are supported.",
    "So are manual doc attributes."
]);

License: Apache-2.0

Commit count: 8

cargo fmt