use *;
use *;
use *;
use *;
use *;
extern crate proc_macro;
/// Types that derive `Parse` will automatically implement `Parse`, provided its members or variants do also.
///
///## `struct`
/// A `Parse` `struct` will parse each of its members in sequence, failing entirely if one can't be parsed.
///
///## `enum`
/// A `Parse` `enum` will parse each of its variants in the defined order until one succeeds,
/// only failing if no variants succeed.
///
///## `#[padded]`
///
/// When this attribute is used, `Option<Vec<Whitespace>>` is parsed before
/// and after parsing each child of this `struct` or `enum`.