Skip to main content

rules

Macro rules 

Source
macro_rules! rules {
    (
        $($kind:ident $field:ident $(: $ty:ty)? => $variant:ident $(#[doc = $doc:literal])+;)+
    ) => { ... };
    (@field switch) => { ... };
    (@field rule $ty:ty) => { ... };
    (@none switch) => { ... };
    (@none rule) => { ... };
    (@push switch $entries:ident $rules:ident $field:ident $variant:ident) => { ... };
    (@push rule $entries:ident $rules:ident $field:ident $variant:ident) => { ... };
    (@read switch $rules:ident $decoder:ident $field:ident) => { ... };
    (@read rule $rules:ident $decoder:ident $field:ident) => { ... };
}
Expand description

Define Rules and everything else that lists its rule types.

switch entries are rules without parameters, rule entries carry parameters. The entries are in the order the rules are written to GitHub.