mirror of
https://github.com/SpartanJ/eepp.git
synced 2026-08-16 14:05:07 +03:00
Cache tag, ID, and class hashes in selector rules and widgets to avoid repeated string comparisons during selector matching. Store widget class hashes in a single-element SmallVector so the common zero and one-class cases remain allocation-free. Reorder UINode and UIWidget members to recover padding, keeping UIWidget at its original 1144-byte size. Add selector matching benchmarks and regression coverage for class mutation, compound selectors, and hash cache synchronization. Document the measured Phase 5 performance and memory results.