macro_rules! derive_deftly_template_CertSpecifier {
({ $($driver:tt)* } [$($aoptions:tt)*] ($($future:tt)*) $($tpassthrough:tt)*) => { ... };
($($wrong:tt)*) => { ... };
}Expand description
A helper for implementing KeyCertificateSpecifiers.
§Results of applying this macro
#[derive(Deftly)] #[derive_deftly(CertSpecifier)] struct SomeCertSpec ...
generates:
implKeyCertificateSpecifierfor SomeCertSpecstruct SomeCertSpecPattern, a derived struct which contains anOptionfor each denotator field, and a non-optional field for the subject keyKeyPathPattern.Nonein the pattern means “any”.implCertSpecifierPatternfor SomeCertSpecPatternimpl TryFrom<KeyPath> for SomeCertSpec`
§Custom attributes
-
#[deftly(subject)](mandatory, field): Designates a field that represents the subject key specifier. This should only be applied to one field. -
#[deftly(denotator)](field): Designates a field that should be represented in the key file leafname. TheArtiPathof the certificate is derived from theArtiPathof the subject key, by concatenating theArtiPathof the subject key with provided denotators provided. If no there are no denotators, theArtiPathof the certificate is the same as theArtiPathof the subject key.
This is a derive_deftly template. Do not invoke it directly.
To use it, write: #[derive(Deftly)] #[derive_deftly(CertSpecifier)].