//! # Generated FlatBuffer Bindings
//!
//! This module includes the Rust code generated by `flatc`.
//!
//! ## Architecture
//!
//! ```text
//! ┌─────────────────────────────────────────────────────────────────────────────┐
//! │                      FLATC OUTPUT STRUCTURE                                 │
//! ├─────────────────────────────────────────────────────────────────────────────┤
//! │                                                                             │
//! │   flatc generates ONE file per .fbs containing ALL types:                   │
//! │                                                                             │
//! │   meta.fbs (namespace germanic.common)                                      │
//! │       → meta_generated.rs                                                   │
//! │           └── mod germanic { mod common { ... } }                           │
//! │                                                                             │
//! │   praxis.fbs (namespace de.gesundheit)                                      │
//! │       → praxis_generated.rs                                                 │
//! │           └── mod de { mod gesundheit { ... } }                             │
//! │                                                                             │
//! │   USAGE:                                                                    │
//! │   use crate::generated::praxis::de::gesundheit::Praxis;                     │
//! │   use crate::generated::meta::germanic::common::GermanicMeta;               │
//! │                                                                             │
//! └─────────────────────────────────────────────────────────────────────────────┘
//! ```
//!
//! ## Pre-generated code (Option C)
//!
//! The generated files are checked into the repository under
//! `src/generated/`. This means `cargo install germanic` works
//! without `flatc` installed. Developers who modify `.fbs` schemas
//! must regenerate these files — see `scripts/regenerate-flatbuffers.sh`.
//!
//! ## Module structure (generated by flatc)
//!
//! ```text
//! meta_generated.rs    → mod germanic { mod meta { Signatur, Meta, ... } }
//! praxis_generated.rs  → mod de { mod gesundheit { Adresse, Praxis } }
//! ```

#![allow(unused_imports)]
#![allow(dead_code)]
#![allow(clippy::all)]
#![allow(non_snake_case)]
#![allow(non_camel_case_types)]

// ============================================================================
// META SCHEMA (from common/meta.fbs)
// ============================================================================

/// Meta schema bindings generated by `flatc` from `common/meta.fbs`.
pub mod meta {
    #![allow(warnings)]
    #![allow(missing_docs)]
    include!("generated/meta_generated.rs");
}

// ============================================================================
// PRAXIS SCHEMA (from de/praxis.fbs)
// ============================================================================

/// Practice schema bindings generated by `flatc` from `de/praxis.fbs`.
pub mod praxis {
    #![allow(warnings)]
    #![allow(missing_docs)]
    include!("generated/praxis_generated.rs");
}

// ============================================================================
// RE-EXPORTS
// ============================================================================

// Meta types: crate::generated::meta::germanic::common::*
pub use meta::germanic::common::{
    GermanicMeta, GermanicMetaArgs, Hinweis, HinweisArgs, Signatur, SignaturArgs,
};

// Praxis types: crate::generated::praxis::de::gesundheit::*
pub use praxis::de::gesundheit::{Adresse, AdresseArgs, Praxis, PraxisArgs};
