clap_reverse_impl 0.1.1

Internal subcrate for `clap_reverse` crate
Documentation
//! Internal implementation crate for `clap_reverse_derive`.
//!
//! This crate contains the parsing, validation, and code generation logic for the `ClapReverse` derive macro.
//!
//! ## Components
//!
//! - [`AsCommand`] – trait defining how a struct is turned into a [`std::process::Command`].
//! - [`StructAttributes`] – parses and holds struct-level attributes (`display`, `binary`, `prefix`, `delimiter`).
//! - [`FieldAttributes`] – parses and holds field-level attributes (`prefix`, `name`, `delimiter`, `binary`, `transparent`, `flag`).
//! - [`ClapReverseGenerator`] – core generator that validates attributes and expands the derive macro into trait impls.
//!
//! ## Notes
//! - All procedural macro entry points live in `clap_reverse_derive`; this crate only provides the machinery.
//! - Errors during parsing or validation are reported as compile errors via `syn` and `proc_macro2`.

mod as_command;
pub use as_command::AsCommand;

mod struct_attributes;
pub use struct_attributes::StructAttributes;

mod field_attributes;
pub use field_attributes::FieldAttributes;

mod generator;
pub use generator::ClapReverseGenerator;

mod move_it_somewhere {
    pub fn find_reverse_clap_attribute(attributes: &[syn::Attribute]) -> Option<&syn::Attribute> {
        attributes.iter().find(|attr| attr.path().is_ident("clap_reverse"))
    }
}