//! Phase 33 split: `block::types` was a 1853-line monolith holding the
//! `TransformerBlock` definition, the three `forward*` entry points, all
//! GPU full-layer dispatch helpers, ~84 per-quant-family weight accessors,
//! and the private `ScratchBuffers` helper. The new layout groups closely
//! related code into focused sub-modules while preserving the original
//! public surface (re-exported via `pub use types::*;` from `block/mod.rs`).
//!
//! Sub-modules:
//! * `layer_stats` — `LayerStats` struct + impl.
//! * `block_def` — `TransformerBlock<'a>` struct definition + `new`.
//! * `upload` — `upload_to_gpu` (one method, GPU memory mgmt).
//! * `forward` — single-token `forward` entry point.
//! * `forward_stats` — single-token `forward_with_stats` entry point.
//! * `forward_sw` — sliding-window `forward_with_sliding_window`.
//! * `helpers` — `layer_idx` + (cfg-gated) full-layer GPU dispatchers.
//! * `accessors` — every public weight/handle/block accessor.
//! * `scratch` — private `ScratchBuffers` shared by the forward
//! entry points.
//!
//! Each sub-file contributes its own `impl<'a> TransformerBlock<'a> { ... }`
//! block (Rust supports multiple inherent impl blocks for the same type
//! across separate files).
pub use TransformerBlock;
pub use LayerStats;