Expand description
The relevant main crate is optionable. The docs can be found there.
§Purpose
This code generation proc_macro2
library serves two purposes:
- Used by optionable_derive to implement the
#[derive(Optionable)]
-macro re-exported by optionable. - Used by the bin/codegen.rs crate to support generating
Optionable
-implementations for external packages. Due to the orphan rule the generated code has to be added to theOptionable
-package (PRs welcome).
It has to be a separate crate from optionable_derive as the proc-macro crates
can’t export its non-macro functions (even the proc_macro2
ones) for the usage by the codegen part.
Functions§
- attribute_
derives - Returns the attribute for setting that the given identifiers should be added as derive macro to the optioned struct/enum.
- attribute_
no_ convert - Returns the attribute for opting-out of
OptionableConvert
-impl generation. - attribute_
suffix - Returns the attribute for setting a custom struct/enum name suffix instead of
Opt
. - derive_
optionable - Derives the
Optionable
-trait from the mainoptionable
-library.