Mirror: только хранимые свойства и только на чтение 🪞
🔍 Mirror обходит рантайм-метаданные и показывает хранимые свойства значения. Инструмент диагностический: логирование, отладка, дампы незнакомых типов. Границы у него жёсткие и намеренные: вычисляемые свойства он не видит вообще, методы вызывать не умеет, менять ничего не может. child.value приходит как Any — статическая типизация теряется.
⛔️ Когда не стоит: тип известен → обращайтесь напрямую, это быстрее и типобезопасно; нужна типобезопасность → протокол или дженерик; нужно читать и писать → key paths; нужна сериализация → Codable.
⚠️ И про производительность: это обход метаданных в рантайме, заметно медленнее прямого доступа. На горячем пути ему делать нечего.