Crates.io | displaydoc-lite |
lib.rs | displaydoc-lite |
version | 0.1.3 |
source | src |
created_at | 2021-02-07 16:17:08.194864 |
updated_at | 2021-02-08 18:00:54.439704 |
description | Implement the Display trait using your standard doc comments. |
homepage | https://github.com/Stupremee/displaydoc-lite |
repository | https://github.com/Stupremee/displaydoc-lite |
max_upload_size | |
id | 351981 |
size | 23,748 |
displaydoc-lite
Implement the Display
trait using your standard doc comments.
This crate is a lite version of the popular crate displaydoc
.
It provides the same functionality but using a declarative macro instead
and not depending on syn
or quote
.
This crate is also usable in no_std
environments. No additional features are required for that.
Note: displaydoc-lite
still has a proc-macro as a dependency,
but it's very tiny and doesn't have any dependencies.
use displaydoc_lite::displaydoc;
displaydoc! {
#[derive(Debug)]
pub enum DataStoreError {
/// data store disconnected: {_0}
Disconnect(io::Error),
/// the data for key `{_0}` is not available
Redaction(String),
/// invalid header (expected {expected}, found {found})
InvalidHeader {
expected: String,
found: String,
},
/// unknown data store error
Unknown,
}
}
Listing of all supported syntax variants inside a {}
:
{var}
-> write!("{}", self.var)
{_0}
-> write!("{}", self.0)
{var:?}
-> write!("{:?}", self.var)
{_0:?}
-> write!("{:?}", self.0)
Licensed under either Apache License or the MIT license.